@util.decorator
def _generative(fn, *args, **kw):
 self = args[0]._generate()
 fn(self, *args[1:], **kw)
 return self

@ util . decorator def _generative ( fn , * args , ** kw ) : self = args [ 0 ] . _generate ( ) fn ( self , * args [ 1 : ] , ** kw ) return self
mark a method as generative .