def __init__(self, interfaces_info, cache_dir, output_dir): interfaces_info = interfaces_info or {} self.interfaces_info = interfaces_info self.jinja_env = initialize_jinja_env(cache_dir) self.output_dir = output_dir # Set global type info idl_types.set_ancestors(dict( (interface_name, interface_info['ancestors']) for interface_name, interface_info in interfaces_info.iteritems() if interface_info['ancestors'])) IdlType.set_callback_interfaces(set( interface_name for interface_name, interface_info in interfaces_info.iteritems() if interface_info['is_callback_interface'])) IdlType.set_dictionaries(set( dictionary_name for dictionary_name, interface_info in interfaces_info.iteritems() if interface_info['is_dictionary'])) IdlType.set_implemented_as_interfaces(dict( (interface_name, interface_info['implemented_as']) for interface_name, interface_info in interfaces_info.iteritems() if interface_info['implemented_as'])) v8_types.set_component_dirs(dict( (interface_name, interface_info['component_dir']) for interface_name, interface_info in interfaces_info.iteritems()))
def __init__(self, interfaces_info, cache_dir): interfaces_info = interfaces_info or {} self.interfaces_info = interfaces_info self.jinja_env = initialize_jinja_env(cache_dir) # Set global type info idl_types.set_ancestors( dict((interface_name, interface_info['ancestors']) for interface_name, interface_info in interfaces_info.iteritems() if interface_info['ancestors'])) IdlType.set_callback_interfaces( set(interface_name for interface_name, interface_info in interfaces_info.iteritems() if interface_info['is_callback_interface'])) IdlType.set_implemented_as_interfaces( dict((interface_name, interface_info['implemented_as']) for interface_name, interface_info in interfaces_info.iteritems() if interface_info['implemented_as'])) IdlType.set_garbage_collected_types( set(interface_name for interface_name, interface_info in interfaces_info.iteritems() if 'GarbageCollected' in interface_info['inherited_extended_attributes'])) IdlType.set_will_be_garbage_collected_types( set(interface_name for interface_name, interface_info in interfaces_info.iteritems() if 'WillBeGarbageCollected' in interface_info['inherited_extended_attributes'])) v8_types.set_component_dirs( dict((interface_name, interface_info['component_dir']) for interface_name, interface_info in interfaces_info.iteritems()))
def __init__(self, interfaces_info, cache_dir): interfaces_info = interfaces_info or {} self.interfaces_info = interfaces_info self.jinja_env = initialize_jinja_env(cache_dir) # Set global type info idl_types.set_ancestors(dict( (interface_name, interface_info['ancestors']) for interface_name, interface_info in interfaces_info.iteritems() if interface_info['ancestors'])) IdlType.set_callback_interfaces(set( interface_name for interface_name, interface_info in interfaces_info.iteritems() if interface_info['is_callback_interface'])) IdlType.set_implemented_as_interfaces(dict( (interface_name, interface_info['implemented_as']) for interface_name, interface_info in interfaces_info.iteritems() if interface_info['implemented_as'])) IdlType.set_garbage_collected_types(set( interface_name for interface_name, interface_info in interfaces_info.iteritems() if 'GarbageCollected' in interface_info['inherited_extended_attributes'])) IdlType.set_will_be_garbage_collected_types(set( interface_name for interface_name, interface_info in interfaces_info.iteritems() if 'WillBeGarbageCollected' in interface_info['inherited_extended_attributes'])) v8_types.set_component_dirs(dict( (interface_name, interface_info['component_dir']) for interface_name, interface_info in interfaces_info.iteritems()))
def set_global_type_info(interfaces_info): idl_types.set_ancestors(interfaces_info['ancestors']) IdlType.set_callback_interfaces(interfaces_info['callback_interfaces']) IdlType.set_dictionaries(interfaces_info['dictionaries']) IdlType.set_implemented_as_interfaces(interfaces_info['implemented_as_interfaces']) IdlType.set_garbage_collected_types(interfaces_info['garbage_collected_interfaces']) IdlType.set_will_be_garbage_collected_types(interfaces_info['will_be_garbage_collected_interfaces']) v8_types.set_component_dirs(interfaces_info['component_dirs'])
def set_global_type_info(info_provider): interfaces_info = info_provider.interfaces_info idl_types.set_ancestors(interfaces_info['ancestors']) IdlType.set_callback_interfaces(interfaces_info['callback_interfaces']) IdlType.set_dictionaries(interfaces_info['dictionaries']) IdlType.set_enums(info_provider.enumerations) IdlType.set_implemented_as_interfaces( interfaces_info['implemented_as_interfaces'])
def set_global_type_info(self): interfaces_info = self.info_provider.interfaces_info set_ancestors(interfaces_info['ancestors']) IdlType.set_callback_interfaces(interfaces_info['callback_interfaces']) IdlType.set_dictionaries(interfaces_info['dictionaries']) IdlType.set_enums(self.info_provider.enumerations) IdlType.set_callback_functions(self.info_provider.callback_functions) IdlType.set_implemented_as_interfaces(interfaces_info['implemented_as_interfaces']) IdlType.set_garbage_collected_types(interfaces_info['garbage_collected_interfaces']) set_component_dirs(interfaces_info['component_dirs'])
def set_global_type_info(info_provider): interfaces_info = info_provider.interfaces_info idl_types.set_ancestors(interfaces_info['ancestors']) IdlType.set_callback_interfaces(interfaces_info['callback_interfaces']) IdlType.set_dictionaries(interfaces_info['dictionaries']) IdlType.set_enums(info_provider.enumerations) IdlType.set_implemented_as_interfaces(interfaces_info['implemented_as_interfaces']) IdlType.set_garbage_collected_types(interfaces_info['garbage_collected_interfaces']) IdlType.set_will_be_garbage_collected_types(interfaces_info['will_be_garbage_collected_interfaces']) v8_types.set_component_dirs(interfaces_info['component_dirs'])
def set_global_type_info(interfaces_info): idl_types.set_ancestors(interfaces_info['ancestors']) IdlType.set_callback_interfaces(interfaces_info['callback_interfaces']) IdlType.set_dictionaries(interfaces_info['dictionaries']) IdlType.set_implemented_as_interfaces( interfaces_info['implemented_as_interfaces']) IdlType.set_garbage_collected_types( interfaces_info['garbage_collected_interfaces']) IdlType.set_will_be_garbage_collected_types( interfaces_info['will_be_garbage_collected_interfaces']) v8_types.set_component_dirs(interfaces_info['component_dirs'])
def set_global_type_info(info_provider): interfaces_info = info_provider.interfaces_info idl_types.set_ancestors(interfaces_info['ancestors']) IdlType.set_callback_interfaces(interfaces_info['callback_interfaces']) IdlType.set_dictionaries(interfaces_info['dictionaries']) IdlType.set_enums(info_provider.enumerations) IdlType.set_implemented_as_interfaces( interfaces_info['implemented_as_interfaces']) IdlType.set_garbage_collected_types( interfaces_info['garbage_collected_interfaces']) IdlType.set_will_be_garbage_collected_types( interfaces_info['will_be_garbage_collected_interfaces']) v8_types.set_component_dirs(interfaces_info['component_dirs'])
def __init__(self, interfaces_info, cache_dir, output_dir): interfaces_info = interfaces_info or {} self.interfaces_info = interfaces_info self.jinja_env = initialize_jinja_env(cache_dir) self.output_dir = output_dir # Set global type info idl_types.set_ancestors(interfaces_info['ancestors']) IdlType.set_callback_interfaces(interfaces_info['callback_interfaces']) IdlType.set_dictionaries(interfaces_info['dictionaries']) IdlType.set_implemented_as_interfaces(interfaces_info['implemented_as_interfaces']) IdlType.set_garbage_collected_types(interfaces_info['garbage_collected_interfaces']) IdlType.set_will_be_garbage_collected_types(interfaces_info['will_be_garbage_collected_interfaces']) v8_types.set_component_dirs(interfaces_info['component_dirs'])
def generate_code(self, module_definitions): definitions = module_definitions['dom'] # Note: callback functions aren't visible out side defined IDL. IdlType.set_callback_interfaces(definitions.callback_functions) global global_definitions global_definitions = definitions return list( chain(*[ self.generate_cc_h(context) for context in [ dictionary_context(dictionary) for dictionary in definitions.dictionaries.values() ] + # interface context must be generated after dictionary context # for include files. [ build_interface_context(interface) for interface in definitions.interfaces.values() ] ]))