Uses the given row to store the output of the projection.
Initializes internal states given the current partition index.
Initializes internal states given the current partition index. This is used by nondeterministic expressions to set initial states. The default implementation does nothing.
Converts a InternalRow to another Row given a sequence of expression that define each column of the new row. If the schema of the input row is specified, then the given expression will be bound to that schema.
In contrast to a normal projection, a MutableProjection reuses the same underlying row object each time an input row is added. This significantly reduces the cost of calculating the projection, but means that it is not safe to hold on to a reference to a InternalRow after
next()
has been called on the Iterator that produced it. Instead, the user must callInternalRow.copy()
and hold on to the returned InternalRow before callingnext()
.