The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

MooseX::FSM - The great new MooseX::FSM!

VERSION

Version 0.01

SYNOPSIS

MooseX::FSM is a moosish Finite State Machine

Perhaps a little code snippet.

    use MooseX::FSM;

    my $fsm = MooseX::FSM->new( );


        state_table = { start        => { enter => init, input => scan_dirs, exit => finish, transition => { add_dir => 'process_dir' } },
                                        process_dir  => { enter => new_dir, input => do_dir,  exit => done_dir, transition => { add_file => 'process_file', processed_all_files => start },
                                        process_file => { enter => new_file, input => do_file, exit => done_file, transition => { processed_file => process_dir }
        ...

        has 'start' (
                is                      => 'ro',
                isa                     => 'MooseX::FSM::State',
                metaclass       => 'state',
                enter           => 'init',
                input           => [ scan_dirs , add_dir => 'process_dir' ],
                transition      => report_dir,
        )

        New syntax sugar coming soon
        state 'start' (
                enter => 
        )

EXPORT

A list of that can be exported. You can delete this section if you don't export anything, such as for a purely object-oriented module.

FUNCTIONS

function1

init_meta the init_meta function is used internaly by Moose to setup the base class which MooseX::FSM provides

debug a simple debug method to log any messages apprioriately

AUTHOR

Gordon Irving, <goraxe at goraxe dot me dotty uk>

BUGS

Please report any bugs or feature requests to bug-moosex-fsm at rt.cpan.org, or through the web interface at http://rt.cpan.org/NoAuth/ReportBug.html?Queue=moosex-fsm. I will be notified, and then you'll automatically be notified of progress on your bug as I make changes.

SUPPORT

You can find documentation for this module with the perldoc command.

    perldoc MooseX::FSM

You can also look for information at:

ACKNOWLEDGEMENTS

COPYRIGHT & LICENSE

Copyright 2009 Gordon Irving, all rights reserved.

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.