transitions.go 493 B

123456789101112
  1. package fsm
  2. type transition[SK, EK comparable, EV any] struct {
  3. guards, actions []Hook[EK, EV]
  4. next SK
  5. }
  6. func (mt *transition[SK, EK, EV]) SetGuards([]Hook[EK, EV]) {}
  7. func (mt *transition[SK, EK, EV]) Guards() []Hook[EK, EV] { return mt.guards }
  8. func (mt *transition[SK, EK, EV]) SetActions([]Hook[EK, EV]) {}
  9. func (mt *transition[SK, EK, EV]) Actions() []Hook[EK, EV] { return mt.actions }
  10. func (mt *transition[SK, EK, EV]) Next() SK { return mt.next }