Source Op

exception dffml.source.op.EmptyError[source]

Raised when the source is still empty after running the opimp

exception dffml.source.op.NotEnoughArgs[source]

Raised when the source was not given an arg for each operation input

exception dffml.source.op.OnlyOneOutputAllowedError[source]

Raised when the opimp given has more than one output

class dffml.source.op.OpSource(config: Optional[MemorySourceConfig])[source]
CONFIG

alias of OpSourceConfig

CONTEXT

alias of MemorySourceContext

class dffml.source.op.OpSourceConfig(opimp: dffml.df.base.OperationImplementation, args: List[str] = <factory>, allowempty: bool = False)[source]
no_enforce_immutable()

By default, all properties of a config object are immutable. If you would like to mutate immutable properties, you must explicitly call this method using it as a context manager.

Examples

>>> from dffml import config
>>>
>>> @config
... class MyConfig:
...     C: int
>>>
>>> config = MyConfig(C=2)
>>> with config.no_enforce_immutable():
...     config.C = 1