hgdemandimport/demandimportpy2.py
changeset 43503 313e3a279828
parent 43076 2372284d9457
child 43506 9f70512ae2cf
equal deleted inserted replaced
43502:c093cc6e6c99 43503:313e3a279828
    68             after = [rest]
    68             after = [rest]
    69         else:
    69         else:
    70             head = name
    70             head = name
    71             after = []
    71             after = []
    72         object.__setattr__(
    72         object.__setattr__(
    73             self, r"_data", (head, globals, locals, after, level, set())
    73             self, "_data", (head, globals, locals, after, level, set())
    74         )
    74         )
    75         object.__setattr__(self, r"_module", None)
    75         object.__setattr__(self, "_module", None)
    76 
    76 
    77     def _extend(self, name):
    77     def _extend(self, name):
    78         """add to the list of submodules to load"""
    78         """add to the list of submodules to load"""
    79         self._data[3].append(name)
    79         self._data[3].append(name)
    80 
    80 
   141                 for modname in modrefs:
   141                 for modname in modrefs:
   142                     modref = sys.modules.get(modname, None)
   142                     modref = sys.modules.get(modname, None)
   143                     if modref and getattr(modref, head, None) is self:
   143                     if modref and getattr(modref, head, None) is self:
   144                         setattr(modref, head, mod)
   144                         setattr(modref, head, mod)
   145 
   145 
   146                 object.__setattr__(self, r"_module", mod)
   146                 object.__setattr__(self, "_module", mod)
   147 
   147 
   148     def __repr__(self):
   148     def __repr__(self):
   149         if self._module:
   149         if self._module:
   150             return "<proxied module '%s'>" % self._data[0]
   150             return "<proxied module '%s'>" % self._data[0]
   151         return "<unloaded module '%s'>" % self._data[0]
   151         return "<unloaded module '%s'>" % self._data[0]