Class::Workflow::Transition::Deterministic - A transition which knows which


Class-Workflow documentation  | view source Contained in the Class-Workflow distribution.

Index


NAME

Top

Class::Workflow::Transition::Deterministic - A transition which knows which state it leads to.

SYNOPSIS

Top

	package MyTransition;
	use Moose;

	with qw/
		Class::Workflow::Transition
		Class::Workflow::Deterministic
	/;

	sub apply_body { # instead of 'sub apply'
		# body
	}

	# this may be changed to the following form in the future:
	augment apply => sub {
		# body
	};

DESCRIPTION

Top

This role provides a base role for transitions which know their target state.

It overrides apply with a default implementation that will derive an instance for you, setting state automatically, appending the return value from apply_body to that list.

You should consume this role unless you need to determine the target state dynamically (probably not a good idea).

FIELDS

Top

to_state

The target state of the transition. Should do Class::Workflow::State.

METHODS

Top

apply

In scalar context returns the derived instance, in list caller also returns the remaining return value from apply_body.

REQUIRED METHODS

Top

apply_body

The "inner" body of the function.

This method is always evaluated in list context, and is expected to return a hash reference of overridden fields as the first value in that list.

In the future instead of defining apply_body you will do:

	augment apply => sub {
		# body
	};

And this role's apply will really use inner().


Class-Workflow documentation  | view source Contained in the Class-Workflow distribution.