Lines Matching refs:self

24     def __init__(self, line='<line not provided>', reader=None):  argument
26 BaseException.__init__(self,
30 BaseException.__init__(self, 'Error parsing line: %s' % line)
40 def __init__(self, proto='', desc='', ret='', attrs=[]): argument
41 self.proto = proto
42 self.desc = desc
43 self.ret = ret
44 self.attrs = attrs
54 def __init__(self, *args, **kwargs): argument
56 self.enum_val = None
58 def proto_break_down(self): argument
67 capture = proto_re.match(self.proto)
98 def __init__(self, filename): argument
99 self.reader = open(filename, 'r')
100 self.line = ''
101 self.helpers = []
102 self.commands = []
103 self.desc_unique_helpers = set()
104 self.define_unique_helpers = []
105 self.helper_enum_vals = {}
106 self.helper_enum_pos = {}
107 self.desc_syscalls = []
108 self.enum_syscalls = []
110 def parse_element(self): argument
111 proto = self.parse_symbol()
112 desc = self.parse_desc(proto)
113 ret = self.parse_ret(proto)
116 def parse_helper(self): argument
117 proto = self.parse_proto()
118 desc = self.parse_desc(proto)
119 ret = self.parse_ret(proto)
120 attrs = self.parse_attrs(proto)
123 def parse_symbol(self): argument
125 capture = p.match(self.line)
129 end = end_re.match(self.line)
132 self.line = self.reader.readline()
135 def parse_proto(self): argument
144 capture = p.match(self.line)
147 self.line = self.reader.readline()
150 def parse_desc(self, proto): argument
152 capture = p.match(self.line)
160 self.line = self.reader.readline()
161 if self.line == ' *\n':
165 capture = p.match(self.line)
176 def parse_ret(self, proto): argument
178 capture = p.match(self.line)
186 self.line = self.reader.readline()
187 if self.line == ' *\n':
191 capture = p.match(self.line)
202 def parse_attrs(self, proto): argument
204 capture = p.match(self.line)
208 self.line = self.reader.readline()
210 capture = p.match(self.line)
217 self.line = self.reader.readline()
218 if self.line != ' *\n':
221 self.line = self.reader.readline()
224 def seek_to(self, target, help_message, discard_lines = 1): argument
225 self.reader.seek(0)
226 offset = self.reader.read().find(target)
229 self.reader.seek(offset)
230 self.reader.readline()
232 self.reader.readline()
233 self.line = self.reader.readline()
235 def parse_desc_syscall(self): argument
236 self.seek_to('* DOC: eBPF Syscall Commands',
240 command = self.parse_element()
241 self.commands.append(command)
242 self.desc_syscalls.append(command.proto)
247 def parse_enum_syscall(self): argument
248 self.seek_to('enum bpf_cmd {',
259 capture = assign_p.match(self.line)
262 self.line = self.reader.readline()
264 capture = bpf_p.match(self.line)
266 bpf_cmd_str += self.line
269 self.line = self.reader.readline()
271 self.enum_syscalls = re.findall(r'(BPF\w+)+', bpf_cmd_str)
273 def parse_desc_helpers(self): argument
274 self.seek_to(helpersDocStart,
278 helper = self.parse_helper()
279 self.helpers.append(helper)
281 self.desc_unique_helpers.add(proto['name'])
285 def parse_define_helpers(self): argument
292 self.seek_to('#define ___BPF_FUNC_MAPPER(FN, ctx...)',
299 capture = p.match(self.line)
301 fn_defines_str += self.line
303 self.helper_enum_vals[helper_name] = int(capture.group(2))
304 self.helper_enum_pos[helper_name] = i
308 self.line = self.reader.readline()
310 self.define_unique_helpers = re.findall(r'FN\(\w+, \d+, ##ctx\)', fn_defines_str)
312 def validate_helpers(self): argument
317 for helper in self.helpers:
321 enum_val = self.helper_enum_vals[name]
322 enum_pos = self.helper_enum_pos[name]
345 def run(self): argument
346 self.parse_desc_syscall()
347 self.parse_enum_syscall()
348 self.parse_desc_helpers()
349 self.parse_define_helpers()
350 self.validate_helpers()
351 self.reader.close()
361 def __init__(self, parser): argument
362 self.parser = parser
363 self.elements = []
365 def print_header(self): argument
368 def print_footer(self): argument
371 def print_one(self, helper): argument
374 def print_all(self): argument
375 self.print_header()
376 for elem in self.elements:
377 self.print_one(elem)
378 self.print_footer()
380 def elem_number_check(self, desc_unique_elem, define_unique_elem, type, instance): argument
407 def __init__(self, parser): argument
408 self.parser = parser
410 def print_license(self): argument
424 def print_elem(self, elem): argument
439 def get_kernel_version(self): argument
453 def get_last_doc_update(self, delimiter): argument
471 def __init__(self, parser): argument
472 self.elements = parser.helpers
473self.elem_number_check(parser.desc_unique_helpers, parser.define_unique_helpers, 'helper', '___BPF…
475 def print_header(self): argument
519 kernelVersion = self.get_kernel_version()
520 lastUpdate = self.get_last_doc_update(helpersDocStart)
522 PrinterRST.print_license(self)
527 def print_footer(self): argument
613 def print_proto(self, helper): argument
639 def print_one(self, helper): argument
640 self.print_proto(helper)
641 self.print_elem(helper)
652 def __init__(self, parser): argument
653 self.elements = parser.commands
654 self.elem_number_check(parser.desc_syscalls, parser.enum_syscalls, 'syscall', 'bpf_cmd')
656 def print_header(self): argument
670 PrinterRST.print_license(self)
673 def print_one(self, command): argument
675 self.print_elem(command)
684 def __init__(self, parser): argument
685 self.elements = parser.helpers
686self.elem_number_check(parser.desc_unique_helpers, parser.define_unique_helpers, 'helper', '___BPF…
810 def print_header(self): argument
817 for fwd in self.type_fwds:
822 for helper in self.elements:
836 def print_footer(self): argument
840 def map_type(self, t): argument
841 if t in self.known_types:
843 if t in self.mapped_types:
844 return self.mapped_types[t]
851 def print_one(self, helper): argument
854 if proto['name'] in self.seen_helpers:
856 self.seen_helpers.add(proto['name'])
877 print('%s %s(* const %s)(' % (self.map_type(proto['ret_type']),
883 if proto['name'] in self.overloaded_helpers and i == 0:
886 one_arg = '{}{}'.format(comma, self.map_type(t))