def __init__(self, from_type: Type[S], to_type: Type[T], conversion_method: ConversionMethod,<EOL>custom_name: str = None, is_able_to_convert_func: Callable[[bool, Type[S], Type[T]], bool] = None,<EOL>can_chain: bool = True, function_args: dict = None, unpack_options: bool = True,<EOL>option_hints: Callable[[], str] = None):
super(ConverterFunction, self).__init__(from_type, to_type, is_able_to_convert_func, can_chain)<EOL>check_var(conversion_method, var_types=Callable, var_name='<STR_LIT>')<EOL>self.conversion_method = conversion_method<EOL>check_var(custom_name, var_types=str, var_name='<STR_LIT>', enforce_not_none=False)<EOL>self.custom_name = custom_name<EOL>check_var(function_args, var_types=dict, var_name='<STR_LIT>', enforce_not_none=False)<EOL>self.function_args = function_args<EOL>check_var(unpack_options, var_types=bool, var_name='<STR_LIT>')<EOL>self.unpack_options = unpack_options<EOL>check_var(option_hints, var_types=Callable, var_name='<STR_LIT>', enforce_not_none=False)<EOL>self._option_hints_func = option_hints<EOL>
Constructor with a conversion method. All calls to self.convert() will be delegated to this method. An optional
name may be provided to override the provided conversion method's name. this might be useful for example if the
same function is used in several converters.

See Converter class for details on other arguments.

:param from_type: the source type
:param to_type: the destination type, or AnyObject (for generic converters)
:param conversion_method: the function the conversion step will be delegated to
:param custom_name: an optional custom name to override the provided function name. this might be useful for
example if the same function is used in several converters
:param is_able_to_convert_func: an optional function taking a desired object type as an input and outputting a
boolean. It will be called in 'is_able_to_convert'. This allows implementors to reject some conversions even if
they are compliant with their declared 'to_type'. Implementors should handle a 'None' value as a joker
:param can_chain: a boolean (default True) indicating if other converters can be appended at the end of this
converter to create a chain. Dont change this except if it really can never make sense.
:param function_args: kwargs that will be passed to the function at every call
:param unpack_options: if False, the full options dictionary will be passed to the conversion method, instead of
the unpacked options for this conversion function id only.
:param option_hints: an optional method returning a string containing the options descriptions