@@ -659,11 +659,15 @@ def visit_Call(self, node, side=None, **kwargs):
659
659
raise ValueError (f"Invalid function call { node .func .id } " )
660
660
if hasattr (res , "value" ):
661
661
res = res .value
662
-
663
- if isinstance (res , FuncNode ):
664
-
665
- new_args = [self .visit (arg ) for arg in node .args ]
666
-
662
+ print (type (res ))
663
+ if isinstance (res , FuncNode ) or isinstance (res , np .ufunc ):
664
+ # new_args = [self.visit(arg) for arg in node.args]
665
+ new_args = []
666
+ for arg in node .args :
667
+ temp_visit = self .visit (arg )
668
+ if hasattr (temp_visit , "value" ):
669
+ temp_visit = temp_visit .value
670
+ new_args .append (temp_visit )
667
671
if node .keywords :
668
672
raise TypeError (
669
673
f'Function "{ res .name } " does not support keyword arguments'
@@ -672,9 +676,20 @@ def visit_Call(self, node, side=None, **kwargs):
672
676
return res (* new_args )
673
677
674
678
else :
675
-
679
+ import logging , sys
680
+ logging .basicConfig (stream = sys .stderr , level = logging .DEBUG )
681
+ logging .debug (str (self .visit (arg ).value for arg in node .args ))
682
+ logging .debug (ast .dump (node ))
683
+ # for arg in node.args:
684
+ # logging.debug("this is the next arg")
685
+ # logging.debug(arg)
686
+ # logging.debug(self.visit(arg).value)
687
+ print ([self .visit (arg ) for arg in node .args ])
688
+
689
+ print ([self .visit (arg ).value for arg in node .args ])
676
690
new_args = [self .visit (arg ).value for arg in node .args ]
677
-
691
+ # import copy
692
+ # new_args = copy.deepcopy(node.args)
678
693
for key in node .keywords :
679
694
if not isinstance (key , ast .keyword ):
680
695
raise ValueError (f"keyword error in function call '{ node .func .id } '" )
0 commit comments