Flow PHP

LogicalPlan

Read onlyYes
FinalYes

Properties

$root  : Node

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

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
bool

reads()

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
throws
InvalidLogicException

when the row-input chain does not end in a Read

Return values
Read

spine()

The node the first consumer reads: the chain a verb built, under the consumer the trigger put on top.

public spine() : Node
Tags
throws
InvalidLogicException

when that consumer is a Transaction, whose children are sibling writes, or when the root carries no consumer at all

Return values
Node

transformUp()

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
self

writes()

The write roots this plan's root carries, in the order they were attached.

public writes() : Writes
Return values
Writes

writesOnSpine()

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
Return values
Writes
On this page

Search results