⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 yylex.java

📁 实现JAVA界面的代码GWT
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
// Decompiled by Jad v1.5.7g. Copyright 2000 Pavel Kouznetsov.
// Jad home page: http://www.geocities.com/SiliconValley/Bridge/8617/jad.html
// Decompiler options: packimports(3) fieldsfirst ansi 
// Source File Name:   Yylex.java

package jxl.biff.formula;

import java.io.*;
import jxl.biff.WorkbookMethods;

// Referenced classes of package jxl.biff.formula:
//            Plus, Minus, Multiply, Divide, 
//            GreaterThan, Equal, LessThan, ArgumentSeparator, 
//            IntegerValue, RangeSeparator, OpenParentheses, CloseParentheses, 
//            GreaterEqual, NotEqual, LessEqual, CellReference, 
//            NameRange, StringFunction, DoubleValue, ColumnRange, 
//            CellReference3d, BooleanValue, Area, ColumnRange3d, 
//            Area3d, StringValue, FormulaException, ExternalSheet, 
//            ParseItem

class Yylex
{

    private final int YY_BUFFER_SIZE = 512;
    private final int YY_F = -1;
    private final int YY_NO_STATE = -1;
    private final int YY_NOT_ACCEPT = 0;
    private final int YY_START = 1;
    private final int YY_END = 2;
    private final int YY_NO_ANCHOR = 4;
    private final int YY_BOL = 0x10000;
    private final int YY_EOF = 0x10001;
    private boolean emptyString;
    private ExternalSheet externalSheet;
    private WorkbookMethods nameTable;
    private BufferedReader yy_reader;
    private int yy_buffer_index;
    private int yy_buffer_read;
    private int yy_buffer_start;
    private int yy_buffer_end;
    private char yy_buffer[];
    private int yychar;
    private int yyline;
    private boolean yy_at_bol;
    private int yy_lexical_state;
    private boolean yy_eof_done;
    private final int YYSTRING = 1;
    private final int YYINITIAL = 0;
    private final int yy_state_dtrans[] = {
        0, 31
    };
    private boolean yy_last_was_cr;
    private final int YY_E_INTERNAL = 0;
    private final int YY_E_MATCH = 1;
    private String yy_error_string[] = {
        "Error: Internal error.\n", "Error: Unmatched input.\n"
    };
    private int yy_acpt[] = {
        0, 4, 4, 4, 4, 4, 4, 4, 4, 4, 
        4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 
        4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 
        4, 4, 4, 0, 4, 4, 4, 4, 4, 0, 
        4, 0, 4, 0, 4, 0, 0, 0, 0, 0, 
        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 
        0, 0, 0, 0, 0, 0, 0, 0, 4, 0, 
        4, 0, 0, 0, 0, 0, 4, 0
    };
    private int yy_cmap[];
    private int yy_rmap[];
    private int yy_nxt[][];

    int getPos()
    {
        return yychar;
    }

    void setExternalSheet(ExternalSheet es)
    {
        externalSheet = es;
    }

    void setNameTable(WorkbookMethods nt)
    {
        nameTable = nt;
    }

    Yylex(Reader reader)
    {
        this();
        if(null == reader)
        {
            throw new Error("Error: Bad input stream initializer.");
        } else
        {
            yy_reader = new BufferedReader(reader);
            return;
        }
    }

    Yylex(InputStream instream)
    {
        this();
        if(null == instream)
        {
            throw new Error("Error: Bad input stream initializer.");
        } else
        {
            yy_reader = new BufferedReader(new InputStreamReader(instream));
            return;
        }
    }

    private Yylex()
    {
        yy_eof_done = false;
        yy_last_was_cr = false;
        yy_cmap = unpackFromString(1, 0x10002, "14:8,25:3,14:21,25,15,28,14,11,14:2,13,26,27,3,1,8,2,10,4,9:10,16,14,7,6,5,14:2,22,12:3,20,21,12:5,23,12:5,18,24,17,19,12:5,14:6,12:26,14:65413,0:2")[0];
        yy_rmap = unpackFromString(1, 78, "0,1:5,2,1,3,1,4,1:8,5,6,1,7,8,9,10,11,12,10,13,14,15,1,16,17,10,1:2,18,19,20,21,22,7,23,24,25,26,27,28,29,30,31,32,33,34,9,35,36,11,37,38,39,40,41,42,43,14,44,45,46,47,48,49,50,51,52,53")[0];
        yy_nxt = unpackFromString(54, 29, "1,2,3,4,5,6,7,8,9,10,33,39,33,41,-1:2,11,69,33:3,77,33:3,12,13,14,15,-1:35,16,-1:27,17,18,-1:31,10,43,-1:27,19,-1:6,72,-1:21,34,35,45,35,-1:2,46,47,35:8,-1,21,-1:11,22,-1:29,36,-1,36,-1:4,36:8,-1:13,24,-1:28,42,35,-1,35,-1:2,46,-1,35:8,-1,21,-1:11,26,-1:28,27,-1:6,63,-1:22,37,-1,37,-1:4,37:8,-1:13,30,-1:19,1,38:27,32,-1:9,19,20,45,20,-1:2,46,47,20:8,-1,21,-1:11,34,42,-1,42,-1:3,72,42:8,-1:5,38:27,-1:11,48,-1,48,-1:4,48:8,-1:13,42,35,-1,35,-1:2,46,-1,35:3,25,35:4,-1,21,-1:3,41:12,49,41:15,-1:9,42:2,-1,42,-1:4,42:8,-1:13,42,35,-1,35,-1:2,46,-1,35:3,28,35:4,-1,21,-1:11,19,-1:29,50,71,50,-1:4,50:8,-1:14,23,51,23,-1:4,23:8,-1:13,19,52,45,52,-1:3,47,52:8,-1:19,53,-1:22,24,55,56,55,-1:4,55:8,-1:14,23,-1,23,-1:4,23:8,-1:13,19,-1,45,-1:4,47,-1:22,57,74,57,-1:4,57:8,-1:13,26,58,59,58,-1:4,58:8,-1:13,24,-1,56,-1:26,27,60,61,60,-1:3,62,60:8,-1:13,26,-1,59,-1:26,27,-1,61,-1:4,62,-1:21,27,-1:29,29,64,29,-1:4,29:8,-1:14,65,75,65,-1:4,65:8,-1:14,29,-1,29,-1:4,29:8,-1:13,30,66,67,66,-1:4,66:8,-1:13,30,-1,67,-1:26,34,35,45,35,-1:2,46,47,35:2,40,35:5,-1,21,-1:11,19,20,45,20,-1:2,46,47,20,68,20:6,-1,21,-1:11,42,35,-1,35,-1:2,46,-1,35:7,44,-1,21,-1:12,50,-1,50,-1:4,50:8,-1:14,54,73,54,-1:4,54:8,-1:14,54,-1,54,-1:4,54:8,-1:14,57,-1,57,-1:4,57:8,-1:14,65,-1,65,-1:4,65:8,-1:13,34,35,45,35,-1:2,46,47,35:6,70,35,-1,21,-1:11,19,20,45,20,-1:2,46,47,20:5,76,20:2,-1,21,-1:2");
        yy_buffer = new char[512];
        yy_buffer_read = 0;
        yy_buffer_index = 0;
        yy_buffer_start = 0;
        yy_buffer_end = 0;
        yychar = 0;
        yyline = 0;
        yy_at_bol = true;
        yy_lexical_state = 0;
    }

    private void yybegin(int state)
    {
        yy_lexical_state = state;
    }

    private int yy_advance()
        throws IOException
    {
        if(yy_buffer_index < yy_buffer_read)
            return yy_buffer[yy_buffer_index++];
        if(0 != yy_buffer_start)
        {
            int i = yy_buffer_start;
            int j;
            for(j = 0; i < yy_buffer_read; j++)
            {
                yy_buffer[j] = yy_buffer[i];
                i++;
            }

            yy_buffer_end = yy_buffer_end - yy_buffer_start;
            yy_buffer_start = 0;
            yy_buffer_read = j;
            yy_buffer_index = j;
            int next_read = yy_reader.read(yy_buffer, yy_buffer_read, yy_buffer.length - yy_buffer_read);
            if(-1 == next_read)
                return 0x10001;
            yy_buffer_read = yy_buffer_read + next_read;
        }
        int next_read;
        for(; yy_buffer_index >= yy_buffer_read; yy_buffer_read = yy_buffer_read + next_read)
        {
            if(yy_buffer_index >= yy_buffer.length)
                yy_buffer = yy_double(yy_buffer);
            next_read = yy_reader.read(yy_buffer, yy_buffer_read, yy_buffer.length - yy_buffer_read);
            if(-1 == next_read)
                return 0x10001;
        }

        return yy_buffer[yy_buffer_index++];
    }

    private void yy_move_end()
    {
        if(yy_buffer_end > yy_buffer_start && '\n' == yy_buffer[yy_buffer_end - 1])
            yy_buffer_end--;
        if(yy_buffer_end > yy_buffer_start && '\r' == yy_buffer[yy_buffer_end - 1])
            yy_buffer_end--;
    }

    private void yy_mark_start()
    {
        for(int i = yy_buffer_start; i < yy_buffer_index; i++)
        {
            if('\n' == yy_buffer[i] && !yy_last_was_cr)
                yyline++;
            if('\r' == yy_buffer[i])
            {
                yyline++;
                yy_last_was_cr = true;
            } else
            {
                yy_last_was_cr = false;
            }
        }

        yychar = (yychar + yy_buffer_index) - yy_buffer_start;
        yy_buffer_start = yy_buffer_index;
    }

    private void yy_mark_end()
    {
        yy_buffer_end = yy_buffer_index;
    }

    private void yy_to_mark()
    {
        yy_buffer_index = yy_buffer_end;
        yy_at_bol = yy_buffer_end > yy_buffer_start && ('\r' == yy_buffer[yy_buffer_end - 1] || '\n' == yy_buffer[yy_buffer_end - 1] || '\u07EC' == yy_buffer[yy_buffer_end - 1] || '\u07ED' == yy_buffer[yy_buffer_end - 1]);
    }

    private String yytext()
    {
        return new String(yy_buffer, yy_buffer_start, yy_buffer_end - yy_buffer_start);
    }

    private int yylength()
    {
        return yy_buffer_end - yy_buffer_start;
    }

    private char[] yy_double(char buf[])
    {
        char newbuf[] = new char[2 * buf.length];
        for(int i = 0; i < buf.length; i++)
            newbuf[i] = buf[i];

        return newbuf;
    }

    private void yy_error(int code, boolean fatal)
    {
        System.out.print(yy_error_string[code]);
        System.out.flush();
        if(fatal)
            throw new Error("Fatal Error.\n");
        else
            return;
    }

    private int[][] unpackFromString(int size1, int size2, String st)
    {
        int colonIndex = -1;
        int sequenceLength = 0;
        int sequenceInteger = 0;
        int res[][] = new int[size1][size2];
        for(int i = 0; i < size1; i++)
        {
            for(int j = 0; j < size2; j++)
            {
                if(sequenceLength != 0)
                {
                    res[i][j] = sequenceInteger;
                    sequenceLength--;
                    continue;
                }
                int commaIndex = st.indexOf(44);
                String workString = commaIndex != -1 ? st.substring(0, commaIndex) : st;
                st = st.substring(commaIndex + 1);
                colonIndex = workString.indexOf(58);
                if(colonIndex == -1)
                {
                    res[i][j] = Integer.parseInt(workString);
                } else
                {
                    String lengthString = workString.substring(colonIndex + 1);
                    sequenceLength = Integer.parseInt(lengthString);
                    workString = workString.substring(0, colonIndex);
                    sequenceInteger = Integer.parseInt(workString);
                    res[i][j] = sequenceInteger;
                    sequenceLength--;
                }
            }

        }

        return res;
    }

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -