Class CollationDataBuilder.ConditionalCE32

java.lang.Object
com.ibm.icu.impl.coll.CollationDataBuilder.ConditionalCE32
Enclosing class:
CollationDataBuilder

private static final class CollationDataBuilder.ConditionalCE32 extends Object
Build-time context and CE32 for a code point. If a code point has contextual mappings, then the default (no-context) mapping and all conditional mappings are stored in a singly-linked list of ConditionalCE32, sorted by context strings. Context strings sort by prefix length, then by prefix, then by contraction suffix. Context strings must be unique and in ascending order.
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    (package private) int
    CE32 for the built contexts.
    (package private) int
    CE32 for the code point and its context.
    (package private) String
    "\0" for the first entry for any code point, with its default CE32.
    (package private) int
    Default CE32 for all contexts with this same prefix.
    (package private) int
    The "era" of building intermediate contexts when the above builtCE32 was set.
    (package private) int
    Index of the next ConditionalCE32.
  • Constructor Summary

    Constructors
    Constructor
    Description
    ConditionalCE32(String ct, int ce)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    (package private) boolean
     
    (package private) int
     

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • context

      String context
      "\0" for the first entry for any code point, with its default CE32. Otherwise one unit with the length of the prefix string, then the prefix string, then the contraction suffix.
    • ce32

      int ce32
      CE32 for the code point and its context. Can be special (e.g., for an expansion) but not contextual (prefix or contraction tag).
    • defaultCE32

      int defaultCE32
      Default CE32 for all contexts with this same prefix. Initially NO_CE32. Set only while building runtime data structures, and only on one of the nodes of a sub-list with the same prefix.
    • builtCE32

      int builtCE32
      CE32 for the built contexts. When fetching CEs from the builder, the contexts are built into their runtime form so that the normal collation implementation can process them. The result is cached in the list head. It is reset when the contexts are modified. All of these builtCE32 are invalidated by clearContexts(), via incrementing the contextsEra.
    • era

      int era
      The "era" of building intermediate contexts when the above builtCE32 was set. When the array of cached, temporary contexts overflows, then clearContexts() removes them all and invalidates the builtCE32 that used to point to built tries.
    • next

      int next
      Index of the next ConditionalCE32. Negative for the end of the list.
  • Constructor Details

    • ConditionalCE32

      ConditionalCE32(String ct, int ce)
  • Method Details

    • hasContext

      boolean hasContext()
    • prefixLength

      int prefixLength()