@staticmethod<EOL><INDENT>def _try_convert_value(conversion_finder, attr_name: str, attr_value: S, desired_attr_type: Type[T], logger: Logger,<EOL>options: Dict[str, Dict[str, Any]]) -> T:<DEDENT>
<EOL>if is_typed_collection(desired_attr_type):<EOL><INDENT>return ConversionFinder.convert_collection_values_according_to_pep(coll_to_convert=attr_value,<EOL>desired_type=desired_attr_type,<EOL>conversion_finder=conversion_finder,<EOL>logger=logger,<EOL>**options)<EOL><DEDENT>elif not robust_isinstance(attr_value, desired_attr_type):<EOL><INDENT>if conversion_finder is not None:<EOL><INDENT>return conversion_finder.find_and_convert(attr_name,<EOL>attr_value,<EOL>desired_attr_type,<EOL>logger, options)<EOL><DEDENT>else:<EOL><INDENT>raise NoConverterFoundForObjectType.create(conversion_finder,<EOL>attr_value,<EOL>desired_attr_type)<EOL><DEDENT><DEDENT>else:<EOL><INDENT>return attr_value<EOL><DEDENT>
Utility method to try to use provided conversion_finder to convert attr_value into desired_attr_type.
If no conversion is required, the conversion finder is not even used (it can be None)

:param conversion_finder:
:param attr_name:
:param attr_value:
:param desired_attr_type:
:param logger:
:param options:
:return: