MemoryExtractor implements BatchableExtractor, Extractor, InfersSchema, RewindableExtractor uses Batches
FinalYes
Interfaces
- BatchableExtractor
- A source that decides how many rows it puts in one Rows. withBatchSize() bounds what the source BUILDS; batches() re-slices what a source already emitted and cannot lower its peak.
- Extractor
- InfersSchema
- RewindableExtractor
- A rewindable extractor can be read more than once and yield the same rows each time, so a build-time pass may scan it before extraction without consuming it.
Methods
- __construct() : mixed
- batchSize() : int<1, max>
- extract() : Generator<Signal|null, void>
- Yields rows in batches. When the source is a BatchableExtractor a batch holds between 0 and that extractor's own batchSize() rows; the size is chosen by the extractor and MAY vary between batches. Consumers must not assume a minimum size, a constant size, or a non-empty batch.
- inferSchema() : static
- isRepeatable() : bool
- schema() : Schema
- Answers before extract() runs, so every batch it yields carries this shape. Takes no FlowContext: a source that needs the pipeline's context to describe itself has not moved the answer to bind time.
- withBatchSize() : static
- withSchema() : static
- Declares the shape every yielded batch must carry. A source that describes itself uses this instead of its own description, and values are cast to fit.
Methods
__construct()
public
__construct(Memory $memory) : mixed
Parameters
- $memory : Memory
batchSize()
public
batchSize() : int<1, max>
Return values
int<1, max>extract()
Yields rows in batches. When the source is a BatchableExtractor a batch holds between 0 and that extractor's own batchSize() rows; the size is chosen by the extractor and MAY vary between batches. Consumers must not assume a minimum size, a constant size, or a non-empty batch.
public
extract(FlowContext $context) : Generator<Signal|null, void>
Parameters
- $context : FlowContext
Return values
Generator<Signal|null, void>inferSchema()
public
inferSchema(SchemaInferenceBuilder $builder) : static
Parameters
- $builder : SchemaInferenceBuilder
Return values
staticisRepeatable()
public
isRepeatable() : bool
Return values
boolschema()
Answers before extract() runs, so every batch it yields carries this shape. Takes no FlowContext: a source that needs the pipeline's context to describe itself has not moved the answer to bind time.
public
schema() : Schema
Return values
SchemawithBatchSize()
public
withBatchSize(int $batchSize) : static
Parameters
- $batchSize : int
Return values
staticwithSchema()
Declares the shape every yielded batch must carry. A source that describes itself uses this instead of its own description, and values are cast to fit.
public
withSchema(Schema $schema) : static
Parameters
- $schema : Schema