Skip to content

__call__ method cannot be defined for objects #54

@GoogleCodeExporter

Description

@GoogleCodeExporter
What steps will reproduce the problem?

1. Create a class with a __call__(self) method
2. Instantiate it
3. Attempt to call the instance

class Test:
    def __call__(self):
        print("hello world")

instance = Test()
instance()

What is the expected output? What do you see instead?

This code is expected to print "hello world", but it produces nothing. If you 
were to add the line instance2 = instance() and then query the value of 
instance2, you would see that instance2 is another Test object. Tinypy is not 
calling the __call__ method of the instance, but actually calling the __call__ 
method of the CLASS, ( i.e. Test() )

Original issue reported on code.google.com by RCopperw...@gmail.com on 16 Dec 2012 at 10:55

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions