SubClass Class

class kwhelp.decorator.SubClass(*args: Union[type, Iterable[type]], **kwargs)[source]

Decorator that requires args of a function to match or be a subclass of types specificed in constructor.

See also

SubClass Usage

__init__(*args: Union[type, Iterable[type]], **kwargs)[source]

Constructor

Parameters

args (Union[type, Iterable[type]]) – One or more types or Iterator[type] for validation.

Keyword Arguments
  • type_instance_check (bool, optional) – If True then args are tested also for isinstance() if type does not match, rather then just type check. If False then values willl only be tested as type. Default True

  • ftype (DecFuncType, optional) – Type of function that decorator is applied on. Default DecFuncType.FUNCTION

  • opt_return (object, optional) – Return value when decorator is invalid. By default an error is rasied when validation fails. If opt_return is supplied then it will be return when validation fails and no error will be raised.

  • opt_inst_only (bool, optional) – If True then validation will requires all values being tested to be an instance of a class. If False valadition will test class instance and class type. Default True

  • opt_all_args (bool, optional) – If True then the last subclass type passed into constructor will define any remaining args. This allows for one subclass to define required match of all arguments that decorator is applied to. Default False

  • opt_args_filter (DecArgEnum, optional) – Filters the arguments that are validated. Default DecArgEnum.ALL.

  • opt_logger (Union[Logger, LoggerAdapter], optional) – Logger that logs exceptions when validation fails.