Class ReversedType<T>

    • Method Detail

      • compareCustom

        public <VL,​VR> int compareCustom​(VL left,
                                               ValueAccessor<VL> accessorL,
                                               VR right,
                                               ValueAccessor<VR> accessorR)
        Description copied from class: AbstractType
        Implement IFF ComparisonType is CUSTOM Compares the byte representation of two instances of this class, for types where this cannot be done by simple in-order comparison of the unsigned bytes Standard Java compare semantics
        Overrides:
        compareCustom in class AbstractType<T>
      • compareForCQL

        public int compareForCQL​(java.nio.ByteBuffer v1,
                                 java.nio.ByteBuffer v2)
        Description copied from class: AbstractType
        Same as compare except that this ignore ReversedType. This is to be use when comparing 2 values to decide for a CQL condition (see Operator.isSatisfiedBy) as for CQL, ReversedType is simply an "hint" to the storage engine but it does not change the meaning of queries per-se.
        Overrides:
        compareForCQL in class AbstractType<T>
      • getString

        public <V> java.lang.String getString​(V value,
                                              ValueAccessor<V> accessor)
        Description copied from class: AbstractType
        get a string representation of the bytes used for various identifier (NOT just for log messages)
        Overrides:
        getString in class AbstractType<T>
      • fromString

        public java.nio.ByteBuffer fromString​(java.lang.String source)
        Description copied from class: AbstractType
        get a byte representation of the given string.
        Specified by:
        fromString in class AbstractType<T>
      • toJSONString

        public java.lang.String toJSONString​(java.nio.ByteBuffer buffer,
                                             ProtocolVersion protocolVersion)
        Description copied from class: AbstractType
        Converts the specified value into its JSON representation.

        The buffer position will stay the same.

        Overrides:
        toJSONString in class AbstractType<T>
        Parameters:
        buffer - the value to convert
        protocolVersion - the protocol version to use for the conversion
        Returns:
        a JSON string representing the specified value
      • isCompatibleWith

        public boolean isCompatibleWith​(AbstractType<?> otherType)
        Description copied from class: AbstractType
        Returns true if this comparator is compatible with the provided previous comparator, that is if previous can safely be replaced by this. A comparator cn should be compatible with a previous one cp if forall columns c1 and c2, if cn.validate(c1) and cn.validate(c2) and cn.compare(c1, c2) == v, then cp.validate(c1) and cp.validate(c2) and cp.compare(c1, c2) == v. Note that a type should be compatible with at least itself and when in doubt, keep the default behavior of not being compatible with any other comparator!
        Overrides:
        isCompatibleWith in class AbstractType<T>
      • expandUserTypes

        public AbstractType<?> expandUserTypes()
        Description copied from class: AbstractType
        Replace any instances of UserType with equivalent TupleType-s. We need it for dropped_columns, to allow safely dropping unused user types later without retaining any references to them in system_schema.dropped_columns.
        Overrides:
        expandUserTypes in class AbstractType<T>
      • valueLengthIfFixed

        public int valueLengthIfFixed()
        Description copied from class: AbstractType
        The length of values for this type if all values are of fixed length, -1 otherwise.
        Overrides:
        valueLengthIfFixed in class AbstractType<T>
      • toString

        public java.lang.String toString()
        Description copied from class: AbstractType
        This must be overriden by subclasses if necessary so that for any AbstractType, this == TypeParser.parse(toString()). Note that for backwards compatibility this includes the full classname. For CQL purposes the short name is fine.
        Overrides:
        toString in class AbstractType<T>