org.pentaho.reporting.libraries.formula.lvalues
Interface LValue

All Superinterfaces:
Cloneable, Serializable
All Known Subinterfaces:
DataTable
All Known Implementing Classes:
AbstractLValue, ContextLookup, DefaultDataTable, FormulaFunction, PostfixTerm, PrefixTerm, StaticValue, Term

public interface LValue
extends Serializable, Cloneable

A reference is an indirection to hide the details of where the actual value came from. The reference is responsible to report dependencies.

Author:
Thomas Morgner

Method Summary
 Object clone()
           
 TypeValuePair evaluate()
           
 LValue[] getChildValues()
          Returns any dependent lvalues (parameters and operands, mostly).
 ParsePosition getParsePosition()
           
 Type getValueType()
          Querying the value type is only valid *after* the value has been evaluated.
 void initialize(FormulaContext context)
           
 boolean isConstant()
          Checks whether the LValue is constant.
 

Method Detail

initialize

void initialize(FormulaContext context)
                throws EvaluationException
Throws:
EvaluationException

evaluate

TypeValuePair evaluate()
                       throws EvaluationException
Throws:
EvaluationException

clone

Object clone()
             throws CloneNotSupportedException
Throws:
CloneNotSupportedException

getValueType

Type getValueType()
Querying the value type is only valid *after* the value has been evaluated.

Returns:

getChildValues

LValue[] getChildValues()
Returns any dependent lvalues (parameters and operands, mostly).

Returns:

isConstant

boolean isConstant()
Checks whether the LValue is constant. Constant lvalues always return the same value.

Returns:

getParsePosition

ParsePosition getParsePosition()