@@ -97,7 +97,8 @@ def __str__(self):
9797@autoclass
9898class Goodie :
9999 def __init__ (self , item_name : str , function_name : Optional [str ] = None ,
100- constant_name : Optional [str ] = None , class_name : Optional [str ] = None ):
100+ constant_name : Optional [str ] = None , class_name : Optional [str ] = None ,
101+ import_line : Optional [str ] = None ):
101102 pass
102103
103104 def __str__ (self ):
@@ -396,19 +397,23 @@ def define_goodies() -> Tuple[List[str], List[Goodie]]:
396397 import_string = "from " + package .__name__ + " import"
397398 for item_name , item in getmembers (package ):
398399 if not item_name .startswith ('_' ):
399- import_string += ' ' + item_name + ','
400+ # import_string += ' ' + item_name + ','
400401 if isclass (item ):
401402 new_class_name = item_name [0 ].upper () + item_name
402- goodies_list .append (Goodie (item_name = new_class_name , class_name = item_name ))
403+ goodies_list .append (Goodie (item_name = new_class_name , class_name = item_name ,
404+ import_line = import_string + ' ' + item_name ))
403405 elif callable (item ):
404- goodies_list .append (Goodie (item_name = item_name .capitalize (), function_name = item_name ))
406+ goodies_list .append (Goodie (item_name = item_name .capitalize (), function_name = item_name ,
407+ import_line = import_string + ' ' + item_name ))
405408 else :
406409 new_item_name = item_name .capitalize ()
407410 if new_item_name == item_name :
408411 new_item_name = new_item_name [0 ] + new_item_name
409- goodies_list .append (Goodie (item_name = new_item_name , constant_name = item_name ))
412+ goodies_list .append (Goodie (item_name = new_item_name , constant_name = item_name ,
413+ import_line = import_string + ' ' + item_name ))
410414
411- import_list .append (import_string [0 :- 1 ])
415+ # we do not import anymore at the top but in each one so as to put additional try/catch around them
416+ # import_list.append(import_string[0:-1])
412417
413418 for function_name in built_in_functions :
414419 goodies_list .append (Goodie (item_name = function_name .capitalize (), function_name = function_name ))
0 commit comments