@staticmethod<EOL><INDENT>def are_worth_chaining(parser, to_type: Type[S], converter: Converter[S, T]) -> bool:<DEDENT>
if not parser.can_chain:<EOL><INDENT>return False<EOL><DEDENT>elif not is_any_type(to_type) and is_any_type(converter.to_type):<EOL><INDENT>return True<EOL><DEDENT>elif issubclass(to_type, converter.to_type):<EOL><INDENT>return False<EOL><DEDENT>else:<EOL><INDENT>return True<EOL><DEDENT>
Utility method to check if it makes sense to chain this parser with the given destination type, and the given
converter to create a parsing chain. Returns True if it brings value to chain them.

To bring value,
* the converter's output should not be a parent class of the parser's output. Otherwise
the chain does not even make any progress :)
* The parser has to allow chaining (with converter.can_chain=True)

:param parser:
:param to_type:
:param converter:
:return: