Utilities/ClassBrowsers/ClbrBaseClasses.py

changeset 945
8cd4d08fa9f6
parent 791
9ec2ac20e54e
child 1227
c5db073a124f
equal deleted inserted replaced
944:1b59c4ba121e 945:8cd4d08fa9f6
4 # 4 #
5 5
6 """ 6 """
7 Module implementing base classes used by the various class browsers. 7 Module implementing base classes used by the various class browsers.
8 """ 8 """
9
9 10
10 class _ClbrBase(object): 11 class _ClbrBase(object):
11 """ 12 """
12 Class implementing the base of all class browser objects. 13 Class implementing the base of all class browser objects.
13 """ 14 """
22 """ 23 """
23 self.module = module 24 self.module = module
24 self.name = name 25 self.name = name
25 self.file = file 26 self.file = file
26 self.lineno = lineno 27 self.lineno = lineno
28
27 29
28 class ClbrBase(_ClbrBase): 30 class ClbrBase(_ClbrBase):
29 """ 31 """
30 Class implementing the base of all complex class browser objects. 32 Class implementing the base of all complex class browser objects.
31 """ 33 """
114 @param name name of the class 116 @param name name of the class
115 @param _class Class object to be added (Class) 117 @param _class Class object to be added (Class)
116 """ 118 """
117 self.classes[name] = _class 119 self.classes[name] = _class
118 120
121
119 class ClbrVisibilityMixinBase(object): 122 class ClbrVisibilityMixinBase(object):
120 """ 123 """
121 Class implementing the base class of all visibility mixins. 124 Class implementing the base class of all visibility mixins.
122 """ 125 """
123 def isPrivate(self): 126 def isPrivate(self):
160 """ 163 """
161 Public method to set the visibility to Public. 164 Public method to set the visibility to Public.
162 """ 165 """
163 self.visibility = 2 166 self.visibility = 2
164 167
168
165 class Attribute(_ClbrBase): 169 class Attribute(_ClbrBase):
166 """ 170 """
167 Class to represent an attribute. 171 Class to represent an attribute.
168 """ 172 """
169 def __init__(self, module, name, file, lineno): 173 def __init__(self, module, name, file, lineno):
174 @param name name of this class 178 @param name name of this class
175 @param file filename containing this attribute 179 @param file filename containing this attribute
176 @param lineno linenumber of the class definition 180 @param lineno linenumber of the class definition
177 """ 181 """
178 _ClbrBase.__init__(self, module, name, file, lineno) 182 _ClbrBase.__init__(self, module, name, file, lineno)
183
179 184
180 class Class(ClbrBase): 185 class Class(ClbrBase):
181 """ 186 """
182 Class to represent a class. 187 Class to represent a class.
183 """ 188 """
194 ClbrBase.__init__(self, module, name, file, lineno) 199 ClbrBase.__init__(self, module, name, file, lineno)
195 if super is None: 200 if super is None:
196 super = [] 201 super = []
197 self.super = super 202 self.super = super
198 203
204
199 class Module(ClbrBase): 205 class Module(ClbrBase):
200 """ 206 """
201 Class to represent a module. 207 Class to represent a module.
202 """ 208 """
203 def __init__(self, module, name, file, lineno): 209 def __init__(self, module, name, file, lineno):
209 @param file filename containing this module 215 @param file filename containing this module
210 @param lineno linenumber of the module definition 216 @param lineno linenumber of the module definition
211 """ 217 """
212 ClbrBase.__init__(self, module, name, file, lineno) 218 ClbrBase.__init__(self, module, name, file, lineno)
213 219
220
214 class Function(ClbrBase): 221 class Function(ClbrBase):
215 """ 222 """
216 Class to represent a function or method. 223 Class to represent a function or method.
217 """ 224 """
218 def __init__(self, module, name, file, lineno, signature = '', separator = ','): 225 def __init__(self, module, name, file, lineno, signature='', separator=','):
219 """ 226 """
220 Constructor 227 Constructor
221 228
222 @param module name of the module containing this function 229 @param module name of the module containing this function
223 @param name name of this function 230 @param name name of this function
226 @param signature parameterlist of the method 233 @param signature parameterlist of the method
227 @param separator string separating the parameters 234 @param separator string separating the parameters
228 """ 235 """
229 ClbrBase.__init__(self, module, name, file, lineno) 236 ClbrBase.__init__(self, module, name, file, lineno)
230 self.parameters = [e.strip() for e in signature.split(separator)] 237 self.parameters = [e.strip() for e in signature.split(separator)]
238
231 239
232 class Coding(ClbrBase): 240 class Coding(ClbrBase):
233 """ 241 """
234 Class to represent a source coding. 242 Class to represent a source coding.
235 """ 243 """

eric ide

mercurial