Lines Matching refs:entry
32 def AddEntry(self, entry):
33 if self._tags.has_key(entry.Tag()):
34 print >>sys.stderr, ( 'Entry "%s" duplicates tag number '
36 entry.Name(), entry.Tag(),
37 self._tags[entry.Tag()], line_count)
39 self._entries.append(entry)
40 self._tags[entry.Tag()] = entry.Name()
41 print >>sys.stderr, ' Added entry: %s' % entry.Name()
46 def EntryTagName(self, entry):
49 name = "%s_%s" % (self._name, entry.Name())
53 """Takes an array, add indentation to each entry and prints it."""
54 for entry in code:
55 print >>file, '%s%s' % (ident, entry)
61 for entry in self._entries:
62 print >>file, ' %s=%d,' % (self.EntryTagName(entry),
63 entry.Tag())
73 for entry in self._entries:
74 dcl = entry.AssignDeclaration('(*%s_assign)' % entry.Name())
76 entry.GetDeclaration('(*%s_get)' % entry.Name()))
77 if entry.Array():
79 entry.AddDeclaration('(*%s_add)' % entry.Name()))
85 for entry in self._entries:
86 dcl = entry.Declaration()
89 for entry in self._entries:
90 print >>file, ' ev_uint8_t %s_set;' % entry.Name()
107 for entry in self._entries:
108 self.PrintIdented(file, '', entry.AssignDeclaration(
109 entry.AssignFuncName()))
110 self.PrintIdented(file, '', entry.GetDeclaration(
111 entry.GetFuncName()))
112 if entry.Array():
113 self.PrintIdented(file, '', entry.AddDeclaration(
114 entry.AddFuncName()))
126 for entry in self._entries:
127 self.PrintIdented(file, ' ', entry.CodeBase())
142 for entry in self._entries:
143 self.PrintIdented(file, ' ', entry.CodeNew('tmp'))
144 print >>file, ' tmp->%s_set = 0;\n' % entry.Name()
151 for entry in self._entries:
152 if entry.Array():
153 self.PrintIdented(file, '', entry.CodeAdd())
157 for entry in self._entries:
158 self.PrintIdented(file, '', entry.CodeAssign())
162 for entry in self._entries:
163 self.PrintIdented(file, '', entry.CodeGet())
171 for entry in self._entries:
172 self.PrintIdented(file, ' ', entry.CodeClear('tmp'))
182 for entry in self._entries:
183 self.PrintIdented(file, ' ', entry.CodeFree('tmp'))
193 for entry in self._entries:
196 if entry.Optional():
198 print >>file, ' if (tmp->%s_set) {' % entry.Name()
201 entry.CodeMarshal('evbuf', self.EntryTagName(entry), 'tmp'))
202 if entry.Optional():
218 for entry in self._entries:
219 print >>file, ' case %s:\n' % self.EntryTagName(entry)
220 if not entry.Array():
224 ) % (entry.Name())
228 entry.CodeUnmarshal('evbuf',
229 self.EntryTagName(entry), 'tmp'))
231 print >>file, ( ' tmp->%s_set = 1;\n' % entry.Name() +
251 for entry in self._entries:
254 entry.CodeComplete('msg'))
299 class Entry:
429 'Entry "%s" cannot be created as an array '
434 'Entry "%s" does not know which struct it belongs to '
438 print >>sys.stderr, ( 'Entry "%s" has illegal combination of '
443 class EntryBytes(Entry):
446 Entry.__init__(self, type, name, tag)
525 print >>sys.stderr, 'Entry "%s" needs a length around line %d' % (
529 Entry.Verify(self)
531 class EntryInt(Entry):
534 Entry.__init__(self, type, name, tag)
561 class EntryString(Entry):
564 Entry.__init__(self, type, name, tag)
624 class EntryStruct(Entry):
627 Entry.__init__(self, type, name, tag)
750 class EntryVarBytes(Entry):
753 Entry.__init__(self, type, name, tag)
856 class EntryArray(Entry):
857 def __init__(self, entry):
859 Entry.__init__(self, entry._type, entry._name, entry._tag)
861 self._entry = entry
862 self._refname = entry._refname
1061 def ProcessOneEntry(newstruct, entry):
1071 tokens = entry.split(' ')
1093 entry, line_count)
1112 print >>sys.stderr, 'Expected tag number: \"%s\"' % entry
1117 print >>sys.stderr, 'Cannot parse \"%s\"' % entry
1121 print >>sys.stderr, 'Need tag number: \"%s\"' % entry
1124 # Create the right entry
1141 print >>sys.stderr, 'Bad type: "%s" in "%s"' % (entry_type, entry)
1156 # We need to encapsulate this entry into a struct
1159 # Now borgify the new entry.
1181 for entry in tokens:
1182 entry = NormalizeLine(entry)
1183 if not entry:
1187 structs.extend(ProcessOneEntry(newstruct, entry))
1405 for entry in entities:
1406 entry.PrintForwardDeclaration(header_fp)
1409 for entry in entities:
1410 entry.PrintTags(header_fp)
1411 entry.PrintDeclaration(header_fp)
1418 for entry in entities:
1419 entry.PrintCode(impl_fp)