Package net.hydromatic.morel.eval
Class Codes.YieldRowSink
- java.lang.Object
-
- net.hydromatic.morel.eval.Codes.YieldRowSink
-
- All Implemented Interfaces:
Codes.RowSink,Describable
- Enclosing class:
- Codes
private static class Codes.YieldRowSink extends Object implements Codes.RowSink
Implementation ofCodes.RowSinkfor ayieldstep.If this is the last step, use instead a
Codes.CollectRowSink. It is more efficient; there is no downstream row sink; and a terminal yield step is allowed to generate expressions that are not records. Non-record expressions (e.g.intexpressions) do not have a name, and therefore the value cannot be passed via theEvalEnv.
-
-
Constructor Summary
Constructors Constructor Description YieldRowSink(com.google.common.collect.ImmutableList<String> names, com.google.common.collect.ImmutableList<Code> codes, Codes.RowSink rowSink)
-
-
-
Field Detail
-
names
private final com.google.common.collect.ImmutableList<String> names
-
codes
private final com.google.common.collect.ImmutableList<Code> codes
-
rowSink
private final Codes.RowSink rowSink
-
values
private final Object[] values
-
-
Constructor Detail
-
YieldRowSink
YieldRowSink(com.google.common.collect.ImmutableList<String> names, com.google.common.collect.ImmutableList<Code> codes, Codes.RowSink rowSink)
-
-
Method Detail
-
describe
public Describer describe(Describer describer)
- Specified by:
describein interfaceDescribable
-
accept
public void accept(EvalEnv env)
- Specified by:
acceptin interfaceCodes.RowSink
-
result
public List<Object> result(EvalEnv env)
- Specified by:
resultin interfaceCodes.RowSink
-
-