Class Norm2AllModes.DecomposeNormalizer2

Enclosing class:
Norm2AllModes

public static final class Norm2AllModes.DecomposeNormalizer2 extends Norm2AllModes.Normalizer2WithImpl
  • Constructor Details

  • Method Details

    • normalize

      protected void normalize(CharSequence src, Normalizer2Impl.ReorderingBuffer buffer)
      Specified by:
      normalize in class Norm2AllModes.Normalizer2WithImpl
    • normalizeAndAppend

      protected void normalizeAndAppend(CharSequence src, boolean doNormalize, Normalizer2Impl.ReorderingBuffer buffer)
      Specified by:
      normalizeAndAppend in class Norm2AllModes.Normalizer2WithImpl
    • spanQuickCheckYes

      public int spanQuickCheckYes(CharSequence s)
      Description copied from class: Normalizer2
      Returns the end of the normalized substring of the input string. In other words, with end=spanQuickCheckYes(s); the substring s.subSequence(0, end) will pass the quick check with a "yes" result.

      The returned end index is usually one or more characters before the "no" or "maybe" character: The end index is at a normalization boundary. (See the class documentation for more about normalization boundaries.)

      When the goal is a normalized string and most input strings are expected to be normalized already, then call this method, and if it returns a prefix shorter than the input string, copy that prefix and use normalizeSecondAndAppend() for the remainder.

      Specified by:
      spanQuickCheckYes in class Normalizer2
      Parameters:
      s - input string
      Returns:
      "yes" span end index
    • getQuickCheck

      public int getQuickCheck(int c)
      Specified by:
      getQuickCheck in class Norm2AllModes.Normalizer2WithImpl
    • hasBoundaryBefore

      public boolean hasBoundaryBefore(int c)
      Description copied from class: Normalizer2
      Tests if the character always has a normalization boundary before it, regardless of context. If true, then the character does not normalization-interact with preceding characters. In other words, a string containing this character can be normalized by processing portions before this character and starting from this character independently. This is used for iterative normalization. See the class documentation for details.
      Specified by:
      hasBoundaryBefore in class Normalizer2
      Parameters:
      c - character to test
      Returns:
      true if c has a normalization boundary before it
    • hasBoundaryAfter

      public boolean hasBoundaryAfter(int c)
      Description copied from class: Normalizer2
      Tests if the character always has a normalization boundary after it, regardless of context. If true, then the character does not normalization-interact with following characters. In other words, a string containing this character can be normalized by processing portions up to this character and after this character independently. This is used for iterative normalization. See the class documentation for details.

      Note that this operation may be significantly slower than hasBoundaryBefore().

      Specified by:
      hasBoundaryAfter in class Normalizer2
      Parameters:
      c - character to test
      Returns:
      true if c has a normalization boundary after it
    • isInert

      public boolean isInert(int c)
      Description copied from class: Normalizer2
      Tests if the character is normalization-inert. If true, then the character does not change, nor normalization-interact with preceding or following characters. In other words, a string containing this character can be normalized by processing portions before this character and after this character independently. This is used for iterative normalization. See the class documentation for details.

      Note that this operation may be significantly slower than hasBoundaryBefore().

      Specified by:
      isInert in class Normalizer2
      Parameters:
      c - character to test
      Returns:
      true if c is normalization-inert