Data-FSM

 view release on metacpan or  search on metacpan

FSM/Transition.pm  view on Meta::CPAN

=head1 EXAMPLE

=for comment filename=create_and_print_fsm_transition.pl

 use strict;
 use warnings;

 use Data::FSM::Transition;
 use Data::FSM::State;

 my $locked = Data::FSM::State->new(
         'name' => 'Locked',
 );
 my $unlocked = Data::FSM::State->new(
         'name' => 'Unlocked',
 );
 my $obj = Data::FSM::Transition->new(
         'callback' => sub {
                 my $self = shift;
                 print 'Id: '.$self->id."\n";
         },
         'from' => $locked,
         'id' => 7,
         'name' => 'Coin',
         'to' => $unlocked,
 );

 # Print out.
 print 'Id: '.$obj->id."\n";
 print 'From: '.$obj->from->name."\n";
 print 'To: '.$obj->from->name."\n";
 print 'Name: '.$obj->name."\n";

 # Output:
 # Id: 7

examples/create_and_print_fsm_transition.pl  view on Meta::CPAN

#!/usr/bin/env perl

use strict;
use warnings;

use Data::FSM::Transition;
use Data::FSM::State;

my $locked = Data::FSM::State->new(
        'name' => 'Locked',
);
my $unlocked = Data::FSM::State->new(
        'name' => 'Unlocked',
);
my $obj = Data::FSM::Transition->new(
        'callback' => sub {
                my $self = shift;
                print 'Id: '.$self->id."\n";
        },
        'from' => $locked,
        'id' => 7,
        'name' => 'Coin',
        'to' => $unlocked,
);

# Print out.
print 'Id: '.$obj->id."\n";
print 'From: '.$obj->from->name."\n";
print 'To: '.$obj->from->name."\n";
print 'Name: '.$obj->name."\n";

# Output:
# Id: 7



( run in 0.740 second using v1.01-cache-2.11-cpan-e1769b4cff6 )