private static char getMathsChar()

in languagetool-language-modules/ga/src/main/java/org/languagetool/tagging/ga/Utils.java [803:905]


  private static char getMathsChar(char c, boolean normaliseGreek, boolean normaliseDigits) {
    int numeric = c;
    if (numeric < 0) {
      throw new RuntimeException("Failed to read character " + c);
    }
    if (numeric < MATHEMATICAL_BOLD_CAPITAL_A) {
      return c;
    } else {
      if (numeric <= MATHEMATICAL_BOLD_CAPITAL_Z) {
        return (char) (numeric - MATHEMATICAL_BOLD_CAPITAL_A + CAPITAL_A);
      } else if (numeric <= MATHEMATICAL_BOLD_SMALL_Z) {
        return (char) (numeric - MATHEMATICAL_BOLD_SMALL_A + SMALL_A);
      } else if (numeric <= MATHEMATICAL_ITALIC_CAPITAL_Z) {
        return (char) (numeric - MATHEMATICAL_ITALIC_CAPITAL_A + CAPITAL_A);
      } else if (numeric <= MATHEMATICAL_ITALIC_SMALL_Z) {
        return (char) (numeric - MATHEMATICAL_ITALIC_SMALL_A + SMALL_A);
      } else if (numeric <= MATHEMATICAL_BOLD_ITALIC_CAPITAL_Z) {
        return (char) (numeric - MATHEMATICAL_BOLD_ITALIC_CAPITAL_A + CAPITAL_A);
      } else if (numeric <= MATHEMATICAL_BOLD_ITALIC_SMALL_Z) {
        return (char) (numeric - MATHEMATICAL_BOLD_ITALIC_SMALL_A + SMALL_A);
      } else if (numeric <= MATHEMATICAL_SCRIPT_CAPITAL_Z) {
        return (char) (numeric - MATHEMATICAL_SCRIPT_CAPITAL_A + CAPITAL_A);
      } else if (numeric <= MATHEMATICAL_SCRIPT_SMALL_Z) {
        return (char) (numeric - MATHEMATICAL_SCRIPT_SMALL_A + SMALL_A);
      } else if (numeric <= MATHEMATICAL_BOLD_SCRIPT_CAPITAL_Z) {
        return (char) (numeric - MATHEMATICAL_BOLD_SCRIPT_CAPITAL_A + CAPITAL_A);
      } else if (numeric <= MATHEMATICAL_BOLD_SCRIPT_SMALL_Z) {
        return (char) (numeric - MATHEMATICAL_BOLD_SCRIPT_SMALL_A + SMALL_A);
      } else if (numeric <= MATHEMATICAL_FRAKTUR_CAPITAL_Z) {
        // Not all Fraktur capitals have valid characters, but include them anyway
        return (char) (numeric - MATHEMATICAL_FRAKTUR_CAPITAL_A + CAPITAL_A);
      } else if (numeric <= MATHEMATICAL_FRAKTUR_SMALL_Z) {
        return (char) (numeric - MATHEMATICAL_FRAKTUR_SMALL_A + SMALL_A);
      } else if (numeric <= MATHEMATICAL_DOUBLESTRUCK_CAPITAL_Z) {
        return (char) (numeric - MATHEMATICAL_DOUBLESTRUCK_CAPITAL_A + CAPITAL_A);
      } else if (numeric <= MATHEMATICAL_DOUBLESTRUCK_SMALL_Z) {
        return (char) (numeric - MATHEMATICAL_DOUBLESTRUCK_SMALL_A + SMALL_A);
      } else if (numeric <= MATHEMATICAL_BOLD_FRAKTUR_CAPITAL_Z) {
        return (char) (numeric - MATHEMATICAL_BOLD_FRAKTUR_CAPITAL_A + CAPITAL_A);
      } else if (numeric <= MATHEMATICAL_BOLD_FRAKTUR_SMALL_Z) {
        return (char) (numeric - MATHEMATICAL_BOLD_FRAKTUR_SMALL_A + SMALL_A);
      } else if (numeric <= MATHEMATICAL_SANSSERIF_CAPITAL_Z) {
        return (char) (numeric - MATHEMATICAL_SANSSERIF_CAPITAL_A + CAPITAL_A);
      } else if (numeric <= MATHEMATICAL_SANSSERIF_SMALL_Z) {
        return (char) (numeric - MATHEMATICAL_SANSSERIF_SMALL_A + SMALL_A);
      } else if (numeric <= MATHEMATICAL_SANSSERIF_BOLD_CAPITAL_Z) {
        return (char) (numeric - MATHEMATICAL_SANSSERIF_BOLD_CAPITAL_A + CAPITAL_A);
      } else if (numeric <= MATHEMATICAL_SANSSERIF_BOLD_SMALL_Z) {
        return (char) (numeric - MATHEMATICAL_SANSSERIF_BOLD_SMALL_A + SMALL_A);
      } else if (numeric <= MATHEMATICAL_SANSSERIF_ITALIC_CAPITAL_Z) {
        return (char) (numeric - MATHEMATICAL_SANSSERIF_ITALIC_CAPITAL_A + CAPITAL_A);
      } else if (numeric <= MATHEMATICAL_SANSSERIF_ITALIC_SMALL_Z) {
        return (char) (numeric - MATHEMATICAL_SANSSERIF_ITALIC_SMALL_A + SMALL_A);
      } else if (numeric <= MATHEMATICAL_SANSSERIF_BOLD_ITALIC_CAPITAL_Z) {
        return (char) (numeric - MATHEMATICAL_SANSSERIF_BOLD_ITALIC_CAPITAL_A + CAPITAL_A);
      } else if (numeric <= MATHEMATICAL_SANSSERIF_BOLD_ITALIC_SMALL_Z) {
        return (char) (numeric - MATHEMATICAL_SANSSERIF_BOLD_ITALIC_SMALL_A + SMALL_A);
      } else if (numeric <= MATHEMATICAL_MONOSPACE_CAPITAL_Z) {
        return (char) (numeric - MATHEMATICAL_MONOSPACE_CAPITAL_A + CAPITAL_A);
      } else if (numeric <= MATHEMATICAL_MONOSPACE_SMALL_Z) {
        return (char) (numeric - MATHEMATICAL_MONOSPACE_SMALL_A + SMALL_A);
      } else if (numeric == MATHEMATICAL_ITALIC_SMALL_DOTLESS_I) {
        return 'i';
      } else if (numeric == MATHEMATICAL_ITALIC_SMALL_DOTLESS_J) {
        return 'j';
      } else if (normaliseGreek) {
        if (numeric >= MATHEMATICAL_BOLD_CAPITAL_ALPHA && numeric <= MATHEMATICAL_BOLD_CAPITAL_OMEGA) {
          return (char) (numeric - MATHEMATICAL_BOLD_CAPITAL_ALPHA + CAPITAL_ALPHA);
        } else if (numeric >= MATHEMATICAL_BOLD_SMALL_ALPHA && numeric <= MATHEMATICAL_BOLD_SMALL_OMEGA) {
          return (char) (numeric - MATHEMATICAL_BOLD_SMALL_ALPHA + SMALL_ALPHA);
        } else if (numeric >= MATHEMATICAL_ITALIC_CAPITAL_ALPHA && numeric <= MATHEMATICAL_ITALIC_CAPITAL_OMEGA) {
          return (char) (numeric - MATHEMATICAL_ITALIC_CAPITAL_ALPHA + CAPITAL_ALPHA);
        } else if (numeric >= MATHEMATICAL_ITALIC_SMALL_ALPHA && numeric <= MATHEMATICAL_ITALIC_SMALL_OMEGA) {
          return (char) (numeric - MATHEMATICAL_ITALIC_SMALL_ALPHA + SMALL_ALPHA);
        } else if (numeric >= MATHEMATICAL_BOLD_ITALIC_CAPITAL_ALPHA && numeric <= MATHEMATICAL_BOLD_ITALIC_CAPITAL_OMEGA) {
          return (char) (numeric - MATHEMATICAL_BOLD_ITALIC_CAPITAL_ALPHA + CAPITAL_ALPHA);
        } else if (numeric >= MATHEMATICAL_BOLD_ITALIC_SMALL_ALPHA && numeric <= MATHEMATICAL_BOLD_ITALIC_SMALL_OMEGA) {
          return (char) (numeric - MATHEMATICAL_BOLD_ITALIC_SMALL_ALPHA + SMALL_ALPHA);
        } else if (numeric >= MATHEMATICAL_SANSSERIF_BOLD_CAPITAL_ALPHA && numeric <= MATHEMATICAL_SANSSERIF_BOLD_CAPITAL_OMEGA) {
          return (char) (numeric - MATHEMATICAL_SANSSERIF_BOLD_CAPITAL_ALPHA + CAPITAL_ALPHA);
        } else if (numeric >= MATHEMATICAL_SANSSERIF_BOLD_SMALL_ALPHA && numeric <= MATHEMATICAL_SANSSERIF_BOLD_SMALL_OMEGA) {
          return (char) (numeric - MATHEMATICAL_SANSSERIF_BOLD_SMALL_ALPHA + SMALL_ALPHA);
        } else if (numeric >= MATHEMATICAL_SANSSERIF_BOLD_ITALIC_CAPITAL_ALPHA && numeric <= MATHEMATICAL_SANSSERIF_BOLD_ITALIC_CAPITAL_OMEGA) {
          return (char) (numeric - MATHEMATICAL_SANSSERIF_BOLD_ITALIC_CAPITAL_ALPHA + CAPITAL_ALPHA);
        } else if (numeric >= MATHEMATICAL_SANSSERIF_BOLD_ITALIC_SMALL_ALPHA && numeric <= MATHEMATICAL_SANSSERIF_BOLD_ITALIC_SMALL_OMEGA) {
          return (char) (numeric - MATHEMATICAL_SANSSERIF_BOLD_ITALIC_SMALL_ALPHA + SMALL_ALPHA);
        }
      } else if (normaliseDigits) {
        if (numeric >= MATHEMATICAL_BOLD_DIGIT_ZERO && numeric <= MATHEMATICAL_BOLD_DIGIT_NINE) {
          return (char) (numeric - MATHEMATICAL_BOLD_DIGIT_ZERO + DIGIT_ZERO);
        } else if (numeric <= MATHEMATICAL_DOUBLESTRUCK_DIGIT_NINE) {
          return (char) (numeric - MATHEMATICAL_DOUBLESTRUCK_DIGIT_ZERO + DIGIT_ZERO);
        } else if (numeric <= MATHEMATICAL_SANSSERIF_DIGIT_NINE) {
          return (char) (numeric - MATHEMATICAL_SANSSERIF_DIGIT_ZERO + DIGIT_ZERO);
        } else if (numeric <= MATHEMATICAL_SANSSERIF_BOLD_DIGIT_NINE) {
          return (char) (numeric - MATHEMATICAL_SANSSERIF_BOLD_DIGIT_ZERO + DIGIT_ZERO);
        } else if (numeric <= MATHEMATICAL_MONOSPACE_DIGIT_NINE) {
          return (char) (numeric - MATHEMATICAL_MONOSPACE_DIGIT_ZERO + DIGIT_ZERO);
        }
      }
      return c;
    }
  }