org.apache.cassandra.db

## Class ClusteringBound

- java.lang.Object
- - org.apache.cassandra.db.AbstractClusteringPrefix
  - - org.apache.cassandra.db.AbstractBufferClusteringPrefix
    - - org.apache.cassandra.db.ClusteringBoundOrBoundary
      - - org.apache.cassandra.db.ClusteringBound

All Implemented Interfaces:
  IMeasurableMemory, Clusterable, ClusteringPrefix

    public class ClusteringBound
    extends ClusteringBoundOrBoundary

The start or end of a range of clusterings, either inclusive or exclusive.

### Nested Class Summary

### Nested classes/interfaces inherited from class org.apache.cassandra.db.ClusteringBoundOrBoundary

`ClusteringBoundOrBoundary.Serializer`

### Nested classes/interfaces inherited from interface org.apache.cassandra.db.ClusteringPrefix

`ClusteringPrefix.Deserializer, ClusteringPrefix.Kind`

### Field Summary

Fields
`static ClusteringBound` `BOTTOM` The smallest start bound, i.e.
`static ClusteringBound` `TOP` The biggest end bound, i.e.

### Fields inherited from class org.apache.cassandra.db.ClusteringBoundOrBoundary

`serializer`

### Fields inherited from class org.apache.cassandra.db.AbstractBufferClusteringPrefix

`EMPTY_VALUES_ARRAY, kind, values`

### Constructor Summary

Constructors
`protected` `ClusteringBound(ClusteringPrefix.Kind kind, java.nio.ByteBuffer[] values)`

### Method Summary

All Methods Static Methods Instance Methods Concrete Methods
`static ClusteringPrefix.Kind` `boundKind(boolean isStart, boolean isInclusive)`
`ClusteringBound` `copy(AbstractAllocator allocator)`
`static ClusteringBound` `create(ClusteringComparator comparator, boolean isStart, boolean isInclusive, java.lang.Object... values)`
`static ClusteringBound` `create(ClusteringPrefix.Kind kind, java.nio.ByteBuffer[] values)`
`static ClusteringBound` `exclusiveEndOf(java.nio.ByteBuffer... values)`
`static ClusteringBound` `exclusiveStartOf(java.nio.ByteBuffer... values)`
`static ClusteringBound` `exclusiveStartOf(ClusteringPrefix prefix)`
`static ClusteringBound` `inclusiveEndOf(java.nio.ByteBuffer... values)`
`static ClusteringBound` `inclusiveEndOf(ClusteringPrefix prefix)`
`static ClusteringBound` `inclusiveStartOf(java.nio.ByteBuffer... values)`
`static ClusteringBound` `inclusiveStartOf(ClusteringPrefix prefix)`
`ClusteringBound` `invert()` Returns the inverse of the current bound.
`boolean` `isEnd()`
`boolean` `isExclusive()`
`boolean` `isInclusive()`
`boolean` `isStart()`

### Methods inherited from class org.apache.cassandra.db.ClusteringBoundOrBoundary

`exclusiveClose, exclusiveCloseInclusiveOpen, exclusiveOpen, inclusiveClose, inclusiveCloseExclusiveOpen, inclusiveOpen, isBoundary, isClose, isOpen, toString, toString`

### Methods inherited from class org.apache.cassandra.db.AbstractBufferClusteringPrefix

`clustering, get, getRawValues, kind, size, unsharedHeapSize, unsharedHeapSizeExcludingData`

### Methods inherited from class org.apache.cassandra.db.AbstractClusteringPrefix

`dataSize, digest, equals, hashCode`

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

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

### Field Detail

#### BOTTOM

    public static final ClusteringBound BOTTOM

The smallest start bound, i.e. the one that starts before any row.

#### TOP

    public static final ClusteringBound TOP

The biggest end bound, i.e. the one that ends after any row.

### Constructor Detail

#### ClusteringBound

    protected ClusteringBound(ClusteringPrefix.Kind kind,
                              java.nio.ByteBuffer[] values)

### Method Detail

#### create

    public static ClusteringBound create(ClusteringPrefix.Kind kind,
                                         java.nio.ByteBuffer[] values)

#### boundKind

    public static ClusteringPrefix.Kind boundKind(boolean isStart,
                                                  boolean isInclusive)

#### inclusiveStartOf

    public static ClusteringBound inclusiveStartOf(java.nio.ByteBuffer... values)

#### inclusiveEndOf

    public static ClusteringBound inclusiveEndOf(java.nio.ByteBuffer... values)

#### exclusiveStartOf

    public static ClusteringBound exclusiveStartOf(java.nio.ByteBuffer... values)

#### exclusiveEndOf

    public static ClusteringBound exclusiveEndOf(java.nio.ByteBuffer... values)

#### inclusiveStartOf

    public static ClusteringBound inclusiveStartOf(ClusteringPrefix prefix)

#### exclusiveStartOf

    public static ClusteringBound exclusiveStartOf(ClusteringPrefix prefix)

#### inclusiveEndOf

    public static ClusteringBound inclusiveEndOf(ClusteringPrefix prefix)

#### create

    public static ClusteringBound create(ClusteringComparator comparator,
                                         boolean isStart,
                                         boolean isInclusive,
                                         java.lang.Object... values)

#### invert

    public ClusteringBound invert()

Description copied from class: `ClusteringBoundOrBoundary`
Returns the inverse of the current bound.

This invert both start into end (and vice-versa) and inclusive into exclusive (and vice-versa).

Specified by:
  `invert` in class `ClusteringBoundOrBoundary`
Returns:
  the invert of this bound. For instance, if this bound is an exlusive start, this return an inclusive end with the same values.

#### copy

    public ClusteringBound copy(AbstractAllocator allocator)

Overrides:
  `copy` in class `ClusteringBoundOrBoundary`

#### isStart

    public boolean isStart()

#### isEnd

    public boolean isEnd()

#### isInclusive

    public boolean isInclusive()

#### isExclusive

    public boolean isExclusive()