Package SimPy :: Module Lister
[hide private]
[frames] | no frames]

Source Code for Module SimPy.Lister

 1  #!/usr / bin / env python 
 2  # $Revision: 163 $ $Date: 2008-12-15 12:47:44 +0100 (Mo, 15 Dez 2008) $ kgm 
 3  """Lister 2.0 
 4  Pretty-printer for SimPy class objects 
 5  """ 
 6  __version__ = '2.0 $Revision: 163 $ $Date: 2008-12-15 12:47:44 +0100 (Mo, 15 Dez 2008) $' 
 7   
8 -class Lister(object):
9 indent = 0
10 - def __str__(self):
11 Lister.indent += 1 12 result = (' < Instance of %s, id %s:\n%s' % (self.__class__.__name__, 13 id(self),self.attrnames())) + '\t' * (Lister.indent - 1) + ' > ' 14 Lister.indent -= 1 15 return result
16
17 - def attrnames(self):
18 result = '' 19 for attr in self.__dict__.keys(): 20 if attr[:2] == '__': #builtin 21 pass 22 elif attr[0] == '_': #private 23 pass 24 else: 25 result = result + '\t' * Lister.indent + '.%s=%s\n' % (attr, self.__dict__[attr]) 26 return result
27 - def __repr__(self):
28 Lister.indent += 1 29 result = (' < Instance of %s, id %s:\n%s' % (self.__class__.__name__, 30 id(self),self.attrnames())) + '\t' * (Lister.indent - 1) + ' > ' 31 Lister.indent -= 1 32 return result
33