home *** CD-ROM | disk | FTP | other *** search
/ S283 Planetary Science &… the Search for Life CD 3 / 0_CD-ROM.iso / install / jre1_3 / lib / rt.jar / sun / awt / CharToByteSymbol.class (.txt) < prev    next >
Encoding:
Java Class File  |  1979-12-31  |  2.6 KB  |  54 lines

  1. package sun.awt;
  2.  
  3. import sun.io.CharToByteISO8859_1;
  4. import sun.io.ConversionBufferFullException;
  5. import sun.io.UnknownCharacterException;
  6.  
  7. public class CharToByteSymbol extends CharToByteISO8859_1 {
  8.    private static byte[] table_math = new byte[]{34, 0, 100, 36, 0, -58, 68, -47, -50, -49, 0, 0, 0, 39, 0, 80, 0, -27, 45, 0, 0, -92, 0, 42, -80, -73, -42, 0, 0, -75, -91, 0, 0, 0, 0, -67, 0, 0, 0, -39, -38, -57, -56, -14, 0, 0, 0, 0, 0, 0, 0, 0, 92, 0, 0, 0, 0, 0, 0, 0, 126, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, -69, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -71, -70, 0, 0, -93, -77, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -52, -55, -53, 0, -51, -54, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -59, 0, -60, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 94, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -32, -41, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -68};
  9.    private static byte[] table_greek = new byte[]{65, 66, 71, 68, 69, 90, 72, 81, 73, 75, 76, 77, 78, 88, 79, 80, 82, 0, 83, 84, 85, 70, 67, 89, 87, 0, 0, 0, 0, 0, 0, 0, 97, 98, 103, 100, 101, 122, 104, 113, 105, 107, 108, 109, 110, 120, 111, 112, 114, 86, 115, 116, 117, 102, 99, 121, 119, 0, 0, 0, 0, 0, 0, 0, 74, -95, 0, 0, 106, 118};
  10.  
  11.    public String toString() {
  12.       return "Symbol";
  13.    }
  14.  
  15.    public boolean canConvert(char var1) {
  16.       if (var1 >= 8704 && var1 <= 8943) {
  17.          if (table_math[var1 - 8704] != 0) {
  18.             return true;
  19.          }
  20.       } else if (var1 >= 913 && var1 <= 982 && table_greek[var1 - 913] != 0) {
  21.          return true;
  22.       }
  23.  
  24.       return false;
  25.    }
  26.  
  27.    public int convert(char[] var1, int var2, int var3, byte[] var4, int var5, int var6) throws UnknownCharacterException, ConversionBufferFullException {
  28.       super.charOff = var2;
  29.       super.byteOff = var5;
  30.  
  31.       for(int var7 = var2; var7 < var3; ++var7) {
  32.          char var8 = var1[var7];
  33.          if (super.byteOff > var6) {
  34.             throw new ConversionBufferFullException();
  35.          }
  36.  
  37.          if (var8 >= 8704 && var8 <= 8943) {
  38.             var4[super.byteOff++] = table_math[var8 - 8704];
  39.          } else if (var8 >= 913 && var8 <= 982) {
  40.             var4[super.byteOff++] = table_greek[var8 - 913];
  41.          } else {
  42.             if (!super.subMode) {
  43.                super.badInputLength = 1;
  44.                throw new UnknownCharacterException();
  45.             }
  46.  
  47.             var4[super.byteOff++] = super.subBytes[0];
  48.          }
  49.       }
  50.  
  51.       return super.byteOff - var5;
  52.    }
  53. }
  54.