def get_pure_text(self): """RETURNS: Text The returned text is free from any annotations. """ assert all_isinstance(self.__code, (str, unicode)) return "".join(self.__code)
def get_text(self): """RETURNS: Text May contain annotations to the code may by the derived class. """ code = self.get_code() assert all_isinstance(code, (str, unicode)) return "".join(code)
def wrap_up(ModeName, FunctionBody, VariableDefs, ModeNameList): txt_function = Lng.ANALYZER_FUNCTION(ModeName, Setup, VariableDefs, FunctionBody, ModeNameList) txt_header = Lng.HEADER_DEFINITIONS() assert isinstance(txt_header, (str, unicode)) txt_analyzer = get_plain_strings(txt_function) assert all_isinstance(txt_analyzer, (str, unicode)) return [txt_header] + txt_analyzer
def wrap_up(ModeName, FunctionBody, VariableDefs, ModeNameList): txt_function = Lng.ANALYZER_FUNCTION(ModeName, Setup, VariableDefs, FunctionBody, ModeNameList) txt_header = Lng.HEADER_DEFINITIONS() assert isinstance(txt_header, (str, unicode)) txt_analyzer = get_plain_strings(txt_function) assert all_isinstance(txt_analyzer, (str, unicode)) return [ txt_header ] + txt_analyzer
def __init__(self, PatternList): assert isinstance(PatternList, list) assert len(PatternList) > 0 assert all_isinstance(PatternList, Pattern) assert all_true(PatternList, lambda p: p.incidence_id() is not None) # (*) Core SM, Pre-Context SM, ... # ... and sometimes backward input position SMs. self.sm, \ self.pre_context_sm, \ self.bipd_sm_db, \ self.pre_context_sm_id_list = self.__prepare(PatternList)
def __get_setting_list(self, Name): """RETURNS: [ OptionSetting ] for a given option's Name. This function does additional checks for consistency. """ setting_list = dict.get(self, Name) if setting_list is None: return None assert isinstance(setting_list, list) assert all_isinstance(setting_list, OptionSetting) assert (not mode_option_info_db[Name].single_setting_f()) or len(setting_list) == 1 return setting_list
def __get_setting_list(self, Name): """RETURNS: [ OptionSetting ] for a given option's Name. This function does additional checks for consistency. """ setting_list = dict.get(self, Name) if setting_list is None: return None assert isinstance(setting_list, list) assert all_isinstance(setting_list, OptionSetting) assert (not mode_option_info_db[Name].single_setting_f() ) or len(setting_list) == 1 return setting_list
def get_documentation(self): L = max(map(lambda mode: len(mode.name), self.__base_mode_sequence)) txt = "\nMODE: %s\n" % self.name txt += "\n" if len(self.__base_mode_sequence) != 1: txt += " BASE MODE SEQUENCE:\n" base_mode_name_list = map(lambda mode: mode.name, self.__base_mode_sequence[:-1]) base_mode_name_list.reverse() for name in base_mode_name_list: txt += " %s\n" % name txt += "\n" if len(self.__doc_history_deletion) != 0: txt += " DELETION ACTIONS:\n" for entry in self.__doc_history_deletion: txt += " %s: %s%s (from mode %s)\n" % \ (entry[0], " " * (L - len(self.name)), entry[1], entry[2]) txt += "\n" if len(self.__doc_history_reprioritization) != 0: txt += " PRIORITY-MARK ACTIONS:\n" self.__doc_history_reprioritization.sort( lambda x, y: cmp(x[4], y[4])) for entry in self.__doc_history_reprioritization: txt += " %s: %s%s (from mode %s) (%i) --> (%i)\n" % \ (entry[0], " " * (L - len(self.name)), entry[1], entry[2], entry[3], entry[4]) txt += "\n" assert all_isinstance(self.__pattern_list, Pattern) if len(self.__pattern_list) != 0: txt += " PATTERN LIST:\n" for x in self.__pattern_list: space = " " * (L - len(x.sr.mode_name)) txt += " (%3i) %s: %s%s\n" % \ (x.incidence_id(), x.sr.mode_name, space, x.pattern_string()) txt += "\n" return txt
def get_documentation(self): L = max(map(lambda mode: len(mode.name), self.__base_mode_sequence)) txt = "\nMODE: %s\n" % self.name txt += "\n" if len(self.__base_mode_sequence) != 1: txt += " BASE MODE SEQUENCE:\n" base_mode_name_list = map(lambda mode: mode.name, self.__base_mode_sequence[:-1]) base_mode_name_list.reverse() for name in base_mode_name_list: txt += " %s\n" % name txt += "\n" if len(self.__doc_history_deletion) != 0: txt += " DELETION ACTIONS:\n" for entry in self.__doc_history_deletion: txt += " %s: %s%s (from mode %s)\n" % \ (entry[0], " " * (L - len(self.name)), entry[1], entry[2]) txt += "\n" if len(self.__doc_history_reprioritization) != 0: txt += " PRIORITY-MARK ACTIONS:\n" self.__doc_history_reprioritization.sort(lambda x, y: cmp(x[4], y[4])) for entry in self.__doc_history_reprioritization: txt += " %s: %s%s (from mode %s) (%i) --> (%i)\n" % \ (entry[0], " " * (L - len(self.name)), entry[1], entry[2], entry[3], entry[4]) txt += "\n" assert all_isinstance(self.__pattern_list, Pattern) if len(self.__pattern_list) != 0: txt += " PATTERN LIST:\n" for x in self.__pattern_list: space = " " * (L - len(x.sr.mode_name)) txt += " (%3i) %s: %s%s\n" % \ (x.incidence_id(), x.sr.mode_name, space, x.pattern_string()) txt += "\n" return txt
def __init__(self, Code, DropOutF=False): assert type(DropOutF) == bool self.__drop_out_f = DropOutF if isinstance(Code, list): self.__code = Code else: self.__code = [ Code ] assert all_isinstance(self.__code, (int, str, unicode))