Class CaseMapImpl.GreekUpper

  • Enclosing class:
    CaseMapImpl

    private static final class CaseMapImpl.GreekUpper
    extends java.lang.Object
    • Constructor Detail

      • GreekUpper

        private GreekUpper()
    • Method Detail

      • getLetterData

        private static final int getLetterData​(int c)
      • getDiacriticData

        private static final int getDiacriticData​(int c)
        Returns a non-zero value for each of the Greek combining diacritics listed in The Unicode Standard, version 8, chapter 7.2 Greek, plus some perispomeni look-alikes.
      • isFollowedByCasedLetter

        private static boolean isFollowedByCasedLetter​(java.lang.CharSequence s,
                                                       int i)
      • toUpper

        private static <A extends java.lang.Appendable> A toUpper​(int options,
                                                                  java.lang.CharSequence src,
                                                                  A dest,
                                                                  Edits edits)
                                                           throws java.io.IOException
        Greek string uppercasing with a state machine. Probably simpler than a stateless function that has to figure out complex context-before for each character. TODO: Try to re-consolidate one way or another with the non-Greek function.

        Keep this consistent with the C++ versions in ustrcase.cpp (UTF-16) and ucasemap.cpp (UTF-8).

        Throws:
        java.io.IOException