def plug_wildcard(self, Target): assert isinstance(Target, DoorID) or Target == E_StateIndices.DROP_OUT, repr(Target) assert self.__wildcard_char is not None assert transition_map_tools.get_target(self.__transition_map, self.__wildcard_char) == E_StateIndices.VOID transition_map_tools.set(self.__transition_map, self.__wildcard_char, Target) self.__wildcard_char = None return
def plug_wildcard(self, Target): assert isinstance(Target, DoorID) or Target == E_StateIndices.DROP_OUT, repr(Target) assert self.__wildcard_char is not None assert transition_map_tools.get_target(self.__transition_map, self.__wildcard_char) == E_StateIndices.VOID ## print "#wildcard:", chr(self.__wildcard_char), Target ## print "#before plug: {\n%s}" % transition_map_tools.get_string(self.__transition_map) transition_map_tools.set(self.__transition_map, self.__wildcard_char, Target) ## print "#after plug: {\n%s}" % transition_map_tools.get_string(self.__transition_map) self.__wildcard_char = None return
def __init__(self, StartState, StartCharacter, AdaptedTransitionMap): assert StartState is None or isinstance(StartState, AnalyzerState) assert StartCharacter is None or isinstance(StartCharacter, (int, long)) assert AdaptedTransitionMap is None or isinstance(AdaptedTransitionMap, list) if StartState is None: return # Only for Clone self.index = index.get() self.entry = PathWalkerState_Entry(self.index, StartState.entry) self.drop_out = MegaState_DropOut(StartState) self.__sequence = [ CharacterPathElement(StartState.index, StartCharacter) ] self.__transition_map = AdaptedTransitionMap # Set the 'void' target to indicate wildcard. transition_map_tools.set(self.__transition_map, StartCharacter, E_StateIndices.VOID) self.__wildcard_char = StartCharacter
def __init__(self, StartState, StartCharacter, AdaptedTransitionMap): if StartState is None: return # Only for Clone assert StartState is None or isinstance(StartState, AnalyzerState) assert StartCharacter is None or isinstance(StartCharacter, (int, long)) assert AdaptedTransitionMap is None or isinstance(AdaptedTransitionMap, list) self.index = index.get() self.entry = PathWalkerState_Entry(self.index, StartState.entry) self.drop_out = MegaState_DropOut(StartState) self.__sequence = [ CharacterPathElement(StartState.index, StartCharacter) ] self.__transition_map = AdaptedTransitionMap # Set the 'void' target to indicate wildcard. self.__wildcard_char = StartCharacter transition_map_tools.set(self.__transition_map, StartCharacter, E_StateIndices.VOID)