home *** CD-ROM | disk | FTP | other *** search
- # Source Generated with Decompyle++
- # File: in.pyc (Python 2.6)
-
-
- class OverrideTable:
-
- def __init__(self, list_of_lists, run_level = 1):
- self._OverrideTable__list_of_lists = list_of_lists
- self._OverrideTable__initiate_values()
- self._OverrideTable__run_level = run_level
-
-
- def __initiate_values(self):
- self._OverrideTable__override_table_final = ''
- self._OverrideTable__state = 'default'
- self._OverrideTable__override_list = []
- self._OverrideTable__state_dict = {
- 'default': self._OverrideTable__default_func,
- 'override': self._OverrideTable__override_func,
- 'unsure_ob': self._OverrideTable__after_bracket_func }
- self._OverrideTable__override_dict = {
- 'cw<ls<lis-tbl-id': 'list-table-id',
- 'cw<ls<list-id___': 'list-id' }
-
-
- def __override_func(self, line):
- if self._OverrideTable__token_info == 'cb<nu<clos-brack' and self._OverrideTable__cb_count == self._OverrideTable__override_ob_count:
- self._OverrideTable__state = 'default'
- self._OverrideTable__parse_override_dict()
- else:
- att = self._OverrideTable__override_dict.get(self._OverrideTable__token_info)
- if att:
- value = line[20:]
- self._OverrideTable__override_list[-1][att] = value
-
-
-
- def __parse_override_dict(self):
- override_dict = self._OverrideTable__override_list[-1]
- list_id = override_dict.get('list-id')
- if list_id == None and self._OverrideTable__level > 3:
- msg = 'This override does not appear to have a list-id\n'
- raise self._OverrideTable__bug_handler, msg
- self._OverrideTable__level > 3
- current_table_id = override_dict.get('list-table-id')
- if current_table_id == None and self._OverrideTable__run_level > 3:
- msg = 'This override does not appear to have a list-table-id\n'
- raise self._OverrideTable__bug_handler, msg
- self._OverrideTable__run_level > 3
- counter = 0
- for list in self._OverrideTable__list_of_lists:
- info_dict = list[0]
- old_table_id = info_dict.get('list-table-id')
- if old_table_id == current_table_id:
- self._OverrideTable__list_of_lists[counter][0]['list-id'].append(list_id)
- break
-
- counter += 1
-
-
-
- def __parse_lines(self, line):
- lines = line.split('\n')
- self._OverrideTable__ob_count = 0
- self._OverrideTable__ob_group = 0
- for line in lines:
- self._OverrideTable__token_info = line[:16]
- if self._OverrideTable__token_info == 'ob<nu<open-brack':
- self._OverrideTable__ob_count = line[-4:]
- self._OverrideTable__ob_group += 1
-
- if self._OverrideTable__token_info == 'cb<nu<clos-brack':
- self._OverrideTable__cb_count = line[-4:]
- self._OverrideTable__ob_group -= 1
-
- action = self._OverrideTable__state_dict.get(self._OverrideTable__state)
- if action == None:
- print self._OverrideTable__state
-
- action(line)
-
- self._OverrideTable__write_final_string()
-
-
- def __default_func(self, line):
- if self._OverrideTable__token_info == 'ob<nu<open-brack':
- self._OverrideTable__state = 'unsure_ob'
-
-
-
- def __after_bracket_func(self, line):
- if self._OverrideTable__token_info == 'cw<ls<lis-overid':
- self._OverrideTable__state = 'override'
- self._OverrideTable__override_ob_count = self._OverrideTable__ob_count
- the_dict = { }
- self._OverrideTable__override_list.append(the_dict)
- elif self._OverrideTable__run_level > 3:
- msg = 'No matching token after open bracket\n'
- msg += 'token is "%s\n"' % line
- raise self._OverrideTable__bug_handler, msg
-
-
-
- def __write_final_string(self):
- self._OverrideTable__override_table_final = 'mi<mk<over_beg_\n'
- self._OverrideTable__override_table_final += 'mi<tg<open______<override-table\n' + 'mi<mk<overbeg__\n' + self._OverrideTable__override_table_final
- for the_dict in self._OverrideTable__override_list:
- self._OverrideTable__override_table_final += 'mi<tg<empty-att_<override-list'
- the_keys = the_dict.keys()
- for the_key in the_keys:
- self._OverrideTable__override_table_final += '<%s>%s' % (the_key, the_dict[the_key])
-
- self._OverrideTable__override_table_final += '\n'
-
- self._OverrideTable__override_table_final += '\n'
- self._OverrideTable__override_table_final += 'mi<mk<overri-end\n' + 'mi<tg<close_____<override-table\n'
- self._OverrideTable__override_table_final += 'mi<mk<overribend_\n'
-
-
- def parse_override_table(self, line):
- self._OverrideTable__parse_lines(line)
- return (self._OverrideTable__override_table_final, self._OverrideTable__list_of_lists)
-
-
-