Class Collation

java.lang.Object
org.graalvm.shadowed.com.ibm.icu.impl.coll.Collation

public final class Collation extends Object
Collation v2 basic definitions and static helper functions. Data structures except for expansion tables store 32-bit CEs which are either specials (see tags below) or are compact forms of 64-bit CEs.
  • Field Details

    • SENTINEL_CP

      public static final int SENTINEL_CP
      UChar32 U_SENTINEL. TODO: Create a common, public constant?
      See Also:
    • LESS

      public static final int LESS
      See Also:
    • EQUAL

      public static final int EQUAL
      See Also:
    • GREATER

      public static final int GREATER
      See Also:
    • TERMINATOR_BYTE

      public static final int TERMINATOR_BYTE
      See Also:
    • LEVEL_SEPARATOR_BYTE

      public static final int LEVEL_SEPARATOR_BYTE
      See Also:
    • MERGE_SEPARATOR_BYTE

      public static final int MERGE_SEPARATOR_BYTE
      Merge-sort-key separator. Same as the unique primary and identical-level weights of U+FFFE. Must not be used as primary compression low terminator. Otherwise usable.
      See Also:
    • MERGE_SEPARATOR_PRIMARY

      public static final long MERGE_SEPARATOR_PRIMARY
      See Also:
    • PRIMARY_COMPRESSION_LOW_BYTE

      public static final int PRIMARY_COMPRESSION_LOW_BYTE
      Primary compression low terminator, must be greater than MERGE_SEPARATOR_BYTE. Reserved value in primary second byte if the lead byte is compressible. Otherwise usable in all CE weight bytes.
      See Also:
    • PRIMARY_COMPRESSION_HIGH_BYTE

      public static final int PRIMARY_COMPRESSION_HIGH_BYTE
      Primary compression high terminator. Reserved value in primary second byte if the lead byte is compressible. Otherwise usable in all CE weight bytes.
      See Also:
    • COMMON_WEIGHT16

      public static final int COMMON_WEIGHT16
      See Also:
    • COMMON_SEC_AND_TER_CE

      public static final int COMMON_SEC_AND_TER_CE
      Lower 32 bits of a CE with common secondary and tertiary weights.
      See Also:
    • CASE_MASK

      public static final int CASE_MASK
      See Also:
    • ONLY_TERTIARY_MASK

      public static final int ONLY_TERTIARY_MASK
      Only the 2*6 bits for the pure tertiary weight.
      See Also:
    • QUATERNARY_MASK

      public static final int QUATERNARY_MASK
      See Also:
    • CASE_AND_QUATERNARY_MASK

      public static final int CASE_AND_QUATERNARY_MASK
      Case bits and quaternary bits.
      See Also:
    • MAX_PRIMARY

      public static final long MAX_PRIMARY
      See Also:
    • FFFD_PRIMARY

      public static final long FFFD_PRIMARY
      See Also:
    • NO_CE

      public static final long NO_CE
      See Also:
    • NO_LEVEL

      public static final int NO_LEVEL
      Unspecified level.
      See Also:
    • PRIMARY_LEVEL

      public static final int PRIMARY_LEVEL
      See Also:
    • SECONDARY_LEVEL

      public static final int SECONDARY_LEVEL
      See Also:
    • CASE_LEVEL

      public static final int CASE_LEVEL
      See Also:
    • TERTIARY_LEVEL

      public static final int TERTIARY_LEVEL
      See Also:
    • QUATERNARY_LEVEL

      public static final int QUATERNARY_LEVEL
      See Also:
    • IDENTICAL_LEVEL

      public static final int IDENTICAL_LEVEL
      See Also:
    • ZERO_LEVEL

      public static final int ZERO_LEVEL
      Beyond sort key bytes.
      See Also:
  • Constructor Details

    • Collation

      public Collation()
  • Method Details

    • makeCE

      public static long makeCE(long p)
      Creates a CE from a primary weight.
    • incTwoBytePrimaryByOffset

      public static long incTwoBytePrimaryByOffset(long basePrimary, boolean isCompressible, int offset)
      Increments a 2-byte primary by a code point offset.
    • incThreeBytePrimaryByOffset

      public static long incThreeBytePrimaryByOffset(long basePrimary, boolean isCompressible, int offset)
      Increments a 3-byte primary by a code point offset.