Vega strike Python Modules doc  0.5.1
Documentation of the " Modules " folder of Vega strike
 All Data Structures Namespaces Files Functions Variables
BasicModuleImporter Class Reference
Inheritance diagram for BasicModuleImporter:
_Verbose ModuleImporter

Public Member Functions

def __init__
 
def get_loader
 
def set_loader
 
def get_hooks
 
def set_hooks
 
def import_module
 
def reload
 
def unload
 
def install
 
def uninstall
 
- Public Member Functions inherited from _Verbose
def __init__
 
def get_verbose
 
def set_verbose
 
def note
 
def message
 

Data Fields

 loader
 
 modules
 
 save_import_module
 
 save_reload
 
 save_unload
 
- Data Fields inherited from _Verbose
 verbose
 

Detailed Description

Basic module importer; uses module loader.

This provides basic import facilities but no package imports.

Definition at line 329 of file ihooks.py.

Constructor & Destructor Documentation

def __init__ (   self,
  loader = None,
  verbose = VERBOSE 
)

Definition at line 337 of file ihooks.py.

338  def __init__(self, loader = None, verbose = VERBOSE):
339  _Verbose.__init__(self, verbose)
340  self.loader = loader or ModuleLoader(None, verbose)
341  self.modules = self.loader.modules_dict()

Member Function Documentation

def get_hooks (   self)

Definition at line 348 of file ihooks.py.

349  def get_hooks(self):
350  return self.loader.get_hooks()
def get_loader (   self)

Definition at line 342 of file ihooks.py.

References BasicModuleImporter.loader.

343  def get_loader(self):
344  return self.loader
def import_module (   self,
  name,
  globals = {},
  locals = {},
  fromlist = [] 
)

Definition at line 354 of file ihooks.py.

References BasicModuleImporter.modules.

355  def import_module(self, name, globals={}, locals={}, fromlist=[]):
356  if self.modules.has_key(name):
357  return self.modules[name] # Fast path
358  stuff = self.loader.find_module(name)
359  if not stuff:
360  raise ImportError, "No module named %s" % name
361  return self.loader.load_module(name, stuff)
def install (   self)

Definition at line 373 of file ihooks.py.

374  def install(self):
375  self.save_import_module = __builtin__.__import__
376  self.save_reload = __builtin__.reload
377  if not hasattr(__builtin__, 'unload'):
378  __builtin__.unload = None
379  self.save_unload = __builtin__.unload
380  __builtin__.__import__ = self.import_module
381  __builtin__.reload = self.reload
382  __builtin__.unload = self.unload
def reload (   self,
  module,
  path = None 
)

Definition at line 362 of file ihooks.py.

363  def reload(self, module, path = None):
364  name = module.__name__
365  stuff = self.loader.find_module(name, path)
366  if not stuff:
367  raise ImportError, "Module %s not found for reload" % name
368  return self.loader.load_module(name, stuff)
def set_hooks (   self,
  hooks 
)

Definition at line 351 of file ihooks.py.

352  def set_hooks(self, hooks):
353  return self.loader.set_hooks(hooks)
def set_loader (   self,
  loader 
)

Definition at line 345 of file ihooks.py.

References BasicModuleImporter.loader.

346  def set_loader(self, loader):
347  self.loader = loader
def uninstall (   self)

Definition at line 383 of file ihooks.py.

References BasicModuleImporter.save_import_module, BasicModuleImporter.save_reload, and BasicModuleImporter.save_unload.

384  def uninstall(self):
385  __builtin__.__import__ = self.save_import_module
386  __builtin__.reload = self.save_reload
387  __builtin__.unload = self.save_unload
388  if not __builtin__.unload:
389  del __builtin__.unload
390 
def unload (   self,
  module 
)

Definition at line 369 of file ihooks.py.

References BasicModuleImporter.modules.

370  def unload(self, module):
371  del self.modules[module.__name__]
372  # XXX Should this try to clear the module's namespace?

Field Documentation

loader

Definition at line 339 of file ihooks.py.

modules

Definition at line 340 of file ihooks.py.

save_import_module

Definition at line 374 of file ihooks.py.

save_reload

Definition at line 375 of file ihooks.py.

save_unload

Definition at line 378 of file ihooks.py.


The documentation for this class was generated from the following file: