com.bigdata.rdf.internal.constraints
Class DateBOp

java.lang.Object
  extended by com.bigdata.bop.CoreBaseBOp
      extended by com.bigdata.bop.BOpBase
          extended by com.bigdata.rdf.internal.constraints.IVValueExpression<IV>
              extended by com.bigdata.rdf.internal.constraints.DateBOp
All Implemented Interfaces:
BOp, IValueExpression<IV>, INeedsMaterialization, IPropertySet, Serializable, Cloneable

public class DateBOp
extends IVValueExpression<IV>
implements INeedsMaterialization

A date expression involving a left IValueExpression operand. The operation to be applied to the operands is specified by the DateBOp.Annotations.OP annotation.

See Also:
Serialized Form

Nested Class Summary
static interface DateBOp.Annotations
           
static class DateBOp.DateOp
           
 
Nested classes/interfaces inherited from interface com.bigdata.rdf.internal.constraints.INeedsMaterialization
INeedsMaterialization.Requirement
 
Field Summary
 
Fields inherited from class com.bigdata.bop.CoreBaseBOp
DEFAULT_INITIAL_CAPACITY
 
Fields inherited from interface com.bigdata.bop.BOp
NOANNS, NOARGS
 
Constructor Summary
DateBOp(BOp[] args, Map<String,Object> anns)
          Required shallow copy constructor.
DateBOp(DateBOp op)
          Required deep copy constructor.
DateBOp(IValueExpression<? extends IV> left, DateBOp.DateOp op)
           
 
Method Summary
protected  boolean areGlobalsRequired()
          Returns true unless overridden, meaning the GlobalAnnotations are required for this value expression (certain boolean value expressions do not require them).
 IV get(IBindingSet bs)
          Return the as bound value of the variable, constant, or expression.
 INeedsMaterialization.Requirement getRequirement()
          Does the bop always need materialized variables, or can it sometimes operate on inline terms without materialization? If sometimes, we'll run it before the materialization pipeline steps in an effort to avoid unnecessary materialization overhead.
 IValueExpression<? extends IV> left()
           
 DateBOp.DateOp op()
           
 String toString()
          Return a non-recursive representation of the arguments and annotations for this BOp.
 
Methods inherited from class com.bigdata.rdf.internal.constraints.IVValueExpression
anns, asIV, asIV, asLiteral, asValue, get, getAndCheckBound, getAndCheckLiteral, getAndCheckLiteralValue, getLexiconConfiguration, getNamespace, getTimestamp, getValueFactory, literalLabel
 
Methods inherited from class com.bigdata.bop.BOpBase
_clearProperty, _set, _setProperty, annotations, annotationsCopy, annotationsEqual, annotationsRef, argIterator, args, argsCopy, arity, clearAnnotations, clearProperty, deepCopy, deepCopy, getProperty, setArg, setProperty, setUnboundProperty, toArray, toArray
 
Methods inherited from class com.bigdata.bop.CoreBaseBOp
annotationsEqual, annotationsToString, checkArgs, clone, equals, getEvaluationContext, getId, getProperty, getRequiredProperty, hashCode, indent, isController, toShortString
 
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface com.bigdata.bop.BOp
annotations, argIterator, args, arity, clone, getEvaluationContext, getId, getProperty, getRequiredProperty, isController, setProperty, toArray, toArray, toShortString
 
Methods inherited from interface cutthecrap.utils.striterators.IPropertySet
getProperty
 

Constructor Detail

DateBOp

public DateBOp(IValueExpression<? extends IV> left,
               DateBOp.DateOp op)
Parameters:
left - The left operand.
right - The right operand.
op - The annotation specifying the operation to be performed on those operands.

DateBOp

public DateBOp(BOp[] args,
               Map<String,Object> anns)
Required shallow copy constructor.

Parameters:
args - The operands.
op - The operation.

DateBOp

public DateBOp(DateBOp op)
Required deep copy constructor.

Parameters:
op -
Method Detail

areGlobalsRequired

protected boolean areGlobalsRequired()
Description copied from class: IVValueExpression
Returns true unless overridden, meaning the GlobalAnnotations are required for this value expression (certain boolean value expressions do not require them). Global annotations allow the method getValueFactory and getLexiconConfiguration to work.

Overrides:
areGlobalsRequired in class IVValueExpression<IV>

get

public final IV get(IBindingSet bs)
Description copied from interface: IValueExpression
Return the as bound value of the variable, constant, or expression. The as bound value of an IConstant is the contant's value. The as bound value of an IVariable is the bound value in the given IBindingSet -or- null if the variable is not bound in the IBindingSet.

Specified by:
get in interface IValueExpression<IV>
Parameters:
bs - The binding set.
Returns:
The as bound value of the constant, variable, or expression.

left

public IValueExpression<? extends IV> left()

op

public DateBOp.DateOp op()

toString

public String toString()
Description copied from class: CoreBaseBOp
Return a non-recursive representation of the arguments and annotations for this BOp.

Specified by:
toString in interface BOp
Overrides:
toString in class CoreBaseBOp

getRequirement

public INeedsMaterialization.Requirement getRequirement()
Description copied from interface: INeedsMaterialization
Does the bop always need materialized variables, or can it sometimes operate on inline terms without materialization? If sometimes, we'll run it before the materialization pipeline steps in an effort to avoid unnecessary materialization overhead. If it fails to evaluate for a particular solution, then it will be run again after the materialization steps for that solution.

Specified by:
getRequirement in interface INeedsMaterialization


Copyright © 2006-2012 SYSTAP, LLC. All Rights Reserved.