Hello.

__call__ and __getattr__ won't work. You see it in pypy source code,
because not all of pypy source code is RPython (in fact, Python is a
metaprogramming language for RPython). Same goes to **kw.

On Fri, Jul 23, 2010 at 6:49 AM, Hart's Antler <[email protected]> wrote:
> Looking through the pypy source code i see **kw, __call__ and __getattr__ are 
> used, but when i try to write my own rpython code that uses these 
> conventions, i get translation errors.  Do i need to borrow from "application 
> space" in order to do this or can i just give hints to the annotator?
> Thanks,
> -brett
>
>
>
> #this is allowed
> def func(*args): print(args)
>
> #but this is not?
> def func(**kw): print(args)
> #error call pattern too complex
>
> #this class fails to translate, are we not allowed to define our own __call__ 
> and __getattr__ in rpython?
> class A(object):
>  __call__(*args): print(args)
>  __getattr__(self,name): print(name)
>
>
>
>
>
> _______________________________________________
> [email protected]
> http://codespeak.net/mailman/listinfo/pypy-dev
>
_______________________________________________
[email protected]
http://codespeak.net/mailman/listinfo/pypy-dev

Reply via email to