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

📄 asnparser.java

📁 ASN.1工具源代码,包括编译源码生成工具和各种基本类型构造类型的编解码实现代码
💻 JAVA
📖 第 1 页 / 共 5 页
字号:
    if (jjte000 instanceof RuntimeException) {      {if (true) throw (RuntimeException)jjte000;}    }    if (jjte000 instanceof ParseException) {      {if (true) throw (ParseException)jjte000;}    }    {if (true) throw (Error)jjte000;}    } finally {    if (jjtc000) {      jjtree.closeNodeScope(jjtn000, true);    }    }  }  final public void Type() throws ParseException {               /*@bgen(jjtree) Type */  ASTType jjtn000 = new ASTType(this, JJTTYPE);  boolean jjtc000 = true;  jjtree.openNodeScope(jjtn000);    try {      if (jj_2_2(2)) {        BuiltinType();                                  jjtn000.which = 1;      } else {        switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {        case UCASEFIRST_IDENT_TKN:          DefinedType();                     jjtn000.which = 2;          break;        default:          jj_la1[20] = jj_gen;          jj_consume_token(-1);          throw new ParseException();        }      }      if (jj_2_3(2)) {        SubtypeSpec();      } else {        ;      }    } catch (Throwable jjte000) {     if (jjtc000) {       jjtree.clearNodeScope(jjtn000);       jjtc000 = false;     } else {       jjtree.popNode();     }     if (jjte000 instanceof RuntimeException) {       {if (true) throw (RuntimeException)jjte000;}     }     if (jjte000 instanceof ParseException) {       {if (true) throw (ParseException)jjte000;}     }     {if (true) throw (Error)jjte000;}    } finally {     if (jjtc000) {       jjtree.closeNodeScope(jjtn000, true);     }    }  }  final public void DefinedType() throws ParseException {                      /*@bgen(jjtree) DefinedType */  ASTDefinedType jjtn000 = new ASTDefinedType(this, JJTDEFINEDTYPE);  boolean jjtc000 = true;  jjtree.openNodeScope(jjtn000);    try {      if (jj_2_4(2)) {        modulereference();        jj_consume_token(DOT_TKN);      } else {        ;      }      typereference();    } catch (Throwable jjte000) {    if (jjtc000) {      jjtree.clearNodeScope(jjtn000);      jjtc000 = false;    } else {      jjtree.popNode();    }    if (jjte000 instanceof RuntimeException) {      {if (true) throw (RuntimeException)jjte000;}    }    if (jjte000 instanceof ParseException) {      {if (true) throw (ParseException)jjte000;}    }    {if (true) throw (Error)jjte000;}    } finally {    if (jjtc000) {      jjtree.closeNodeScope(jjtn000, true);    }    }  }  final public void BuiltinType() throws ParseException {                      /*@bgen(jjtree) BuiltinType */  ASTBuiltinType jjtn000 = new ASTBuiltinType(this, JJTBUILTINTYPE);  boolean jjtc000 = true;  jjtree.openNodeScope(jjtn000);    try {      switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {      case INTEGER_TKN:        IntegerType();                  jjtree.closeNodeScope(jjtn000, true);                  jjtc000 = false;                  jjtn000.which = 0;        break;      case BIT_TKN:        BitStringType();                    jjtree.closeNodeScope(jjtn000, true);                    jjtc000 = false;                    jjtn000.which = 1;        break;      default:        jj_la1[21] = jj_gen;        if (jj_2_5(2)) {          SetOrSequenceType();                                     jjtree.closeNodeScope(jjtn000, true);                                     jjtc000 = false;                                     jjtn000.which = 2;        } else {          switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {          case SEQUENCE_TKN:          case SET_TKN:            SetOrSequenceOfType();                         jjtree.closeNodeScope(jjtn000, true);                         jjtc000 = false;                         jjtn000.which = 3;            break;          case CHOICE_TKN:            ChoiceType();                 jjtree.closeNodeScope(jjtn000, true);                 jjtc000 = false;                 jjtn000.which = 4;            break;          case LCASEFIRST_IDENT_TKN:            SelectionType();                    jjtree.closeNodeScope(jjtn000, true);                    jjtc000 = false;                    jjtn000.which = 5;            break;          case LEFTBRACKET_TKN:            TaggedType();                 jjtree.closeNodeScope(jjtn000, true);                 jjtc000 = false;                 jjtn000.which = 6;            break;          case ANY_TKN:            AnyType();              jjtree.closeNodeScope(jjtn000, true);              jjtc000 = false;              jjtn000.which = 7;            break;          case ENUMERATED_TKN:            EnumeratedType();                     jjtree.closeNodeScope(jjtn000, true);                     jjtc000 = false;                     jjtn000.which = 8;            break;          case OCTET_TKN:            jj_consume_token(OCTET_TKN);            jj_consume_token(STRING_TKN);                             jjtree.closeNodeScope(jjtn000, true);                             jjtc000 = false;                             jjtn000.which = 9;            break;          case OBJECT_IDENTIFIER_TKN:            jj_consume_token(OBJECT_IDENTIFIER_TKN);                           jjtree.closeNodeScope(jjtn000, true);                           jjtc000 = false;                           jjtn000.which = 10;            break;          case REAL_TKN:            jj_consume_token(REAL_TKN);              jjtree.closeNodeScope(jjtn000, true);              jjtc000 = false;              jjtn000.which = 11;            break;          case BOOLEAN_TKN:            jj_consume_token(BOOLEAN_TKN);                 jjtree.closeNodeScope(jjtn000, true);                 jjtc000 = false;                 jjtn000.which = 12;            break;          case NULL_TKN:            jj_consume_token(NULL_TKN);               jjtree.closeNodeScope(jjtn000, true);               jjtc000 = false;               jjtn000.which = 13;            break;          default:            jj_la1[22] = jj_gen;            jj_consume_token(-1);            throw new ParseException();          }        }      }    } catch (Throwable jjte000) {    if (jjtc000) {      jjtree.clearNodeScope(jjtn000);      jjtc000 = false;    } else {      jjtree.popNode();    }    if (jjte000 instanceof RuntimeException) {      {if (true) throw (RuntimeException)jjte000;}    }    if (jjte000 instanceof ParseException) {      {if (true) throw (ParseException)jjte000;}    }    {if (true) throw (Error)jjte000;}    } finally {    if (jjtc000) {      jjtree.closeNodeScope(jjtn000, true);    }    }  }  final public void EnumeratedType() throws ParseException {                         /*@bgen(jjtree) EnumeratedType */  ASTEnumeratedType jjtn000 = new ASTEnumeratedType(this, JJTENUMERATEDTYPE);  boolean jjtc000 = true;  jjtree.openNodeScope(jjtn000);    try {      jj_consume_token(ENUMERATED_TKN);      jj_consume_token(LEFTBRACE_TKN);      NamedNumberList();      jj_consume_token(RIGHTBRACE_TKN);    } catch (Throwable jjte000) {     if (jjtc000) {       jjtree.clearNodeScope(jjtn000);       jjtc000 = false;     } else {       jjtree.popNode();     }     if (jjte000 instanceof RuntimeException) {       {if (true) throw (RuntimeException)jjte000;}     }     if (jjte000 instanceof ParseException) {       {if (true) throw (ParseException)jjte000;}     }     {if (true) throw (Error)jjte000;}    } finally {     if (jjtc000) {       jjtree.closeNodeScope(jjtn000, true);     }    }  }  final public void IntegerType() throws ParseException {                      /*@bgen(jjtree) IntegerType */  ASTIntegerType jjtn000 = new ASTIntegerType(this, JJTINTEGERTYPE);  boolean jjtc000 = true;  jjtree.openNodeScope(jjtn000);    try {      jj_consume_token(INTEGER_TKN);      switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {      case LEFTBRACE_TKN:        jj_consume_token(LEFTBRACE_TKN);                                   jjtn000.hasnames = true;        NamedNumberList();        jj_consume_token(RIGHTBRACE_TKN);        break;      default:        jj_la1[23] = jj_gen;        ;      }    } catch (Throwable jjte000) {   if (jjtc000) {     jjtree.clearNodeScope(jjtn000);     jjtc000 = false;   } else {     jjtree.popNode();   }   if (jjte000 instanceof RuntimeException) {     {if (true) throw (RuntimeException)jjte000;}   }   if (jjte000 instanceof ParseException) {     {if (true) throw (ParseException)jjte000;}   }   {if (true) throw (Error)jjte000;}    } finally {   if (jjtc000) {     jjtree.closeNodeScope(jjtn000, true);   }    }  }  final public void BitStringType() throws ParseException {                        /*@bgen(jjtree) BitStringType */  ASTBitStringType jjtn000 = new ASTBitStringType(this, JJTBITSTRINGTYPE);  boolean jjtc000 = true;  jjtree.openNodeScope(jjtn000);    try {      jj_consume_token(BIT_TKN);      jj_consume_token(STRING_TKN);      switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {      case LEFTBRACE_TKN:        jj_consume_token(LEFTBRACE_TKN);                                             jjtn000.hasnames = true;        NamedNumberList();        jj_consume_token(RIGHTBRACE_TKN);        break;      default:        jj_la1[24] = jj_gen;        ;      }    } catch (Throwable jjte000) {    if (jjtc000) {      jjtree.clearNodeScope(jjtn000);      jjtc000 = false;    } else {      jjtree.popNode();    }    if (jjte000 instanceof RuntimeException) {      {if (true) throw (RuntimeException)jjte000;}    }    if (jjte000 instanceof ParseException) {      {if (true) throw (ParseException)jjte000;}    }    {if (true) throw (Error)jjte000;}    } finally {    if (jjtc000) {      jjtree.closeNodeScope(jjtn000, true);    }    }  }  final public void NamedNumberList() throws ParseException {                          /*@bgen(jjtree) NamedNumberList */  ASTNamedNumberList jjtn000 = new ASTNamedNumberList(this, JJTNAMEDNUMBERLIST);  boolean jjtc000 = true;  jjtree.openNodeScope(jjtn000);    try {      NamedNumber();      label_6:      while (true) {        switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {        case COMMA_TKN:          ;          break;        default:          jj_la1[25] = jj_gen;          break label_6;        }        jj_consume_token(COMMA_TKN);        NamedNumber();      }    } catch (Throwable jjte000) {    if (jjtc000) {      jjtree.clearNodeScope(jjtn000);      jjtc000 = false;    } else {      jjtree.popNode();    }    if (jjte000 instanceof RuntimeException) {      {if (true) throw (RuntimeException)jjte000;}    }    if (jjte000 instanceof ParseException) {      {if (true) throw (ParseException)jjte000;}    }    {if (true) throw (Error)jjte000;}    } finally {    if (jjtc000) {      jjtree.closeNodeScope(jjtn000, true);    }    }  }  final public void NamedNumber() throws ParseException {                      /*@bgen(jjtree) NamedNumber */  ASTNamedNumber jjtn000 = new ASTNamedNumber(this, JJTNAMEDNUMBER);  boolean jjtc000 = true;  jjtree.openNodeScope(jjtn000);    try {      identifier();      jj_consume_token(LEFTPAREN_TKN);      switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {      case NUMBER_ERANGE_TKN:      case NUMBER_TKN:      case MINUS_TKN:        SignedNumber();                                                  jjtn000.which=1;        break;      case LCASEFIRST_IDENT_TKN:      case UCASEFIRST_IDENT_TKN:        DefinedValue();                                                                                        jjtn000.which=2;        break;      default:        jj_la1[26] = jj_gen;        jj_consume_token(-1);        throw new ParseException();      }      jj_consume_token(RIGHTPAREN_TKN);    } catch (Throwable jjte000) {    if (jjtc000) {      jjtree.clearNodeScope(jjtn000);      jjtc000 = false;    } else {      jjtree.popNode();    }    if (jjte000 instanceof RuntimeException) {      {if (true) throw (RuntimeException)jjte000;}    }    if (jjte000 instanceof ParseException) {      {if (true) throw (ParseException)jjte000;}    }    {if (true) throw (Error)jjte000;}    } finally {    if (jjtc000) {      jjtree.closeNodeScope(jjtn000, true);    }    }  }  final public void SignedNumber() throws ParseException {                       /*@bgen(jjtree) SignedNumber */                        ASTSignedNumber jjtn000 = new ASTSignedNumber(this, JJTSIGNEDNUMBER);                        boolean jjtc000 = true;                        jjtree.openNodeScope(jjtn000);Token t;    try {      switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {      case MINUS_TKN:        jj_consume_token(MINUS_TKN);                jjtn000.is_neg = true;        break;      default:        jj_la1[27] = jj_gen;        ;      }      switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {      case NUMBER_TKN:        t = jj_consume_token(NUMBER_TKN);                                                                   jjtree.closeNodeScope(jjtn000, true);                                                                   jjtc000 = false;                                                                   jjtn000.number = t.image;        break;      case NUMBER_ERANGE_TKN:        t = jj_consume_token(NUMBER_ERANGE_TKN);                                                                          jjtree.closeNodeScope(jjtn000, true);                                                                          jjtc000 = false;                                                                          jjtn000.number = t.image;        break;      default:        jj_la1[28] = jj_gen;        jj_consume_token(-1);        throw new ParseException();      }    } finally {    if (jjtc000) {      jjtree.closeNodeScope(jjtn000, true);    }    }  }  final public void SetOrSequenceOfType() throws ParseException {                              /*@bgen(jjtree) SetOrSequenceOfType */  ASTSetOrSequenceOfType jjtn000 = new ASTSetOrSequenceOfType(this, JJTSETORSEQUENCEOFTYPE);

⌨️ 快捷键说明

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