is a state transition valid ? there are no checks for current == proposed as that is considered a non-transition . using an array kills off all branch misprediction costs , at the expense of cache line misses . concode_field_sep String name concode_elem_sep boolean[][] statemap concode_elem_sep Service.STATE state concode_field_sep Service.STATE getState concode_elem_sep Service.STATE enterState concode_elem_sep void ensureCurrentState concode_elem_sep String toString concode_elem_sep void checkStateTransition concode_elem_sep boolean isInState
boolean function ( Service . STATE arg0 , Service . STATE arg1 ) { boolean [ ] loc0 = statemap [ arg0 . getValue ( ) ] ; return loc0 [ arg1 . getValue ( ) ] ; }