< prev index next >

jdk/make/data/characterdata/CharacterData01.java.template

Print this page


   1 /*
   2  * Copyright (c) 2003, 2013, Oracle and/or its affiliates. All rights reserved.
   3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
   4  *
   5  * This code is free software; you can redistribute it and/or modify it
   6  * under the terms of the GNU General Public License version 2 only, as
   7  * published by the Free Software Foundation.  Oracle designates this
   8  * particular file as subject to the "Classpath" exception as provided
   9  * by Oracle in the LICENSE file that accompanied this code.
  10  *
  11  * This code is distributed in the hope that it will be useful, but WITHOUT
  12  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
  13  * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
  14  * version 2 for more details (a copy is included in the LICENSE file that
  15  * accompanied this code).
  16  *
  17  * You should have received a copy of the GNU General Public License version
  18  * 2 along with this work; if not, write to the Free Software Foundation,
  19  * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
  20  *
  21  * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
  22  * or visit www.oracle.com if you need additional information or have any


 227             case 0x10121: retval = 900; break;     // AEGEAN NUMBER NINE HUNDRED
 228             case 0x10122: retval = 1000; break;    // AEGEAN NUMBER ONE THOUSAND
 229             case 0x10123: retval = 2000; break;    // AEGEAN NUMBER TWO THOUSAND
 230             case 0x10124: retval = 3000; break;    // AEGEAN NUMBER THREE THOUSAND
 231             case 0x10125: retval = 4000; break;    // AEGEAN NUMBER FOUR THOUSAND
 232             case 0x10126: retval = 5000; break;    // AEGEAN NUMBER FIVE THOUSAND
 233             case 0x10127: retval = 6000; break;    // AEGEAN NUMBER SIX THOUSAND
 234             case 0x10128: retval = 7000; break;    // AEGEAN NUMBER SEVEN THOUSAND
 235             case 0x10129: retval = 8000; break;    // AEGEAN NUMBER EIGHT THOUSAND
 236             case 0x1012A: retval = 9000; break;    // AEGEAN NUMBER NINE THOUSAND
 237             case 0x1012B: retval = 10000; break;   // AEGEAN NUMBER TEN THOUSAND
 238             case 0x1012C: retval = 20000; break;   // AEGEAN NUMBER TWENTY THOUSAND
 239             case 0x1012D: retval = 30000; break;   // AEGEAN NUMBER THIRTY THOUSAND
 240             case 0x1012E: retval = 40000; break;   // AEGEAN NUMBER FORTY THOUSAND
 241             case 0x1012F: retval = 50000; break;   // AEGEAN NUMBER FIFTY THOUSAND
 242             case 0x10130: retval = 60000; break;   // AEGEAN NUMBER SIXTY THOUSAND
 243             case 0x10131: retval = 70000; break;   // AEGEAN NUMBER SEVENTY THOUSAND
 244             case 0x10132: retval = 80000; break;   // AEGEAN NUMBER EIGHTY THOUSAND
 245             case 0x10133: retval = 90000; break;   // AEGEAN NUMBER NINETY THOUSAND
 246             case 0x10323: retval = 50; break;      // OLD ITALIC NUMERAL FIFTY
 247 
 248             case 0x010144: retval = 50; break;     // ACROPHONIC ATTIC FIFTY
 249             case 0x010145: retval = 500; break;    // ACROPHONIC ATTIC FIVE HUNDRED
 250             case 0x010146: retval = 5000; break;   // ACROPHONIC ATTIC FIVE THOUSAND
 251             case 0x010147: retval = 50000; break;  // ACROPHONIC ATTIC FIFTY THOUSAND
 252             case 0x01014A: retval = 50; break;     // ACROPHONIC ATTIC FIFTY TALENTS
 253             case 0x01014B: retval = 100; break;    // ACROPHONIC ATTIC ONE HUNDRED TALENTS
 254             case 0x01014C: retval = 500; break;    // ACROPHONIC ATTIC FIVE HUNDRED TALENTS
 255             case 0x01014D: retval = 1000; break;   // ACROPHONIC ATTIC ONE THOUSAND TALENTS
 256             case 0x01014E: retval = 5000; break;   // ACROPHONIC ATTIC FIVE THOUSAND TALENTS
 257             case 0x010151: retval = 50; break;     // ACROPHONIC ATTIC FIFTY STATERS
 258             case 0x010152: retval = 100; break;    // ACROPHONIC ATTIC ONE HUNDRED STATERS
 259             case 0x010153: retval = 500; break;    // ACROPHONIC ATTIC FIVE HUNDRED STATERS
 260             case 0x010154: retval = 1000; break;   // ACROPHONIC ATTIC ONE THOUSAND STATERS
 261             case 0x010155: retval = 10000; break;  // ACROPHONIC ATTIC TEN THOUSAND STATERS
 262             case 0x010156: retval = 50000; break;  // ACROPHONIC ATTIC FIFTY THOUSAND STATERS
 263             case 0x010166: retval = 50; break;     // ACROPHONIC TROEZENIAN FIFTY
 264             case 0x010167: retval = 50; break;     // ACROPHONIC TROEZENIAN FIFTY ALTERNATE FORM
 265             case 0x010168: retval = 50; break;     // ACROPHONIC HERMIONIAN FIFTY
 266             case 0x010169: retval = 50; break;     // ACROPHONIC THESPIAN FIFTY
 267             case 0x01016A: retval = 100; break;    // ACROPHONIC THESPIAN ONE HUNDRED
 268             case 0x01016B: retval = 300; break;    // ACROPHONIC THESPIAN THREE HUNDRED
 269             case 0x01016C: retval = 500; break;    // ACROPHONIC EPIDAUREAN FIVE HUNDRED
 270             case 0x01016D: retval = 500; break;    // ACROPHONIC TROEZENIAN FIVE HUNDRED
 271             case 0x01016E: retval = 500; break;    // ACROPHONIC THESPIAN FIVE HUNDRED
 272             case 0x01016F: retval = 500; break;    // ACROPHONIC CARYSTIAN FIVE HUNDRED
 273             case 0x010170: retval = 500; break;    // ACROPHONIC NAXIAN FIVE HUNDRED
 274             case 0x010171: retval = 1000; break;   // ACROPHONIC THESPIAN ONE THOUSAND
 275             case 0x010172: retval = 5000; break;   // ACROPHONIC THESPIAN FIVE THOUSAND
 276             case 0x010174: retval = 50; break;     // ACROPHONIC STRATIAN FIFTY MNAS
 277             case 0x010341: retval = 90; break;     // GOTHIC LETTER NINETY
 278             case 0x01034A: retval = 900; break;    // GOTHIC LETTER NINE HUNDRED
 279             case 0x0103D5: retval = 100; break;    // OLD PERSIAN NUMBER HUNDRED
 280             case 0x01085D: retval = 100; break;    // IMPERIAL ARAMAIC NUMBER ONE HUNDRED
 281             case 0x01085E: retval = 1000; break;   // IMPERIAL ARAMAIC NUMBER ONE THOUSAND
 282             case 0x01085F: retval = 10000; break;  // IMPERIAL ARAMAIC NUMBER TEN THOUSAND
 283             case 0x010919: retval = 100; break;    // PHOENICIAN NUMBER ONE HUNDRED
 284             case 0x010A46: retval = 100; break;    // KHAROSHTHI NUMBER ONE HUNDRED
 285             case 0x010A47: retval = 1000; break;   // KHAROSHTHI NUMBER ONE THOUSAND
 286             case 0x010A7E: retval = 50; break;     // OLD SOUTH ARABIAN NUMBER FIFTY
 287             case 0x010B5E: retval = 100; break;    // INSCRIPTIONAL PARTHIAN NUMBER ONE HUNDRED
 288             case 0x010B5F: retval = 1000; break;   // INSCRIPTIONAL PARTHIAN NUMBER ONE THOUSAND
 289             case 0x010B7E: retval = 100; break;    // INSCRIPTIONAL PAHLAVI NUMBER ONE HUNDRED
 290             case 0x010B7F: retval = 1000; break;   // INSCRIPTIONAL PAHLAVI NUMBER ONE THOUSAND
 291             case 0x010E6C: retval = 40; break;     // RUMI NUMBER FORTY
 292             case 0x010E6D: retval = 50; break;     // RUMI NUMBER FIFTY
 293             case 0x010E6E: retval = 60; break;     // RUMI NUMBER SIXTY
 294             case 0x010E6F: retval = 70; break;     // RUMI NUMBER SEVENTY
 295             case 0x010E70: retval = 80; break;     // RUMI NUMBER EIGHTY
 296             case 0x010E71: retval = 90; break;     // RUMI NUMBER NINETY
 297             case 0x010E72: retval = 100; break;    // RUMI NUMBER ONE HUNDRED
 298             case 0x010E73: retval = 200; break;    // RUMI NUMBER TWO HUNDRED
 299             case 0x010E74: retval = 300; break;    // RUMI NUMBER THREE HUNDRED
 300             case 0x010E75: retval = 400; break;    // RUMI NUMBER FOUR HUNDRED
 301             case 0x010E76: retval = 500; break;    // RUMI NUMBER FIVE HUNDRED
 302             case 0x010E77: retval = 600; break;    // RUMI NUMBER SIX HUNDRED
 303             case 0x010E78: retval = 700; break;    // RUMI NUMBER SEVEN HUNDRED
 304             case 0x010E79: retval = 800; break;    // RUMI NUMBER EIGHT HUNDRED
 305             case 0x010E7A: retval = 900; break;    // RUMI NUMBER NINE HUNDRED
 306             case 0x01105E: retval = 40; break;     // BRAHMI NUMBER FORTY
 307             case 0x01105F: retval = 50; break;     // BRAHMI NUMBER FIFTY
 308             case 0x011060: retval = 60; break;     // BRAHMI NUMBER SIXTY
 309             case 0x011061: retval = 70; break;     // BRAHMI NUMBER SEVENTY
 310             case 0x011062: retval = 80; break;     // BRAHMI NUMBER EIGHTY
 311             case 0x011063: retval = 90; break;     // BRAHMI NUMBER NINETY
 312             case 0x011064: retval = 100; break;    // BRAHMI NUMBER ONE HUNDRED
 313             case 0x011065: retval = 1000; break;   // BRAHMI NUMBER ONE THOUSAND
 314             case 0x012432: retval = 216000; break;   // CUNEIFORM NUMERIC SIGN SHAR2 TIMES GAL PLUS DISH
 315             case 0x012433: retval = 432000; break;   // CUNEIFORM NUMERIC SIGN SHAR2 TIMES GAL PLUS MIN
 316             case 0x01D36C: retval = 40; break;     // COUNTING ROD TENS DIGIT FOUR
 317             case 0x01D36D: retval = 50; break;     // COUNTING ROD TENS DIGIT FIVE
 318             case 0x01D36E: retval = 60; break;     // COUNTING ROD TENS DIGIT SIX
 319             case 0x01D36F: retval = 70; break;     // COUNTING ROD TENS DIGIT SEVEN
 320             case 0x01D370: retval = 80; break;     // COUNTING ROD TENS DIGIT EIGHT
 321             case 0x01D371: retval = 90; break;     // COUNTING ROD TENS DIGIT NINE





































 322             default: retval = -2; break;
 323             }
 324             
 325             break;
 326         case ($$valueJavaSupradecimal):           // Java supradecimal
 327             retval = (ch + ((val & $$maskDigitOffset) >> $$shiftDigitOffset) & $$maskDigit) + 10;
 328             break;
 329         }
 330         return retval;
 331     }
 332 
 333     boolean isWhitespace(int ch) {
 334         int props = getProperties(ch);
 335         return ((props & $$maskIdentifierInfo) == $$valueJavaWhitespace);
 336     }
 337 
 338     byte getDirectionality(int ch) {
 339         int val = getProperties(ch);
 340         byte directionality = (byte)((val & $$maskBidi) >> $$shiftBidi);
 341         if (directionality == 0xF ) {
   1 /*
   2  * Copyright (c) 2003, 2015, Oracle and/or its affiliates. All rights reserved.
   3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
   4  *
   5  * This code is free software; you can redistribute it and/or modify it
   6  * under the terms of the GNU General Public License version 2 only, as
   7  * published by the Free Software Foundation.  Oracle designates this
   8  * particular file as subject to the "Classpath" exception as provided
   9  * by Oracle in the LICENSE file that accompanied this code.
  10  *
  11  * This code is distributed in the hope that it will be useful, but WITHOUT
  12  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
  13  * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
  14  * version 2 for more details (a copy is included in the LICENSE file that
  15  * accompanied this code).
  16  *
  17  * You should have received a copy of the GNU General Public License version
  18  * 2 along with this work; if not, write to the Free Software Foundation,
  19  * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
  20  *
  21  * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
  22  * or visit www.oracle.com if you need additional information or have any


 227             case 0x10121: retval = 900; break;     // AEGEAN NUMBER NINE HUNDRED
 228             case 0x10122: retval = 1000; break;    // AEGEAN NUMBER ONE THOUSAND
 229             case 0x10123: retval = 2000; break;    // AEGEAN NUMBER TWO THOUSAND
 230             case 0x10124: retval = 3000; break;    // AEGEAN NUMBER THREE THOUSAND
 231             case 0x10125: retval = 4000; break;    // AEGEAN NUMBER FOUR THOUSAND
 232             case 0x10126: retval = 5000; break;    // AEGEAN NUMBER FIVE THOUSAND
 233             case 0x10127: retval = 6000; break;    // AEGEAN NUMBER SIX THOUSAND
 234             case 0x10128: retval = 7000; break;    // AEGEAN NUMBER SEVEN THOUSAND
 235             case 0x10129: retval = 8000; break;    // AEGEAN NUMBER EIGHT THOUSAND
 236             case 0x1012A: retval = 9000; break;    // AEGEAN NUMBER NINE THOUSAND
 237             case 0x1012B: retval = 10000; break;   // AEGEAN NUMBER TEN THOUSAND
 238             case 0x1012C: retval = 20000; break;   // AEGEAN NUMBER TWENTY THOUSAND
 239             case 0x1012D: retval = 30000; break;   // AEGEAN NUMBER THIRTY THOUSAND
 240             case 0x1012E: retval = 40000; break;   // AEGEAN NUMBER FORTY THOUSAND
 241             case 0x1012F: retval = 50000; break;   // AEGEAN NUMBER FIFTY THOUSAND
 242             case 0x10130: retval = 60000; break;   // AEGEAN NUMBER SIXTY THOUSAND
 243             case 0x10131: retval = 70000; break;   // AEGEAN NUMBER SEVENTY THOUSAND
 244             case 0x10132: retval = 80000; break;   // AEGEAN NUMBER EIGHTY THOUSAND
 245             case 0x10133: retval = 90000; break;   // AEGEAN NUMBER NINETY THOUSAND
 246             case 0x10323: retval = 50; break;      // OLD ITALIC NUMERAL FIFTY
 247             case 0x10144: retval = 50; break;      // ACROPHONIC ATTIC FIFTY
 248             case 0x10145: retval = 500; break;     // ACROPHONIC ATTIC FIVE HUNDRED
 249             case 0x10146: retval = 5000; break;    // ACROPHONIC ATTIC FIVE THOUSAND
 250             case 0x10147: retval = 50000; break;   // ACROPHONIC ATTIC FIFTY THOUSAND
 251             case 0x1014A: retval = 50; break;      // ACROPHONIC ATTIC FIFTY TALENTS
 252             case 0x1014B: retval = 100; break;     // ACROPHONIC ATTIC ONE HUNDRED TALENTS
 253             case 0x1014C: retval = 500; break;     // ACROPHONIC ATTIC FIVE HUNDRED TALENTS
 254             case 0x1014D: retval = 1000; break;    // ACROPHONIC ATTIC ONE THOUSAND TALENTS
 255             case 0x1014E: retval = 5000; break;    // ACROPHONIC ATTIC FIVE THOUSAND TALENTS
 256             case 0x10151: retval = 50; break;      // ACROPHONIC ATTIC FIFTY STATERS
 257             case 0x10152: retval = 100; break;     // ACROPHONIC ATTIC ONE HUNDRED STATERS
 258             case 0x10153: retval = 500; break;     // ACROPHONIC ATTIC FIVE HUNDRED STATERS
 259             case 0x10154: retval = 1000; break;    // ACROPHONIC ATTIC ONE THOUSAND STATERS
 260             case 0x10155: retval = 10000; break;   // ACROPHONIC ATTIC TEN THOUSAND STATERS
 261             case 0x10156: retval = 50000; break;   // ACROPHONIC ATTIC FIFTY THOUSAND STATERS
 262             case 0x10166: retval = 50; break;      // ACROPHONIC TROEZENIAN FIFTY
 263             case 0x10167: retval = 50; break;      // ACROPHONIC TROEZENIAN FIFTY ALTERNATE FORM
 264             case 0x10168: retval = 50; break;      // ACROPHONIC HERMIONIAN FIFTY
 265             case 0x10169: retval = 50; break;      // ACROPHONIC THESPIAN FIFTY
 266             case 0x1016A: retval = 100; break;     // ACROPHONIC THESPIAN ONE HUNDRED
 267             case 0x1016B: retval = 300; break;     // ACROPHONIC THESPIAN THREE HUNDRED
 268             case 0x1016C: retval = 500; break;     // ACROPHONIC EPIDAUREAN FIVE HUNDRED
 269             case 0x1016D: retval = 500; break;     // ACROPHONIC TROEZENIAN FIVE HUNDRED
 270             case 0x1016E: retval = 500; break;     // ACROPHONIC THESPIAN FIVE HUNDRED
 271             case 0x1016F: retval = 500; break;     // ACROPHONIC CARYSTIAN FIVE HUNDRED
 272             case 0x10170: retval = 500; break;     // ACROPHONIC NAXIAN FIVE HUNDRED
 273             case 0x10171: retval = 1000; break;    // ACROPHONIC THESPIAN ONE THOUSAND
 274             case 0x10172: retval = 5000; break;    // ACROPHONIC THESPIAN FIVE THOUSAND
 275             case 0x10174: retval = 50; break;      // ACROPHONIC STRATIAN FIFTY MNAS
 276             case 0x102ED: retval = 40; break;      // COPTIC EPACT NUMBER FORTY
 277             case 0x102EE: retval = 50; break;      // COPTIC EPACT NUMBER FIFTY
 278             case 0x102EF: retval = 60; break;      // COPTIC EPACT NUMBER SIXTY
 279             case 0x102F0: retval = 70; break;      // COPTIC EPACT NUMBER SEVENTY
 280             case 0x102F1: retval = 80; break;      // COPTIC EPACT NUMBER EIGHTY
 281             case 0x102F2: retval = 90; break;      // COPTIC EPACT NUMBER NINETY
 282             case 0x102F3: retval = 100; break;     // COPTIC EPACT NUMBER ONE HUNDRED
 283             case 0x102F4: retval = 200; break;     // COPTIC EPACT NUMBER TWO HUNDRED
 284             case 0x102F5: retval = 300; break;     // COPTIC EPACT NUMBER THREE HUNDRED
 285             case 0x102F6: retval = 400; break;     // COPTIC EPACT NUMBER FOUR HUNDRED
 286             case 0x102F7: retval = 500; break;     // COPTIC EPACT NUMBER FIVE HUNDRED
 287             case 0x102F8: retval = 600; break;     // COPTIC EPACT NUMBER SIX HUNDRED
 288             case 0x102F9: retval = 700; break;     // COPTIC EPACT NUMBER SEVEN HUNDRED
 289             case 0x102FA: retval = 800; break;     // COPTIC EPACT NUMBER EIGHT HUNDRED
 290             case 0x102FB: retval = 900; break;     // COPTIC EPACT NUMBER NINE HUNDRED
 291             case 0x10341: retval = 90; break;      // GOTHIC LETTER NINETY
 292             case 0x1034A: retval = 900; break;     // GOTHIC LETTER NINE HUNDRED
 293             case 0x103D5: retval = 100; break;     // OLD PERSIAN NUMBER HUNDRED
 294             case 0x1085D: retval = 100; break;     // IMPERIAL ARAMAIC NUMBER ONE HUNDRED
 295             case 0x1085E: retval = 1000; break;    // IMPERIAL ARAMAIC NUMBER ONE THOUSAND
 296             case 0x1085F: retval = 10000; break;   // IMPERIAL ARAMAIC NUMBER TEN THOUSAND
 297             case 0x108AF: retval = 100; break;     // NABATAEAN NUMBER ONE HUNDRED
 298             case 0x10919: retval = 100; break;     // PHOENICIAN NUMBER ONE HUNDRED
 299             case 0x10A46: retval = 100; break;     // KHAROSHTHI NUMBER ONE HUNDRED
 300             case 0x10A47: retval = 1000; break;    // KHAROSHTHI NUMBER ONE THOUSAND
 301             case 0x10A7E: retval = 50; break;      // OLD SOUTH ARABIAN NUMBER FIFTY
 302             case 0x10AEF: retval = 100; break;     // MANICHAEAN NUMBER ONE HUNDRED
 303             case 0x10B5E: retval = 100; break;     // INSCRIPTIONAL PARTHIAN NUMBER ONE HUNDRED
 304             case 0x10B5F: retval = 1000; break;    // INSCRIPTIONAL PARTHIAN NUMBER ONE THOUSAND
 305             case 0x10B7E: retval = 100; break;     // INSCRIPTIONAL PAHLAVI NUMBER ONE HUNDRED
 306             case 0x10B7F: retval = 1000; break;    // INSCRIPTIONAL PAHLAVI NUMBER ONE THOUSAND
 307             case 0x10BAF: retval = 100; break;     // PSALTER PAHLAVI NUMBER ONE HUNDRED
 308             case 0x10E6C: retval = 40; break;      // RUMI NUMBER FORTY
 309             case 0x10E6D: retval = 50; break;      // RUMI NUMBER FIFTY
 310             case 0x10E6E: retval = 60; break;      // RUMI NUMBER SIXTY
 311             case 0x10E6F: retval = 70; break;      // RUMI NUMBER SEVENTY
 312             case 0x10E70: retval = 80; break;      // RUMI NUMBER EIGHTY
 313             case 0x10E71: retval = 90; break;      // RUMI NUMBER NINETY
 314             case 0x10E72: retval = 100; break;     // RUMI NUMBER ONE HUNDRED
 315             case 0x10E73: retval = 200; break;     // RUMI NUMBER TWO HUNDRED
 316             case 0x10E74: retval = 300; break;     // RUMI NUMBER THREE HUNDRED
 317             case 0x10E75: retval = 400; break;     // RUMI NUMBER FOUR HUNDRED
 318             case 0x10E76: retval = 500; break;     // RUMI NUMBER FIVE HUNDRED
 319             case 0x10E77: retval = 600; break;     // RUMI NUMBER SIX HUNDRED
 320             case 0x10E78: retval = 700; break;     // RUMI NUMBER SEVEN HUNDRED
 321             case 0x10E79: retval = 800; break;     // RUMI NUMBER EIGHT HUNDRED
 322             case 0x10E7A: retval = 900; break;     // RUMI NUMBER NINE HUNDRED
 323             case 0x1105E: retval = 40; break;      // BRAHMI NUMBER FORTY
 324             case 0x1105F: retval = 50; break;      // BRAHMI NUMBER FIFTY
 325             case 0x11060: retval = 60; break;      // BRAHMI NUMBER SIXTY
 326             case 0x11061: retval = 70; break;      // BRAHMI NUMBER SEVENTY
 327             case 0x11062: retval = 80; break;      // BRAHMI NUMBER EIGHTY
 328             case 0x11063: retval = 90; break;      // BRAHMI NUMBER NINETY
 329             case 0x11064: retval = 100; break;     // BRAHMI NUMBER ONE HUNDRED
 330             case 0x11065: retval = 1000; break;    // BRAHMI NUMBER ONE THOUSAND
 331             case 0x111ED: retval = 40; break;      // SINHALA ARCHAIC NUMBER FORTY
 332             case 0x111EE: retval = 50; break;      // SINHALA ARCHAIC NUMBER FIFTY
 333             case 0x111EF: retval = 60; break;      // SINHALA ARCHAIC NUMBER SIXTY
 334             case 0x111F0: retval = 70; break;      // SINHALA ARCHAIC NUMBER SEVENTY
 335             case 0x111F1: retval = 80; break;      // SINHALA ARCHAIC NUMBER EIGHTY
 336             case 0x111F2: retval = 90; break;      // SINHALA ARCHAIC NUMBER NINETY
 337             case 0x111F3: retval = 100; break;     // SINHALA ARCHAIC NUMBER ONE HUNDRED
 338             case 0x111F4: retval = 1000; break;    // SINHALA ARCHAIC NUMBER ONE THOUSAND
 339             case 0x118ED: retval = 40; break;      // WARANG CITI NUMBER FORTY
 340             case 0x118EE: retval = 50; break;      // WARANG CITI NUMBER FIFTY
 341             case 0x118EF: retval = 60; break;      // WARANG CITI NUMBER SIXTY
 342             case 0x118F0: retval = 70; break;      // WARANG CITI NUMBER SEVENTY
 343             case 0x118F1: retval = 80; break;      // WARANG CITI NUMBER EIGHTY
 344             case 0x118F2: retval = 90; break;      // WARANG CITI NUMBER NINETY
 345             case 0x12432: retval = 216000; break;  // CUNEIFORM NUMERIC SIGN SHAR2 TIMES GAL PLUS DISH
 346             case 0x12433: retval = 432000; break;  // CUNEIFORM NUMERIC SIGN SHAR2 TIMES GAL PLUS MIN
 347             case 0x12467: retval = 40; break;      // CUNEIFORM NUMERIC SIGN ELAMITE FORTY
 348             case 0x12468: retval = 50; break;      // CUNEIFORM NUMERIC SIGN ELAMITE FIFTY
 349             case 0x16B5C: retval = 100; break;     // PAHAWH HMONG NUMBER HUNDREDS
 350             case 0x16B5D: retval = 10000; break;   // PAHAWH HMONG NUMBER TEN THOUSANDS
 351             case 0x16B5E: retval = 1000000; break; // PAHAWH HMONG NUMBER MILLIONS
 352             case 0x16B5F: retval = 100000000; break;// PAHAWH HMONG NUMBER HUNDRED MILLIONS
 353             case 0x1D36C: retval = 40; break;      // COUNTING ROD TENS DIGIT FOUR
 354             case 0x1D36D: retval = 50; break;      // COUNTING ROD TENS DIGIT FIVE
 355             case 0x1D36E: retval = 60; break;      // COUNTING ROD TENS DIGIT SIX
 356             case 0x1D36F: retval = 70; break;      // COUNTING ROD TENS DIGIT SEVEN
 357             case 0x1D370: retval = 80; break;      // COUNTING ROD TENS DIGIT EIGHT
 358             case 0x1D371: retval = 90; break;      // COUNTING ROD TENS DIGIT NINE
 359             default: retval = -2; break;
 360             }
 361             
 362             break;
 363         case ($$valueJavaSupradecimal):           // Java supradecimal
 364             retval = (ch + ((val & $$maskDigitOffset) >> $$shiftDigitOffset) & $$maskDigit) + 10;
 365             break;
 366         }
 367         return retval;
 368     }
 369 
 370     boolean isWhitespace(int ch) {
 371         int props = getProperties(ch);
 372         return ((props & $$maskIdentifierInfo) == $$valueJavaWhitespace);
 373     }
 374 
 375     byte getDirectionality(int ch) {
 376         int val = getProperties(ch);
 377         byte directionality = (byte)((val & $$maskBidi) >> $$shiftBidi);
 378         if (directionality == 0xF ) {
< prev index next >