class_docstr: Represents an environment to import modules from.
  
  By default, you can figure out what module an object belongs by checking
  __module__ and importing the result using __import__ or importlib.import_module.
  
  torch.package introduces module importers other than the default one.
  Each PackageImporter introduces a new namespace. Potentially a single
  name (e.g. 'foo.bar') is present in multiple namespaces.
  
  It supports two main operations:
      import_module: module_name -> module object
      get_name: object -> (parent module name, name of obj within module)
  
  The guarantee is that following round-trip will succeed or throw an ObjNotFoundError/ObjMisMatchError.
      module_name, obj_name = env.get_name(obj)
      module = env.import_module(module_name)
      obj2 = getattr(module, obj_name)
      assert obj1 is obj2
docstr: Import `module_name` from this environment.
  
  The contract is the same as for importlib.import_module.
docstr_tok: ["Import","`","module_name","`","from","this","environment",".","The","contract","is","the","same","as","for","importlib.import_module","."]
code: def import_module(self, module_name: str) -> ModuleType:
      """Import `module_name` from this environment.
  
      The contract is the same as for importlib.import_module.
      """
      pass
  
imports: import importlib
  from abc import ABC, abstractmethod
  from pickle import _getattribute, _Pickler, whichmodule
  from types import ModuleType
  from typing import Any, Dict, List, Optional, Tuple
  from ._mangling import demangle, get_mangle_prefix, is_mangled
label_desc: Use image node_id 1 for calling the Importer obj's underlying member method code with example usage: obj.import_module(module_name) without return types