Devel-Monitor

 view release on metacpan or  search on metacpan

lib/Devel/Monitor.pm  view on Meta::CPAN

    #--------------------------------------------------------------------
     
    package ClassA;
    use strict;
    use warnings;
    use Scalar::Util qw(weaken isweak);
     
    sub new {
        my ($class) = @_;
        my $self = {};
        bless($self => $class);
        return $self;
    }
     
    sub getClassB {
        my $self = shift;
        $self->{_classB} = ClassB->new($self);
        return $self->{_classB};
    }
     
    sub printSomething {

lib/Devel/Monitor/Hash.pm  view on Meta::CPAN

use strict;
use warnings;
 
use Devel::Monitor::Common qw(:all);
 
our $id = 0;
 
sub TIEHASH {
    my ($class, $varRef, $id, $isCode) = @_;
    my $self = {};
    bless($self => $class);
    $self->{Devel::Monitor::Common::F_VAR()} = {%$varRef};
    if ($id) {
        $self->{Devel::Monitor::Common::F_ID()} = $id;
    } else {
        $self->{Devel::Monitor::Common::F_ID()} = 'hash_'.++$id;
    }
    $self->{Devel::Monitor::Common::F_IS_CODE()} = $isCode;
    if ($isCode) {
        Devel::Monitor::Common::printMsg("MONITOR CODE HASH : ".$self->{Devel::Monitor::Common::F_ID()}."\n");
    } else {

lib/Devel/Monitor/Scalar.pm  view on Meta::CPAN

use strict;
use warnings;
  
use Devel::Monitor::Common qw(:all);

our $id = 0;
 
sub TIESCALAR {
    my ($class, $varRef, $id, $isCode) = @_;
    my $self = {};
    bless($self => $class);
    $self->{Devel::Monitor::Common::F_VAR()} = $$varRef;
    if ($id) {
        $self->{Devel::Monitor::Common::F_ID()} = $id;
    } else {
        $self->{Devel::Monitor::Common::F_ID()} = 'scalar_'.++$id;
    }
    $self->{Devel::Monitor::Common::F_IS_CODE()} = $isCode;
    if ($isCode) {    
        Devel::Monitor::Common::printMsg("MONITOR CODE SCALAR : ".$self->{Devel::Monitor::Common::F_ID()}."\n");
    } else {

lib/Devel/Monitor/Trace.pm  view on Meta::CPAN

package Devel::Monitor::Trace;
use strict;
use warnings;
 
use Devel::Monitor::Common qw(:all);

sub new {
    my ($class) = @_;
    my $self = {};
    bless($self => $class);
    $self->{_traceItems} = [];
    return $self;
}

sub push {
    my $self = shift;
    my $varRef = shift;
    my $source = shift;
    my $trace = Devel::Monitor::TraceItem->new($varRef,$source);
    push(@{$self->{_traceItems}},$trace);

lib/Devel/Monitor/TraceItem.pm  view on Meta::CPAN

package Devel::Monitor::TraceItem;
use strict;
use warnings;

sub new {
    my ($class, $varRef, $source) = @_;
    my $self = {};
    bless($self => $class);
    $self->{_varRef} = $varRef;
    $self->{_source} = $source;
    return $self;
}

sub getVarRef { return shift->{_varRef}; }
sub getSource { 
    my $self = shift;
    if ($self->{_source}) {
        return $self->{_source};

t/Devel-Monitor.t  view on Meta::CPAN

#--------------------------------------------------------------------
 
package ClassA;
use strict;
use warnings;
use Scalar::Util qw(weaken isweak);
 
sub new {
    my ($class) = @_;
    my $self = {};
    bless($self => $class);
    return $self;
}
 
sub getClassB {
    my $self = shift;
    $self->{_classB} = ClassB->new($self);
    return $self->{_classB};
}
 
sub printSomething {

 view all matches for this distribution
 view release on metacpan -  search on metacpan

( run in 0.964 second using v1.00-cache-2.02-grep-82fe00e-cpan-1925d2aa809 )