• Home
  • Raw
  • Download

Lines Matching refs:self

215     def __init__(self, multiply_defined_symbols):  argument
216 super(MultiplyDefinedSymbolError, self).__init__(
219 self.multiply_defined_symbols = multiply_defined_symbols
224 def __init__(self, name, base, tags, symbols): argument
225 self.name = name
226 self.base = base
227 self.tags = tags
228 self.symbols = symbols
230 def __eq__(self, other): argument
231 if self.name != other.name:
233 if self.base != other.base:
235 if self.tags != other.tags:
237 if self.symbols != other.symbols:
244 def __init__(self, name, tags): argument
245 self.name = name
246 self.tags = tags
248 def __eq__(self, other): argument
249 return self.name == other.name and set(self.tags) == set(other.tags)
253 def __init__(self, input_file, api_map, arch, api, vndk, apex): argument
254 self.input_file = input_file
255 self.api_map = api_map
256 self.arch = arch
257 self.api = api
258 self.vndk = vndk
259 self.apex = apex
260 self.current_line = None
262 def parse(self): argument
265 while self.next_line() != '':
266 if '{' in self.current_line:
267 versions.append(self.parse_version())
270 'Unexpected contents at top level: ' + self.current_line)
272 self.check_no_duplicate_symbols(versions)
275 def check_no_duplicate_symbols(self, versions): argument
287 if should_omit_version(version, self.arch, self.api, self.vndk, self.apex):
291 if should_omit_symbol(symbol, self.arch, self.api, self.vndk, self.apex):
301 def parse_version(self): argument
303 name = self.current_line.split('{')[0].strip()
304 tags = get_tags(self.current_line)
305 tags = decode_api_level_tags(tags, self.api_map)
309 while self.next_line() != '':
310 if '}' in self.current_line:
313 base = self.current_line.partition('}')[2]
325 elif 'extern "C++" {' in self.current_line:
327 elif not cpp_symbols and ':' in self.current_line:
328 visibility = self.current_line.split(':')[0].strip()
336 symbols.append(self.parse_symbol())
343 def parse_symbol(self): argument
345 if ';' not in self.current_line:
347 'Expected ; to terminate symbol: ' + self.current_line)
348 if '*' in self.current_line:
352 name, _, _ = self.current_line.strip().partition(';')
353 tags = get_tags(self.current_line)
354 tags = decode_api_level_tags(tags, self.api_map)
357 def next_line(self): argument
362 line = self.input_file.readline()
364 line = self.input_file.readline()
369 self.current_line = line
370 return self.current_line
375 def __init__(self, src_file, version_script, arch, api, vndk, apex): argument
376 self.src_file = src_file
377 self.version_script = version_script
378 self.arch = arch
379 self.api = api
380 self.vndk = vndk
381 self.apex = apex
383 def write(self, versions): argument
386 self.write_version(version)
388 def write_version(self, version): argument
390 if should_omit_version(version, self.arch, self.api, self.vndk, self.apex):
393 section_versioned = symbol_versioned_in_api(version.tags, self.api)
397 if should_omit_symbol(symbol, self.arch, self.api, self.vndk, self.apex):
400 if symbol_versioned_in_api(symbol.tags, self.api):
406 self.version_script.write(version.name + ' {\n')
407 self.version_script.write(' global:\n')
409 emit_version = symbol_versioned_in_api(symbol.tags, self.api)
411 self.version_script.write(' ' + symbol.name + ';\n')
418 self.src_file.write('{}int {} = 0;\n'.format(
421 self.src_file.write('{}void {}() {{}}\n'.format(
426 self.version_script.write('}' + base + ';\n')