org.apache.cassandra.db.composites

## Interface Composite

All Superinterfaces:
  IMeasurableMemory

All Known Subinterfaces:
  CellName

All Known Implementing Classes:
  AbstractComposite, AbstractNativeCell, BoundedComposite, CompoundComposite, CompoundDenseCellName, CompoundSparseCellName, CompoundSparseCellName.WithCollection, NativeCell, NativeCounterCell, NativeDeletedCell, NativeExpiringCell, SimpleComposite, SimpleDenseCellName, SimpleSparseCellName, SimpleSparseInternedCellName

    public interface Composite
    extends IMeasurableMemory

A composite value. This can be though as a list of ByteBuffer, except that this also include an 'end-of-component' flag, that allow precise selection of composite ranges. We also make a difference between "true" composites and the "simple" ones. The non-truly composite will have a size() == 1 but differs from true composites with size() == 1 in the way they are stored. Most code shouldn't have to care about the difference.

### Nested Class Summary

Nested Classes
`static class` `Composite.EOC`

### Method Summary

All Methods Instance Methods Abstract Methods
`Composite` `copy(CFMetaData cfm, AbstractAllocator allocator)`
`int` `dataSize()`
`Composite` `end()`
`Composite.EOC` `eoc()`
`java.nio.ByteBuffer` `get(int i)`
`boolean` `isEmpty()`
`boolean` `isPrefixOf(CType type, Composite other)`
`boolean` `isStatic()`
`int` `size()`
`ColumnSlice` `slice()`
`Composite` `start()`
`java.nio.ByteBuffer` `toByteBuffer()`
`Composite` `withEOC(Composite.EOC eoc)`

### Methods inherited from interface org.apache.cassandra.cache.IMeasurableMemory

`unsharedHeapSize`

### Method Detail

#### size

    int size()

#### isEmpty

    boolean isEmpty()

#### get

    java.nio.ByteBuffer get(int i)

#### eoc

    Composite.EOC eoc()

#### withEOC

    Composite withEOC(Composite.EOC eoc)

#### start

    Composite start()

#### end

    Composite end()

#### slice

    ColumnSlice slice()

#### isStatic

    boolean isStatic()

#### isPrefixOf

    boolean isPrefixOf(CType type,
                       Composite other)

#### toByteBuffer

    java.nio.ByteBuffer toByteBuffer()

#### dataSize

    int dataSize()

#### copy

    Composite copy(CFMetaData cfm,
                   AbstractAllocator allocator)