public abstract class AggregateBase<E> extends ImmutableBOp implements IAggregate<E>
|Modifier and Type||Class and Description|
|Modifier and Type||Field and Description|
An empty string.
|Constructor and Description|
Core shallow copy constructor.
|Modifier and Type||Method and Description|
Return the current value of the aggregate (this has a side-effect on the internal state of the
__replaceArg, _set, annotations, annotationsCopy, annotationsEqual, annotationsRef, argIterator, args, argsCopy, arity, clearAnnotations, clearProperty, deepCopy, deepCopy, get, getProperty, setArg, setProperty, setUnboundProperty, toArray, toArray
annotationsEqual, annotationsToString, annotationsToString, annotationValueToString, checkArgs, clone, equals, getEvaluationContext, getId, getProperty, getRequiredProperty, hashCode, indent, isController, mutation, shortenName, toShortString, toString, toString
finalize, getClass, notify, notifyAll, wait, wait, wait
annotations, argIterator, args, arity, clone, get, getEvaluationContext, getId, getProperty, getRequiredProperty, isController, setProperty, toArray, toArray, toShortString, toString
protected static final transient NumericIV ZERO
protected static final transient org.openrdf.model.Literal EMPTY_LITERAL
AggregateBase.Annotations.DISTINCT. The expr is modeled as the first argument for the aggregate function.
public AggregateBase(boolean distinct, IValueExpression<E>... expr)
trueiff the keyword DISTINCT was used, for example
expr- The value expression to be computed, for example
MIN(x+y). Note that only COUNT may be used with the special variable
public final boolean isDistinct()
trueif the aggregate is to be applied to the distinct solutions within the group. E.g.,
public boolean isWildcard()
IValueExpressionis the special variable
*(but note that this is only allowed for COUNT).
public E get(IBindingSet bset)
IAggregateoperator). Functions which can not produce an intermediate result, such as AVERAGE, MAY return
Note: If evaluation of the
IAggregate throws an error, then that
error must be "sticky" and reported out by
IAggregate.done() as well. This
contract is relied on to correctly propagate errors within a group when
using incremental (pipelined) evaluation of
error state is cleared by
Operation is not implemented by this class and must be overridden if the
AggregateBase is to be directly evaluated. However, note that the
computation of aggregate functions is often based on hard coded
recognition of the appropriate function code.
Note: DISTINCT is merely carried as a marker on COUNT (and the other
aggregate functions). The application of DISTINCT to the inner expression
to form a column projection is handled by the driving evaluation logic
rather than by
Copyright © 2006–2019 SYSTAP, LLC DBA Blazegraph. All rights reserved.