A collection of Overload‘s that can process calls.
Tool for overloading operations.
Has an ordered collection of overloads which serve as rules, the operation of the matching overload is called. If none match, an assertion error is raised.
Construct an Overloader.
Parameters:
- overloads :: (Overload...)
- a collection of rules indicating which operation to call for which combination of arguments/parameters. Note: the order can effect which overload is matched as the first matching overload is used. Must specify at least one overload.
- add_self :: bool = True
- if True, a “self” parameter is inserted at the beginning of the parameter list of each overload
Process given args and keyword args.
Return the callable that would be called and the args it’d receive.
Parameters: |
|
---|---|
Returns: | (processed_args, callable). |
Return type: | ({string: object}, callable) |
Process a call with given args and keyword args.
The matching overload is called.
Parameters: |
|
---|---|
Returns: | the return value of the called operation |
list of weak references to the object (if defined)