def callalyze(self, _, args): assert len(args) == 1 p = Poss() for fun in args[0].analyze(self.mycontext.nest()): p.extend(fun.analyze(self.mycontext.nest())) return p
def analyze(self, context): p = Poss() for mycon in self.mycontext.analyze(context.nest()): assert mycon.__class__ == Context, 'class was %s' % mycon.__class__.__name__ mycon.parent = context p.extend(mycon[self.name]) return p
def analyze(self, context): p = Poss() for obj in self.obj.analyze(context.nest()): for fun in obj[self.member].analyze(context.nest()): if fun.strict: aargs = [arg.analyze(context.nest()) for arg in self.args] else: aargs = self.args p.extend(fun.callalyze(context.nest(), aargs)) return p