public abstract class ReduciblePositiveAritySPARQLFunctionSymbolImpl extends SPARQLFunctionSymbolImpl
FunctionSymbol.FunctionalTermNullability| Modifier | Constructor and Description |
|---|---|
protected |
ReduciblePositiveAritySPARQLFunctionSymbolImpl(String functionSymbolName,
org.apache.commons.rdf.api.IRI functionIRI,
com.google.common.collect.ImmutableList<TermType> expectedBaseTypes) |
protected |
ReduciblePositiveAritySPARQLFunctionSymbolImpl(String functionSymbolName,
String officialName,
com.google.common.collect.ImmutableList<TermType> expectedBaseTypes) |
| Modifier and Type | Method and Description |
|---|---|
protected ImmutableTerm |
buildTermAfterEvaluation(com.google.common.collect.ImmutableList<ImmutableTerm> newTerms,
TermFactory termFactory,
VariableNullability variableNullability)
By default, just build a new functional term.
|
protected abstract ImmutableTerm |
computeLexicalTerm(com.google.common.collect.ImmutableList<ImmutableTerm> subLexicalTerms,
com.google.common.collect.ImmutableList<ImmutableTerm> typeTerms,
TermFactory termFactory,
ImmutableTerm returnedTypeTerm)
Compute the lexical term when there is no input type error
|
protected abstract ImmutableTerm |
computeTypeTerm(com.google.common.collect.ImmutableList<? extends ImmutableTerm> subLexicalTerms,
com.google.common.collect.ImmutableList<ImmutableTerm> typeTerms,
TermFactory termFactory,
VariableNullability variableNullability) |
protected ImmutableExpression.Evaluation |
evaluateInputTypeError(com.google.common.collect.ImmutableList<ImmutableTerm> subLexicalTerms,
com.google.common.collect.ImmutableList<ImmutableTerm> typeTerms,
TermFactory termFactory,
VariableNullability variableNullability)
MUST detect ALL the cases where the SPARQL function would produce an error (that is a NULL)
---> the resulting condition must determine if the output of the SPARQL function is NULL (evaluates to FALSE or NULL)
or not (evaluates to TRUE).
|
protected boolean |
tolerateNulls()
By default, does not tolerate receiving NULLs (SPARQL errors) as input
|
getIRI, getOfficialNameextractLexicalTerm, extractRDFTermTypeTerm, isRDFFunctionalTerm, mayReturnNullWithoutNullArgumentsanalyzeInjectivity, canBeSafelyDecomposedIntoConjunction, decomposeInjectiveTopFunctionalTerm, enableIfElseNullLifting, evaluateIsNotNull, evaluateNullability, evaluateStrictEq, evaluateStrictEqWithFunctionalTerm, evaluateStrictEqWithNonNullConstant, getExpectedBaseType, getExpectedBaseTypes, isAggregation, isAlwaysInjectiveInTheAbsenceOfNonInjectiveFunctionalTerms, isDeterministic, isInjective, isNullable, proposeProvenanceVariables, simplify, simplifyAsGuaranteedToBeNonNull, transformIntoRegularArguments, tryToLiftMagicNumbersequals, getArity, getName, hashCode, toStringclone, finalize, getClass, notify, notifyAll, wait, wait, waitanalyzeInjectivity, canBePostProcessed, evaluateIsNotNull, evaluateNullability, evaluateStrictEq, getExpectedBaseType, inferType, isAggregation, isDeterministic, isNullable, proposeProvenanceVariables, simplify, simplifyAsGuaranteedToBeNonNullprotected ReduciblePositiveAritySPARQLFunctionSymbolImpl(@Nonnull String functionSymbolName, @Nonnull org.apache.commons.rdf.api.IRI functionIRI, @Nonnull com.google.common.collect.ImmutableList<TermType> expectedBaseTypes)
protected final ImmutableTerm buildTermAfterEvaluation(com.google.common.collect.ImmutableList<ImmutableTerm> newTerms, TermFactory termFactory, VariableNullability variableNullability)
FunctionSymbolImplbuildTermAfterEvaluation in class FunctionSymbolImplprotected boolean tolerateNulls()
tolerateNulls in class FunctionSymbolImplprotected ImmutableExpression.Evaluation evaluateInputTypeError(com.google.common.collect.ImmutableList<ImmutableTerm> subLexicalTerms, com.google.common.collect.ImmutableList<ImmutableTerm> typeTerms, TermFactory termFactory, VariableNullability variableNullability)
protected abstract ImmutableTerm computeLexicalTerm(com.google.common.collect.ImmutableList<ImmutableTerm> subLexicalTerms, com.google.common.collect.ImmutableList<ImmutableTerm> typeTerms, TermFactory termFactory, ImmutableTerm returnedTypeTerm)
protected abstract ImmutableTerm computeTypeTerm(com.google.common.collect.ImmutableList<? extends ImmutableTerm> subLexicalTerms, com.google.common.collect.ImmutableList<ImmutableTerm> typeTerms, TermFactory termFactory, VariableNullability variableNullability)
Copyright © 2009–2020 Free University of Bozen-Bolzano. All rights reserved.