class virtual [['i, 'o]]
next :
object
.. end
Use inherit ['i, 'o] next
to derive a class that implements an
intermediate state in a machine.
method private virtual guard : (< next : 'a. ('b, 'i, 'o, 'a) Cf_state_gadget.t; .. > as 'b, 'i, 'o, unit)
Cf_state_gadget.guard
The guard evaluated by this state of the machine.
method next : 'a. ('b, 'i, 'o, 'a) Cf_state_gadget.t
Use
obj#next
to transition the state of the machine by storing
obj
in the state of the gadget and applying
Cf_state_gadget.guard
self#guard
.