Home | History | Annotate | Download | only in mapi

Lines Matching refs:ent

163                     raise Exception('recursive alias %s' % ent.name)
179 ent = ABIEntry(cols, attrs, func)
180 entry_dict[ent.name] = ent
235 raise Exception('recursive alias %s' % ent.name)
247 ent = ABIEntry(cols, attrs)
248 if entry_dict.has_key(ent.name):
249 raise Exception('%s is duplicated' % (ent.name))
250 entry_dict[ent.name] = ent
272 ent = entries[i]
273 if not handcode and ent.handcode:
274 handcode = ent.handcode
275 elif ent.handcode != handcode:
277 ent.handcode, handcode)
279 if ent.name in all_names:
280 raise Exception('%s is duplicated' % (ent.name))
281 if ent.alias and ent.alias.name not in all_names:
282 raise Exception('failed to alias %s' % (ent.alias.name))
283 all_names.append(ent.name)
326 def need_entry_point(self, ent):
329 use_alias = (ent.hidden and ent.alias and not ent.handcode)
335 for ent in self.entries:
336 if not self.need_entry_point(ent):
338 export = self.api_call if not ent.hidden else ''
339 decls.append(self._c_decl(ent, prefix, True, export) + ';')
352 entries = [self._c_function(ent, prefix)
353 for ent in self.entries if not ent.alias]
361 for ent in self.entries:
362 if not ent.alias:
366 line += '%s\\0' % ent.name
372 def _c_function(self, ent, prefix, mangle=False, stringify=False):
379 name = ent.name
380 if mangle and ent.hidden:
381 name = '_dispatch_stub_' + str(ent.slot)
384 def _c_function_call(self, ent, prefix):
386 if ent.handcode:
390 name = fmt % (prefix, ent.handcode)
391 elif self.need_entry_point(ent):
392 name = self._c_function(ent, prefix, True)
394 name = self._c_function(ent.alias, prefix, True)
397 def _c_decl(self, ent, prefix, mangle=False, export=''):
399 decl = '%s %s %s(%s)' % (ent.c_return(), self.api_entry,
400 self._c_function(ent, prefix, mangle), ent.c_params())
408 def _c_cast(self, ent):
411 ent.c_return(), self.api_entry, ent.c_params())
417 decls = [self._c_decl(ent, prefix) + ';'
418 for ent in self.entries if not ent.alias]
425 for ent in self.entries:
426 if ent.hidden and no_hidden:
429 if not self.need_entry_point(ent):
432 export = self.api_call if not ent.hidden else ''
434 proto = self._c_decl(ent, prefix, True, export)
435 cast = self._c_cast(ent)
438 if ent.ret:
445 ent.slot)
447 stmt3 += '%s((%s) _func)(%s);' % (ret, cast, ent.c_args())
451 if ent.handcode:
461 for ent in self.entries:
462 if ent.alias:
466 self._c_function_call(ent, prefix))
480 for ent in sorted_entries:
481 offsets[ent] = count
482 pool.append('%s' % (ent.name))
483 count += len(ent.name) + 1
492 for ent in self.entries_sorted_by_names:
494 self.indent, pool_offsets[ent], ent.slot))
501 for ent in self.entries:
502 if ent.alias:
505 proto = self._c_decl(ent
509 for t, n, a in ent.params:
513 if ent.params:
517 self._c_function(ent, warn_prefix, False, True))
519 if ent.ret:
520 stmt2 = self.indent + 'return (%s) 0;' % (ent.ret)
531 entries = [self._c_function(ent, prefix)
532 for ent in self.entries if not ent.alias]
544 for ent in self.entries:
545 if ent.hidden and no_hidden:
548 if not self.need_entry_point(ent):
551 name = self._c_function(ent, prefix, True, True)
553 if ent.handcode:
556 if ent.hidden:
559 if ent.alias and not (ent.alias.hidden and no_hidden):
562 self._c_function(ent.alias, prefix, True, True)))
565 asm.append('"\\t"STUB_ASM_CODE("%d")"\\n"' % (ent.slot))
567 if ent.handcode:
650 for ent in self.entries:
651 if not ent.hidden:
691 for ent in entries:
692 self._override_for_api(ent)
714 def _override_for_api(self, ent):
744 def _override_for_api(self, ent):
745 if ent.xml_data is None:
747 ent.hidden = (ent.name not in \
748 ent.xml_data.entry_points_for_api_version('es1')) \
749 or ent.hidden
750 ent.handcode = False
768 def _override_for_api(self, ent):
769 if ent.xml_data is None:
771 ent.hidden = (ent.name not in \
772 ent.xml_data.entry_points_for_api_version('es2')) \
773 or ent.hidden
779 if ent.name == 'GetInternalformativ':
780 ent.hidden = False
782 ent.handcode = False
807 def _override_for_api(self, ent):
808 ent.hidden = True
809 ent.handcode = False