@abstractmethod<EOL><INDENT>def build_parser_for_fileobject_and_desiredtype(self, obj_on_filesystem: PersistedObject, object_type: Type[T],<EOL>logger: Logger = None) -> Parser:<DEDENT>
pass<EOL>
Returns the most appropriate parser to use to parse object obj_on_filesystem as an object of type object_type

:param obj_on_filesystem: the filesystem object to parse
:param object_type: the type of object that the parser is expected to produce
:param logger:
:return: