Introduce is_bound_method

This commit is contained in:
Dave Halter
2019-05-22 10:19:47 +02:00
parent d241c31e3c
commit a2931d7a48
2 changed files with 9 additions and 0 deletions

View File

@@ -164,6 +164,9 @@ class Context(HelperContextMixin, BaseContext):
def is_compiled(self):
return False
def is_bound_method(self):
return False
def py__bool__(self):
"""
Since Wrapper is a super class for classes, functions and modules,

View File

@@ -369,6 +369,9 @@ class BoundMethod(FunctionMixin, ContextWrapper):
super(BoundMethod, self).__init__(function)
self.instance = instance
def is_bound_method(self):
return True
def py__class__(self):
c, = contexts_from_qualified_names(self.evaluator, u'types', u'MethodType')
return c
@@ -411,6 +414,9 @@ class CompiledBoundMethod(compiled.CompiledObject):
super(CompiledBoundMethod, self).__init__(
func.evaluator, func.access_handle, func.parent_context)
def is_bound_method(self):
return True
def get_param_names(self):
return list(super(CompiledBoundMethod, self).get_param_names())[1:]