@@ -135,23 +135,29 @@ def has_creator(geode_object: str, extension: str):
135135 return input_factory (geode_object ).has_creator (extension )
136136
137137
138- def list_geode_objects (extension : str , key : str = None ):
139- geode_objects_list = []
140- for geode_object , value in geode_objects_dict ().items ():
141- if key != None :
142- if key in value :
143- if type (value [key ]) == bool :
144- if value [key ] == True :
145- if has_creator (geode_object , extension ):
146- geode_objects_list .append (geode_object )
147- elif has_creator (geode_object , extension ):
148- geode_objects_list .append (geode_object )
149- else :
150- if has_creator (geode_object , extension ):
151- geode_objects_list .append (geode_object )
138+ def list_geode_objects (
139+ file_absolute_path : str ,
140+ key : str = None ,
141+ ):
142+ return_dict = {}
143+ file_extension = extension_from_filename (os .path .basename (file_absolute_path ))
152144
153- geode_objects_list .sort ()
154- return geode_objects_list
145+ for geode_object , value in geode_objects_dict ().items ():
146+ if has_creator (geode_object , file_extension ):
147+ file_is_loadable = is_loadable (geode_object , file_absolute_path )
148+ if key != None :
149+ if key in value :
150+ if type (value [key ]) == bool :
151+ if value [key ] == True :
152+ return_dict [geode_object ] = {
153+ "is_loadable" : file_is_loadable
154+ }
155+ else :
156+ return_dict [geode_object ] = {"is_loadable" : file_is_loadable }
157+ else :
158+ return_dict [geode_object ] = {"is_loadable" : file_is_loadable }
159+
160+ return return_dict
155161
156162
157163def geode_objects_output_extensions (geode_object : str , data ):
0 commit comments