start and stop have no defaults on purpose: an explicit undefined
stays cleared, so the user sees the message rather than silently getting
the default (spec §7.9). A new node gets DEFAULT_START and
DEFAULT_STOP from its definition's create.
Optionalrest: JsonObjectReadonlyidUnique within the query and shown to users, e.g. filter101
ReadonlykeyAssigned at construction from a monotonic sequence: the node's identity for change detection
ReadonlyrestThe keys of the node's saved JSON that this version does not know, kept so a re-save writes them back (PLAN §10.3); edits keep them too
ReadonlystartThe first row kept, from 0; undefined once the user clears it, which is invalid
ReadonlystopThe first row not kept; undefined once the user clears it, which is invalid
Static ReadonlyDEFAULT_The range of a new Slice
Whether edits may change which nodes feed this one. Not for a node whose port semantics are unknown, such as an Unknown node.
It takes rows by its input's order, so the emitter sorts its input first
Labels for the input ports, shown on the edges that feed them
The named input slots, in order: none for a source, one for a unary transform, two for a binary one
The type discriminator, e.g. filter
A one-line description for the canvas and the details panel
The description without the values users typed, which may be sensitive, for logs and telemetry. By default the description, which has none.
Whether the node has none of the settings it needs yet, e.g. a Join with no key pair: the canvas shows it as not set, not by its description
Each bound must be a whole number of at least 0, checked apart so both can be reported; then the start must come before the stop. The engine would plan a negative fetch otherwise.
Optionalerrors: string[]A new slice with the same id, and this range
The node to keep once its two inputs swap ports: by default this node. A node whose settings name its inputs by side, such as a Join's key columns, returns a new node (same id) with those settings swapped too.
Keeps the rows of its input from position
startup to, but not including, positionstop, counting from 0: the range[start, stop)(D5). The columns stay as they are.