public class LexPredicate extends Predicate<BigdataValue>
lex(BigdataValue,IV)
predicate used for querying the LexiconRelation's TERMS
index.Predicate.AnnotationsDEFAULT_INITIAL_CAPACITY| Constructor and Description |
|---|
LexPredicate(BOp[] args,
Map<String,Object> anns)
Required shallow copy constructor.
|
LexPredicate(BOp[] args,
NV... anns)
Variable argument version of the shallow copy constructor.
|
LexPredicate(LexPredicate op)
Constructor required for
com.bigdata.bop.BOpUtility#deepCopy(FilterNode). |
| Modifier and Type | Method and Description |
|---|---|
LexPredicate |
asBound(IBindingSet bindingSet)
Strengthened return type.
|
LexPredicate |
clone()
Overridden to provide a fast path clone().
|
static LexPredicate |
forwardInstance(String relationName,
long timestamp,
IVariableOrConstant<BigdataValue> term,
IVariable<IV> var)
Simplified forward lookup ctor.
|
IVariableOrConstant<IV> |
iv()
Return the
IV at index position . |
static LexPredicate |
reverseInstance(String relationName,
long timestamp,
IVariable<BigdataValue> var,
IVariableOrConstant<IV> term)
Simplified reverse lookup ctor.
|
IVariableOrConstant<BigdataValue> |
term()
Return the
BigdataValue at index position
. |
_asBound, addAccessPathFilter, addIndexLocalFilter, asBound, asBound, checkArgs, clearAnnotations, get, get, getAccessPathExpander, getAccessPathFilter, getIndexLocalFilter, getKeyOrder, getOnlyRelationName, getPartitionId, getRelationCount, getRelationName, getTimestamp, getVariableCount, getVariableCount, isFullyBound, isOptional, isRemoteAccessPath, range, setArg, setBOpId, setPartitionId, setRelationName, setTimestamp, toString, toString__replaceArg, _clearProperty, _set, _setProperty, annotations, annotationsCopy, annotationsEqual, annotationsRef, argIterator, args, argsCopy, arity, clearProperty, deepCopy, deepCopy, getProperty, setArg, setProperty, setUnboundProperty, toArray, toArrayannotationsEqual, annotationsToString, annotationsToString, annotationValueToString, equals, getEvaluationContext, getId, getProperty, getRequiredProperty, hashCode, indent, isController, mutation, shortenName, toShortString, toStringfinalize, getClass, hashCode, notify, notifyAll, wait, wait, waitequals, hashCodeannotations, argIterator, args, arity, getEvaluationContext, getId, getProperty, getRequiredProperty, isController, setProperty, toArray, toArray, toShortString, toStringgetPropertypublic LexPredicate(BOp[] args, NV... anns)
public LexPredicate(BOp[] args, Map<String,Object> anns)
public LexPredicate(LexPredicate op)
com.bigdata.bop.BOpUtility#deepCopy(FilterNode).public static LexPredicate forwardInstance(String relationName, long timestamp, IVariableOrConstant<BigdataValue> term, IVariable<IV> var)
IV
from a BigdataValue.relationName - the namespace of the lexicon relationtimestamp - The timestamp of the view to read on. This should be the same
as the timestamp associated with the view of the triple store
except for a full read/write transaction. Since all writes on
the lexicon are unisolated, a full read/write transaction must
use the ITx.UNISOLATED view of the lexicon in order to
ensure that any writes it performs will be visible.var - The variable on which the IV will be bound when we
read on the access path.term - the term to resolve using forward lookup (term2id)public static LexPredicate reverseInstance(String relationName, long timestamp, IVariable<BigdataValue> var, IVariableOrConstant<IV> term)
BigdataValue from an IV.relationName - the namespace of the lexicon relationtimestamp - The timestamp of the view to read on. This should be the same
as the timestamp associated with the view of the triple store
except for a full read/write transaction. Since all writes on
the lexicon are unisolated, a full read/write transaction must
use the ITx.UNISOLATED view of the lexicon in order to
ensure that any writes it performs will be visible.var - The
variable on which the Value will be bound when we read
on the access path.term - the term to resolve using reverse lookup (id2term)public LexPredicate clone()
PredicatePredicate
instance. However, subclasses MUST override this method. This change was
introduced on 11/17/2011 when a profiler showed a 13% of all time related
to a join intensive process in CoreBaseBOp.clone() using
reflection to make a copy of an Predicate.asBound(IBindingSet) predicate.clone in interface BOpclone in class Predicate<BigdataValue>public final IVariableOrConstant<BigdataValue> term()
BigdataValue at index position
.public final IVariableOrConstant<IV> iv()
IV at index position .public LexPredicate asBound(IBindingSet bindingSet)
Fast path for as-bound.
This reuses the annotations map since we know that the annotations will
not be changed by Predicate.asBound(IBindingSet). That provides a
significant reduction in heap churn.
asBound in interface IPredicate<BigdataValue>asBound in class Predicate<BigdataValue>bindingSet - The binding set.IPredicate -or- null if the
IPredicate can not be unified with the
IBindingSet.(RDR query does too much work)Copyright © 2006–2019 SYSTAP, LLC DBA Blazegraph. All rights reserved.