Skip to content

Commit e478343

Browse files
committed
fixes
1 parent 416167a commit e478343

File tree

3 files changed

+4
-2
lines changed

3 files changed

+4
-2
lines changed

retic/runtime.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -109,7 +109,7 @@ def check_type_string(val):
109109
return val if isinstance(val, str) else rse()
110110

111111
def check_type_function(val):
112-
return val if callable(val) else rse()
112+
return val if callable(val) or isinstance(val, classmethod) else rse()
113113

114114
def check_type_list(val):
115115
return val if (isinstance(val, list)) else rse()

retic/typefinder.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -98,6 +98,8 @@ def visitFunctionDef(self, n, vty, aliases, misc):
9898
elif isinstance(dec, ast.Name) and dec.id == 'returns':
9999
separate = True
100100
septo = typeparse(dec.args[0], aliases)
101+
elif isinstance(dec, ast.Name) and dec.id == 'staticmethod':
102+
return {Var(n.name, n): Dyn}
101103
else: continue
102104

103105
if separate:

tests/func2.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,4 +4,4 @@ def o(a:Function([int], int)):
44
def p(x):
55
x(10)
66

7-
p(10)
7+
p(o)

0 commit comments

Comments
 (0)