Esempio n. 1
0
    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
Esempio n. 2
0
    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
Esempio n. 3
0
 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