tube

pydantic model TubeNode[source]

A node that contains another tube within it.

Note

A nested tube may not return a scalar literal None from its return node, that is interpreted as a NoEvent, as the return value of process is None when no events are emitted.

Wrap None s in a dictionary return to disambiguate them.

i.e. rather than:

depends: node.value

use:

depends:
  - something: node.value

If you have a need for returning scalar None s from a nested tube, please raise an issue!

Config:
  • extra: str = allow

Fields:
field spec: NodeSpecification [Required]
field tube: Path | PathLike[str] | Annotated[str, FieldInfo(annotation=NoneType, required=True, metadata=[_PydanticGeneralMetadata(pattern='[\\w\\-\\/#]+')])] [Required]
classmethod get_signals(spec: NodeSpecification | None = None) dict[str, Signal][source]

Forward signals from the return node

classmethod get_slots(spec: NodeSpecification | None = None) dict[str, Slot][source]
deinit() None[source]
init(context: RunnerContext) None[source]
model_post_init(_Node__context: Any) None

See docstring of process() for description of post init wrapping of generators

process(epoch: Epoch, **kwargs: Any) Any[source]
property tube_spec: TubeSpecification