org.apache.cassandra.index.sasi.plan

## Class Expression

- java.lang.Object
- - org.apache.cassandra.index.sasi.plan.Expression

    public class Expression
    extends java.lang.Object

### Nested Class Summary

Nested Classes
`static class` `Expression.Bound`
`static class` `Expression.Op`

### Field Summary

Fields
`AbstractAnalyzer` `analyzer`
`java.util.List<java.nio.ByteBuffer>` `exclusions`
`ColumnIndex` `index`
`boolean` `isLiteral`
`Expression.Bound` `lower`
`protected Expression.Op` `operation`
`Expression.Bound` `upper`
`AbstractType<?>` `validator`

### Constructor Summary

Constructors
Constructor and Description
`Expression(Expression other)`
`Expression(QueryController controller, ColumnIndex columnIndex)`
`Expression(java.lang.String name, AbstractType<?> validator)`

### Method Summary

All Methods Instance Methods Concrete Methods
`Expression` `add(Operator op, java.nio.ByteBuffer value)`
`Expression` `addExclusion(java.nio.ByteBuffer value)`
`void` `checkpoint()`
`boolean` `equals(java.lang.Object other)`
`Expression.Op` `getOp()`
`int` `hashCode()`
`boolean` `hasLower()`
`boolean` `hasUpper()`
`boolean` `isIndexed()`
`boolean` `isLowerSatisfiedBy(OnDiskIndex.DataTerm term)`
`boolean` `isSatisfiedBy(java.nio.ByteBuffer value)`
`boolean` `isUpperSatisfiedBy(OnDiskIndex.DataTerm term)`
`Expression` `setLower(Expression.Bound newLower)`
`Expression` `setOp(Expression.Op op)`
`Expression` `setUpper(Expression.Bound newUpper)`
`java.lang.String` `toString()`

### Methods inherited from class java.lang.Object

`clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

### Field Detail

#### analyzer

    public final AbstractAnalyzer analyzer

#### index

    public final ColumnIndex index

#### validator

    public final AbstractType<?> validator

#### isLiteral

    public final boolean isLiteral

#### operation

    protected Expression.Op operation

#### lower

    public Expression.Bound lower

#### upper

    public Expression.Bound upper

#### exclusions

    public java.util.List<java.nio.ByteBuffer> exclusions

### Constructor Detail

#### Expression

    public Expression(Expression other)

#### Expression

    public Expression(QueryController controller,
                      ColumnIndex columnIndex)

#### Expression

    public Expression(java.lang.String name,
                      AbstractType<?> validator)

### Method Detail

#### setLower

    public Expression setLower(Expression.Bound newLower)

#### setUpper

    public Expression setUpper(Expression.Bound newUpper)

#### setOp

    public Expression setOp(Expression.Op op)

#### add

    public Expression add(Operator op,
                          java.nio.ByteBuffer value)

#### addExclusion

    public Expression addExclusion(java.nio.ByteBuffer value)

#### isSatisfiedBy

    public boolean isSatisfiedBy(java.nio.ByteBuffer value)

#### getOp

    public Expression.Op getOp()

#### checkpoint

    public void checkpoint()

#### hasLower

    public boolean hasLower()

#### hasUpper

    public boolean hasUpper()

#### isLowerSatisfiedBy

    public boolean isLowerSatisfiedBy(OnDiskIndex.DataTerm term)

#### isUpperSatisfiedBy

    public boolean isUpperSatisfiedBy(OnDiskIndex.DataTerm term)

#### isIndexed

    public boolean isIndexed()

#### toString

    public java.lang.String toString()

Overrides:
  `toString` in class `java.lang.Object`

#### hashCode

    public int hashCode()

Overrides:
  `hashCode` in class `java.lang.Object`

#### equals

    public boolean equals(java.lang.Object other)

Overrides:
  `equals` in class `java.lang.Object`