def _parseBridgeSupport(data, globals, frameworkName, *args, **kwds): try: try: objc.parseBridgeSupport(data, globals, frameworkName, *args, **kwds) except objc.internal_error, e: import warnings warnings.warn("Error parsing BridgeSupport data for %s: %s" % (frameworkName, e), RuntimeWarning) finally: # Add formal protocols to the protocols submodule, for backward # compatibility with earlier versions of PyObjC if 'protocols' in globals: for p in objc.protocolsForProcess(): setattr(globals['protocols'], p.__name__, p)
def _parseBridgeSupport(data, globals, frameworkName, *args, **kwds): try: try: objc.parseBridgeSupport(data, globals, frameworkName, *args, **kwds) except objc.internal_error, e: import warnings warnings.warn( "Error parsing BridgeSupport data for %s: %s" % (frameworkName, e), RuntimeWarning) finally: # Add formal protocols to the protocols submodule, for backward # compatibility with earlier versions of PyObjC if 'protocols' in globals: for p in objc.protocolsForProcess(): setattr(globals['protocols'], p.__name__, p)
def __init__(self, name, frameworkIdentifier, frameworkPath, metadict, inline_list=None, initialdict={}, parents=()): super(ObjCLazyModule, self).__init__(name) if frameworkIdentifier is not None or frameworkPath is not None: self.__bundle = self.__dict__['__bundle__'] = _loadBundle( name, frameworkIdentifier, frameworkPath) pfx = name + '.' for nm in sys.modules: if nm.startswith(pfx): rest = nm[len(pfx):] if '.' in rest: continue if sys.modules[nm] is not None: self.__dict__[rest] = sys.modules[nm] self.__dict__.update(initialdict) self.__dict__.update(metadict.get('misc', {})) self.__parents = parents self.__varmap = metadict.get('constants') self.__varmap_dct = metadict.get('constants_dict', {}) self.__enummap = metadict.get('enums') self.__funcmap = metadict.get('functions') self.__aliases = metadict.get('aliases') self.__inlinelist = inline_list self.__expressions = metadict.get('expressions') self.__expressions_mapping = GetAttrMap(self) self.__load_cftypes(metadict.get('cftypes')) if metadict.get('protocols') is not None: self.__dict__['protocols'] = ModuleType('%s.protocols' % (name, )) self.__dict__['protocols'].__dict__.update(metadict['protocols']) for p in objc.protocolsForProcess(): setattr(self.__dict__['protocols'], p.__name__, p)