亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? switchgenerator.java

?? 主要的怎么樣結合java 和 javascript!
?? JAVA
?? 第 1 頁 / 共 2 頁
字號:
/* -*- Mode: java; tab-width: 4; indent-tabs-mode: 1; c-basic-offset: 4 -*- * * The contents of this file are subject to the Netscape Public * License Version 1.1 (the "License"); you may not use this file * except in compliance with the License. You may obtain a copy of * the License at http://www.mozilla.org/NPL/ * * Software distributed under the License is distributed on an "AS * IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or * implied. See the License for the specific language governing * rights and limitations under the License. * * The Original Code is Rhino code, released * May 6, 1999. * * The Initial Developer of the Original Code is Netscape * Communications Corporation.  Portions created by Netscape are * Copyright (C) 1997-1999 Netscape Communications Corporation. All * Rights Reserved. * * Contributor(s): * Igor Bukanov * * Alternatively, the contents of this file may be used under the * terms of the GNU Public License (the "GPL"), in which case the * provisions of the GPL are applicable instead of those above. * If you wish to allow use of your version of this file only * under the terms of the GPL and not to allow others to use your * version of this file under the NPL, indicate your decision by * deleting the provisions above and replace them with the notice * and other provisions required by the GPL.  If you do not delete * the provisions above, a recipient may use your version of this * file under either the NPL or the GPL. */package org.mozilla.javascript.tools.idswitch;import org.mozilla.javascript.EvaluatorException;import org.mozilla.javascript.tools.ToolErrorReporter;public class SwitchGenerator {    String v_switch_label = "L0";    String v_label = "L";    String v_s = "s";    String v_c = "c";    String v_guess = "X";    String v_id = "id";    String v_length_suffix = "_length";    int use_if_threshold = 3;    int char_tail_test_threshold = 2;    private IdValuePair[] pairs;    private String default_value;    private int[] columns;    private boolean c_was_defined;    private CodePrinter P;    private ToolErrorReporter R;    private String source_file;    public CodePrinter getCodePrinter() { return P; }    public void setCodePrinter(CodePrinter value) { P = value; }    public ToolErrorReporter getReporter() { return R; }    public void setReporter(ToolErrorReporter value) { R = value; }    public String getSourceFileName() { return source_file; }    public void setSourceFileName(String value) { source_file = value; }    public void generateSwitch(String[] pairs, String default_value) {        int N = pairs.length / 2;        IdValuePair[] id_pairs = new IdValuePair[N];        for (int i = 0; i != N; ++i) {            id_pairs[i] = new IdValuePair(pairs[2 * i], pairs[2 * i + 1]);        }        generateSwitch(id_pairs, default_value);    }    public void generateSwitch(IdValuePair[] pairs, String default_value) {        int begin = 0;        int end = pairs.length;        if (begin == end) { return; }        this.pairs = pairs;        this.default_value = default_value;        generate_body(begin, end, 2);    }    private void generate_body(int begin, int end, int indent_level) {        P.indent(indent_level);        P.p(v_switch_label); P.p(": { ");        P.p(v_id); P.p(" = "); P.p(default_value);        P.p("; String "); P.p(v_guess); P.p(" = null;");        c_was_defined = false;        int c_def_begin = P.getOffset();        P.p(" int "); P.p(v_c); P.p(';');        int c_def_end = P.getOffset();        P.nl();        generate_length_switch(begin, end, indent_level + 1);        if (!c_was_defined) {            P.erase(c_def_begin, c_def_end);        }        P.indent(indent_level + 1);        P.p("if ("); P.p(v_guess); P.p("!=null && ");        P.p(v_guess); P.p("!="); P.p(v_s);        P.p(" && !"); P.p(v_guess); P.p(".equals("); P.p(v_s); P.p(")) ");        P.p(v_id); P.p(" = "); P.p(default_value); P.p(";"); P.nl();        P.line(indent_level, "}");    }    private void generate_length_switch(int begin, int end, int indent_level) {        sort_pairs(begin, end, -1);        check_all_is_different(begin, end);        int lengths_count = count_different_lengths(begin, end);        columns = new int[pairs[end  - 1].idLength];        boolean use_if;        if (lengths_count <= use_if_threshold) {            use_if = true;            if (lengths_count != 1) {                P.indent(indent_level);                P.p("int "); P.p(v_s); P.p(v_length_suffix);                P.p(" = "); P.p(v_s); P.p(".length();");                P.nl();            }        }        else {            use_if = false;            P.indent(indent_level);            P.p(v_label); P.p(": switch (");            P.p(v_s); P.p(".length()) {");            P.nl();        }        int same_length_begin = begin;        int cur_l = pairs[begin].idLength, l = 0;        for (int i = begin;;) {            ++i;            if (i == end || (l = pairs[i].idLength) != cur_l) {                int next_indent;                if (use_if) {                    P.indent(indent_level);                    if (same_length_begin != begin) { P.p("else "); }                    P.p("if (");                    if (lengths_count == 1) {                        P.p(v_s); P.p(".length()==");                    }                    else {                        P.p(v_s); P.p(v_length_suffix); P.p("==");                    }                    P.p(cur_l);                    P.p(") {");                    next_indent = indent_level + 1;                }                else {                    P.indent(indent_level);                    P.p("case "); P.p(cur_l); P.p(":");                    next_indent = indent_level + 1;                }                generate_letter_switch                    (same_length_begin, i, next_indent, !use_if, use_if);                if (use_if) {                    P.p("}"); P.nl();                }                else {                    P.p("break "); P.p(v_label); P.p(";"); P.nl();                }                if (i == end) { break; }                same_length_begin = i;                cur_l = l;            }        }        if (!use_if) {            P.indent(indent_level); P.p("}"); P.nl();        }    }    private void generate_letter_switch        (int begin, int end,         int indent_level, boolean label_was_defined, boolean inside_if)    {        int L = pairs[begin].idLength;        for (int i = 0; i != L; ++i) {            columns[i] = i;        }        generate_letter_switch_r            (begin, end, L, indent_level, label_was_defined, inside_if);    }    private boolean generate_letter_switch_r        (int begin, int end, int L,         int indent_level, boolean label_was_defined, boolean inside_if)    {        boolean next_is_unreachable = false;        if (begin + 1 == end) {            P.p(' ');            IdValuePair pair = pairs[begin];            if (L > char_tail_test_threshold) {                P.p(v_guess); P.p("="); P.qstring(pair.id); P.p(";");                P.p(v_id); P.p("="); P.p(pair.value); P.p(";");            }            else {                if (L == 0) {                    next_is_unreachable = true;                    P.p(v_id); P.p("="); P.p(pair.value);                    P.p("; break "); P.p(v_switch_label); P.p(";");                }                else {                    P.p("if (");                    int column = columns[0];                    P.p(v_s); P.p(".charAt("); P.p(column); P.p(")==");                    P.qchar(pair.id.charAt(column));                    for (int i = 1; i != L; ++i) {                        P.p(" && ");                        column = columns[i];                        P.p(v_s); P.p(".charAt("); P.p(column); P.p(")==");                        P.qchar(pair.id.charAt(column));                    }                    P.p(") {");                    P.p(v_id); P.p("="); P.p(pair.value);                    P.p("; break "); P.p(v_switch_label); P.p(";}");                }            }            P.p(' ');            return next_is_unreachable;        }

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲国产精品一区二区尤物区| ww久久中文字幕| 成人午夜免费视频| 国产福利91精品| 国产精品一级片在线观看| 精品国产乱码久久久久久影片| 99久久精品免费| 成人aa视频在线观看| 蜜桃在线一区二区三区| 国产精品久久久一区麻豆最新章节| 91精品国产欧美一区二区18| av不卡免费在线观看| 国产91精品免费| 成人国产精品视频| 99国产麻豆精品| 波多野结衣的一区二区三区| 激情欧美一区二区| 国产一区二区三区黄视频| 国产美女娇喘av呻吟久久| 国产一区二区三区黄视频| 国产麻豆精品一区二区| 国产成人亚洲综合a∨婷婷| 国产黄色精品视频| 成人ar影院免费观看视频| a亚洲天堂av| 91丨九色丨国产丨porny| 91免费观看视频| 欧美日韩国产乱码电影| 777亚洲妇女| 久久综合精品国产一区二区三区| 久久蜜桃av一区二区天堂| 中文字幕乱码久久午夜不卡 | 一本久久a久久免费精品不卡| 欧美aaaaaa午夜精品| 精品一区二区三区免费视频| 人人超碰91尤物精品国产| 亚洲国产一区在线观看| 天堂资源在线中文精品| 精品一区二区三区在线观看国产| 成人永久看片免费视频天堂| 色猫猫国产区一区二在线视频| 日本精品一区二区三区高清 | 激情丁香综合五月| 国产suv精品一区二区三区| 成人动漫中文字幕| 一本色道久久加勒比精品| 欧美综合天天夜夜久久| 欧美精品乱人伦久久久久久| 国产人伦精品一区二区| 亚洲欧美偷拍三级| 国产一区二区在线免费观看| 99久免费精品视频在线观看 | 色综合色狠狠综合色| 欧美乱熟臀69xxxxxx| 国产色产综合产在线视频| 一区二区三区高清| 国内精品伊人久久久久av一坑 | 日韩电影在线一区二区| jlzzjlzz欧美大全| 欧美成人欧美edvon| 亚洲一区影音先锋| 不卡一区二区三区四区| 日韩欧美国产一区二区在线播放| 国产精品夫妻自拍| 极品少妇xxxx精品少妇偷拍| 色综合久久久久综合99| 国产欧美日韩亚州综合| 蜜桃一区二区三区在线| 欧美日韩中文另类| 亚洲天天做日日做天天谢日日欢 | 欧洲人成人精品| 国产亚洲自拍一区| 日日夜夜一区二区| 一本一道久久a久久精品综合蜜臀| 欧美一区二区三区的| 亚洲一级二级三级| 高清国产一区二区| 亚洲精品在线免费播放| 午夜精彩视频在线观看不卡| 国产一区二区三区在线观看精品 | 免费观看在线综合| 欧美年轻男男videosbes| 欧美精品一区二区三区久久久| 亚洲国产人成综合网站| 国产乱子轮精品视频| 91精品国产综合久久香蕉的特点| 一区二区三区在线视频观看58| 国产91精品在线观看| 91精品黄色片免费大全| 亚洲男女毛片无遮挡| 成人午夜精品在线| 精品精品国产高清a毛片牛牛| 亚洲综合丁香婷婷六月香| av在线不卡网| 亚洲欧洲一区二区在线播放| 国产成人精品亚洲日本在线桃色 | 欧美精品自拍偷拍| 五月天丁香久久| 日韩欧美一二三四区| 久久精工是国产品牌吗| 久久一夜天堂av一区二区三区| 美女一区二区在线观看| 欧美精品一区二| av成人免费在线| 亚洲国产日日夜夜| 日韩视频永久免费| 国产激情偷乱视频一区二区三区| 国产日本欧美一区二区| 国产精品影音先锋| 亚洲精品一区二区精华| 日本不卡视频在线| 7777精品久久久大香线蕉 | 精品99一区二区三区| 成人三级在线视频| 久久久国产精华| 色综合天天综合狠狠| 亚洲亚洲精品在线观看| 制服丝袜亚洲播放| 免费看黄色91| 久久一区二区三区四区| 国产精品中文有码| 有坂深雪av一区二区精品| 色综合久久久久综合| 亚洲国产精品久久久久秋霞影院 | 免费在线观看一区二区三区| 国产亚洲成年网址在线观看| 在线视频一区二区免费| 国产综合久久久久久鬼色| 亚洲私人黄色宅男| 欧美tk—视频vk| 韩国av一区二区三区| 亚洲九九爱视频| 欧美丰满少妇xxxxx高潮对白 | 7777精品伊人久久久大香线蕉经典版下载| 久久综合综合久久综合| 亚洲国产精品99久久久久久久久| 欧美日韩一区二区三区视频 | 色天使久久综合网天天| 久久精品国产一区二区三区免费看| 中文字幕av在线一区二区三区| 欧美精品成人一区二区三区四区| 成人午夜碰碰视频| 久久精品av麻豆的观看方式| 亚洲一区二区高清| 国产精品美女www爽爽爽| 日韩一级免费观看| 欧洲一区在线电影| www.成人在线| 国产黄色精品网站| 国产一区二区精品久久| 五月天婷婷综合| 亚洲福利一区二区| 亚洲精品免费视频| 国产精品高潮呻吟| 国产精品福利电影一区二区三区四区| 日韩精品一区二区在线| 欧美日韩国产另类一区| 欧美在线|欧美| 欧美吻胸吃奶大尺度电影| 一本色道亚洲精品aⅴ| av影院午夜一区| 99热这里都是精品| 色综合欧美在线视频区| 99re视频精品| 色呦呦一区二区三区| 色综合久久中文综合久久97 | 成人精品小蝌蚪| 成人午夜大片免费观看| 成人毛片视频在线观看| aaa国产一区| 在线亚洲一区二区| 欧美性色欧美a在线播放| 在线视频你懂得一区| 欧美日韩国产高清一区二区三区 | 国产一区三区三区| 国产精品乡下勾搭老头1| 加勒比av一区二区| 成人性生交大片| 99精品国产91久久久久久| 成人免费av在线| 色婷婷综合激情| 91精品免费在线| 久久综合中文字幕| 亚洲国产高清在线观看视频| 中文字幕免费不卡| 亚洲午夜视频在线观看| 日韩av电影免费观看高清完整版 | 亚洲美女视频在线| 悠悠色在线精品| 狠狠狠色丁香婷婷综合久久五月| 成人精品一区二区三区四区| 欧美日韩久久一区| 中文字幕乱码亚洲精品一区| 日韩中文字幕不卡| 色综合av在线| 亚洲国产成人自拍| 麻豆久久一区二区| 欧美日韩国产影片| 一区二区三区四区蜜桃| 国产精品亚洲一区二区三区在线|