- SEE ALSO
This is the SMC (State Machine Compiler) runtime for target language Perl.
This namespace contains two class :
the base State class
the Finite State Machine Context class
Returns the state's printable name.
Returns the state's unique identifier.
The user can derive FSM contexts from this class and interface to them with the methods of this class.
The finite state machine needs to be initialized to the starting state of the FSM. This must be done manually in the constructor of the derived class.
new ( $init_state )
Returns the debug flag's current setting.
Sets the debug flag. A true value means debugging is on and false means off.
Returns the stream to which debug output is written.
Sets the debug output stream.
Returns the current state.
Is this state machine already inside a transition?
True if state is undefined.
Returns the current transition's name.
Used only for debugging purposes.
Clears the current state.
Returns the state which a transition left.
May be undef.
Sets the current state to the specified state.
Returns true if the state stack is empty and false otherwise.
Returns the state stack's depth.
Push the current state on top of the state stack and make the specified state the current state.
Make the state on top of the state stack the current state.
Remove all states from the state stack.
The contents of this file are subject to the Mozilla Public License Version 1.1 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.mozilla.org/MPL/
Software distributed under the License is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for the specific language governing rights and limitations under the License.
The Original Code is State Machine Compiler (SMC).
The Initial Developer of the Original Code is Charles W. Rapp.
Port to Perl by Francois Perrad, email@example.com
Copyright 2004-2009, Francois Perrad. All Rights Reserved.
This module was previously named StateMachine::Statemap.