Package io.substrait.relation
Class Expand
java.lang.Object
io.substrait.relation.AbstractRel
io.substrait.relation.SingleInputRel
io.substrait.relation.Expand
- All Implemented Interfaces:
Rel
- Direct Known Subclasses:
ImmutableExpand
Expands the input relation into a set of projected fields where each field is either consistent
or switches among duplicate expressions.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classA field whose value is defined by a single expression.static interfaceA field produced by the expand operation.static classA field that may switch among duplicate expressions; nullability propagates if any duplicate is nullable. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescription<O,C extends VisitationContext, E extends Exception>
Oaccept(RelVisitor<O, C, E> visitor, C context) Accepts a relation visitor.static ImmutableExpand.Builderbuilder()Creates a builder forExpand.Derives the output record type from the expand fields.abstract List<Expand.ExpandField>Returns the fields produced by the expand operation.Methods inherited from class io.substrait.relation.SingleInputRel
getInput, getInputsMethods inherited from class io.substrait.relation.AbstractRel
getRecordTypeMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface io.substrait.relation.Rel
getCommonExtension, getHint, getRemap
-
Constructor Details
-
Expand
public Expand()
-
-
Method Details
-
getFields
Returns the fields produced by the expand operation.- Returns:
- the list of expand fields
-
deriveRecordType
Derives the output record type from the expand fields.- Specified by:
deriveRecordTypein classAbstractRel- Returns:
- the resulting struct type
-
accept
public <O,C extends VisitationContext, O acceptE extends Exception> (RelVisitor<O, C, throws EE> visitor, C context) Accepts a relation visitor.- Type Parameters:
O- the result typeC- the visitation context typeE- the exception type that may be thrown- Parameters:
visitor- the relation visitorcontext- the visitation context- Returns:
- the visit result
- Throws:
E- if the visitor signals an error
-
builder
Creates a builder forExpand.- Returns:
- a new immutable builder
-