equal
deleted
inserted
replaced
256 class autoextend(type): |
256 class autoextend(type): |
257 def __new__(mcs, name, bases, classdict): |
257 def __new__(mcs, name, bases, classdict): |
258 for attrname, attrvalue in classdict.items(): |
258 for attrname, attrvalue in classdict.items(): |
259 if callable(attrvalue): |
259 if callable(attrvalue): |
260 if attrname.startswith('generate_') and \ |
260 if attrname.startswith('generate_') and \ |
261 len(inspect.getargspec(attrvalue).args) < 2: |
261 len(inspect.getfullargspec(attrvalue).args) < 2: |
262 raise TypeError('generate_xxx must accept at least 1 argument') |
262 raise TypeError('generate_xxx must accept at least 1 argument') |
263 setattr(_ValueGenerator, attrname, attrvalue) |
263 setattr(_ValueGenerator, attrname, attrvalue) |
264 return type.__new__(mcs, name, bases, classdict) |
264 return type.__new__(mcs, name, bases, classdict) |
265 |
265 |
266 |
266 |