LogicalPlan
Properties
Methods
- __construct() : mixed
- The one root, built by the Trigger that runs the plan.
- consumerInputs() : array<int, Node>
- The node each consumer reads - the root's consumers, each Write of a Transaction expanded, and the writes of every Outputs further down the spine. A consumer takes rows out of the plan, so a walk from it starts at its input.
- isRepeatable() : bool
- True when every source the plan reads, a joined frame's included, can be read again.
- reads() : array<int, Read>
- Every Read of the plan once, a joined frame's included.
- source() : Read
- This frame's own source: follow children()[0] to the leaf. Read is the only leaf kind a DataFrame can build, so the walk stops there and never descends into a join's right side.
- spine() : Node
- The node the first consumer reads: the chain a verb built, under the consumer the trigger put on top.
- transformUp() : self
- ONE memo for the whole DAG, so a prefix shared by several consumers is rewritten once. A join's right side is handed back as it is.
- writes() : Writes
- The write roots this plan's root carries, in the order they were attached.
- writesOnSpine() : Writes
- The root's writes, then the writes of every Outputs further down the chain - a frame this plan read keeps its own writes, and they read the rows that pass through it.
Properties
$root
public
Node
$root
Methods
__construct()
The one root, built by the Trigger that runs the plan.
public
__construct(Node $root) : mixed
Parameters
- $root : Node
consumerInputs()
The node each consumer reads - the root's consumers, each Write of a Transaction expanded, and the writes of every Outputs further down the spine. A consumer takes rows out of the plan, so a walk from it starts at its input.
public
consumerInputs() : array<int, Node>
Return values
array<int, Node>isRepeatable()
True when every source the plan reads, a joined frame's included, can be read again.
public
isRepeatable() : bool
Return values
boolreads()
Every Read of the plan once, a joined frame's included.
public
reads() : array<int, Read>
Return values
array<int, Read>source()
This frame's own source: follow children()[0] to the leaf. Read is the only leaf kind a DataFrame can build, so the walk stops there and never descends into a join's right side.
public
source() : Read
Tags
Return values
Readspine()
The node the first consumer reads: the chain a verb built, under the consumer the trigger put on top.
public
spine() : Node
Tags
Return values
NodetransformUp()
ONE memo for the whole DAG, so a prefix shared by several consumers is rewritten once. A join's right side is handed back as it is.
public
transformUp(Rewrite $rewrite) : self
Parameters
- $rewrite : Rewrite
Return values
selfwrites()
The write roots this plan's root carries, in the order they were attached.
public
writes() : Writes
Return values
WriteswritesOnSpine()
The root's writes, then the writes of every Outputs further down the chain - a frame this plan read keeps its own writes, and they read the rows that pass through it.
public
writesOnSpine() : Writes