Every non-abstract class that extends DepsCreatable must specify a constructor that accepts deps as the first argument.
Subsequent arguments after deps are passed to the init function(s) later. (i.e. constructor(deps, ...args))
The class must thus specify either __init__ or __defer_init__ (Initializable) that takes ...args (deps is not passed)
If __init__ is provided, it will always be called with ...args before __defer_init__ is called.
Note that __defer_init__ is not called by Initializable. Said constructor must call super without that argument.
- Implements:
- See:
-
- classes.deps.Exporter
- interfaces.Interface
Classes
Methods
-
static __new__(…opts) → {interfaces.DepsCreatable|*}
-
Creates an instance, attaching dependencies as the first argument, followed by user specified arguments.
Parameters:
Name Type Attributes Description opts
* <repeatable>
Options passed to the constructor. - See:
-
- interfaces.IDCreatable.create
- interfaces.IDNameCreatable.create
-
static create()
-
Aliased "public API" object creation method for
interfaces.DepsCreatable.create
.