sfini.state.choice¶
SFN choice rules.
These rules are used in the ‘Choice’ state of a state-machine, and allow for conditional branching in the state-machine. There are two types of choice rule: comparisons and logical operations.
-
class
sfini.state.choice.
And
(choice_rules: List[sfini.state.choice.ChoiceRule], next_state=None)[source]¶ Bases:
sfini.state.choice._NonUnary
-
class
sfini.state.choice.
BooleanEquals
(variable_path: str, comparison_value, next_state=None)[source]¶
-
class
sfini.state.choice.
ChoiceRule
(next_state=None)[source]¶ Bases:
object
A choice case for the ‘Choice’ state.
Parameters: next_state (sfini.state.State) – state to execute on success
-
class
sfini.state.choice.
Comparison
(variable_path: str, comparison_value, next_state=None)[source]¶ Bases:
sfini.state.choice.ChoiceRule
Compare variable value.
Parameters: - variable_path – path of variable to compare
- comparison_value – value to compare against
- next_state – state to execute on success
-
class
sfini.state.choice.
Not
(choice_rule: sfini.state.choice.ChoiceRule, next_state=None)[source]¶ Bases:
sfini.state.choice.Logical
Logical ‘not’ operation on a choice rule.
Parameters: - choice_rule – choice rule to operate on
- next_state – state to execute on success
-
class
sfini.state.choice.
NumericEquals
(variable_path: str, comparison_value, next_state=None)[source]¶
-
class
sfini.state.choice.
NumericGreaterThan
(variable_path: str, comparison_value, next_state=None)[source]¶
-
class
sfini.state.choice.
NumericGreaterThanEquals
(variable_path: str, comparison_value, next_state=None)[source]¶
-
class
sfini.state.choice.
NumericLessThan
(variable_path: str, comparison_value, next_state=None)[source]¶
-
class
sfini.state.choice.
NumericLessThanEquals
(variable_path: str, comparison_value, next_state=None)[source]¶
-
class
sfini.state.choice.
Or
(choice_rules: List[sfini.state.choice.ChoiceRule], next_state=None)[source]¶ Bases:
sfini.state.choice._NonUnary
-
class
sfini.state.choice.
StringEquals
(variable_path: str, comparison_value, next_state=None)[source]¶
-
class
sfini.state.choice.
StringGreaterThan
(variable_path: str, comparison_value, next_state=None)[source]¶
-
class
sfini.state.choice.
StringGreaterThanEquals
(variable_path: str, comparison_value, next_state=None)[source]¶
-
class
sfini.state.choice.
StringLessThan
(variable_path: str, comparison_value, next_state=None)[source]¶
-
class
sfini.state.choice.
StringLessThanEquals
(variable_path: str, comparison_value, next_state=None)[source]¶
-
class
sfini.state.choice.
TimestampEquals
(variable_path: str, comparison_value, next_state=None)[source]¶ Bases:
sfini.state.choice._TimestampRule
-
class
sfini.state.choice.
TimestampGreaterThan
(variable_path: str, comparison_value, next_state=None)[source]¶ Bases:
sfini.state.choice._TimestampRule
-
class
sfini.state.choice.
TimestampGreaterThanEquals
(variable_path: str, comparison_value, next_state=None)[source]¶ Bases:
sfini.state.choice._TimestampRule