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

Source Code for Module SimPy.Lister

 1  #!/usr/bin/env python 
 2  # $Revision: 1.1.1.12 $ $Date: 2007/01/08 14:43:56 $ kgm 
 3  """Lister 1.8 
 4  Pretty-printer for SimPy class objects 
 5  """ 
 6  __version__ = '1.8 $Revision: 1.1.1.12 $ $Date: 2007/01/08 14:43:56 $' 
 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