org.apache.cassandra.cql3

## Class ColumnIdentifier

- java.lang.Object
- - org.apache.cassandra.cql3.ColumnIdentifier

All Implemented Interfaces:
  IMeasurableMemory, Selectable

    public class ColumnIdentifier
    extends java.lang.Object
    implements Selectable, IMeasurableMemory

Represents an identifer for a CQL column definition. TODO : should support light-weight mode without text representation for when not interned

### Nested Class Summary

### Nested classes/interfaces inherited from interface org.apache.cassandra.cql3.statements.Selectable

`Selectable.WithFieldSelection, Selectable.WithFunction, Selectable.WritetimeOrTTL`

### Field Summary

Fields
`java.nio.ByteBuffer` `bytes`

### Constructor Summary

Constructors
Constructor and Description
`ColumnIdentifier(java.nio.ByteBuffer bytes, AbstractType<?> type)`
`ColumnIdentifier(java.nio.ByteBuffer bytes, java.lang.String text)`
`ColumnIdentifier(java.lang.String rawText, boolean keepCase)`

### Method Summary

Methods
`ColumnIdentifier` `clone(AbstractAllocator allocator)`
`boolean` `equals(java.lang.Object o)`
`int` `hashCode()`
`java.lang.String` `toString()`
`long` `unsharedHeapSize()`
`long` `unsharedHeapSizeExcludingData()`

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

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

### Field Detail

#### bytes

    public final java.nio.ByteBuffer bytes

### Constructor Detail

#### ColumnIdentifier

    public ColumnIdentifier(java.lang.String rawText,
                    boolean keepCase)

#### ColumnIdentifier

    public ColumnIdentifier(java.nio.ByteBuffer bytes,
                    AbstractType<?> type)

#### ColumnIdentifier

    public ColumnIdentifier(java.nio.ByteBuffer bytes,
                    java.lang.String text)

### Method Detail

#### hashCode

    public final int hashCode()

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

#### equals

    public final boolean equals(java.lang.Object o)

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

#### toString

    public java.lang.String toString()

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

#### unsharedHeapSize

    public long unsharedHeapSize()

Specified by:
  `unsharedHeapSize` in interface `IMeasurableMemory`
Returns:
  the amount of on-heap memory retained by the object that might be reclaimed if the object were reclaimed, i.e. it should try to exclude globally cached data where possible, or counting portions of arrays that are referenced by the object but used by other objects only (e.g. slabbed byte-buffers), etc.

#### unsharedHeapSizeExcludingData

    public long unsharedHeapSizeExcludingData()

#### clone

    public ColumnIdentifier clone(AbstractAllocator allocator)