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

📄 asnparser.jj

📁 ASN.1工具源代码,包括编译源码生成工具和各种基本类型构造类型的编解码实现代码
💻 JJ
📖 第 1 页 / 共 5 页
字号:
void Imports() : {/*@bgen(jjtree) Imports */  ASTImports jjtn000 = new ASTImports(this, JJTIMPORTS);  boolean jjtc000 = true;  jjtree.openNodeScope(jjtn000);/*@egen*/} {/*@bgen(jjtree) Imports */   try {/*@egen*/    <IMPORTS_TKN> [SymbolsImported()] <SEMI_COLON_TKN>/*@bgen(jjtree)*/   } catch (Throwable jjte000) {     if (jjtc000) {       jjtree.clearNodeScope(jjtn000);       jjtc000 = false;     } else {       jjtree.popNode();     }     if (jjte000 instanceof RuntimeException) {       throw (RuntimeException)jjte000;     }     if (jjte000 instanceof ParseException) {       throw (ParseException)jjte000;     }     throw (Error)jjte000;   } finally {     if (jjtc000) {       jjtree.closeNodeScope(jjtn000, true);     }   }/*@egen*/ }void SymbolsImported() : {/*@bgen(jjtree) SymbolsImported */  ASTSymbolsImported jjtn000 = new ASTSymbolsImported(this, JJTSYMBOLSIMPORTED);  boolean jjtc000 = true;  jjtree.openNodeScope(jjtn000);/*@egen*/} {/*@bgen(jjtree) SymbolsImported */   try {/*@egen*/    SymbolsFromModuleList()/*@bgen(jjtree)*/   } catch (Throwable jjte000) {     if (jjtc000) {       jjtree.clearNodeScope(jjtn000);       jjtc000 = false;     } else {       jjtree.popNode();     }     if (jjte000 instanceof RuntimeException) {       throw (RuntimeException)jjte000;     }     if (jjte000 instanceof ParseException) {       throw (ParseException)jjte000;     }     throw (Error)jjte000;   } finally {     if (jjtc000) {       jjtree.closeNodeScope(jjtn000, true);     }   }/*@egen*/ }void SymbolsFromModuleList() : {/*@bgen(jjtree) SymbolsFromModuleList */  ASTSymbolsFromModuleList jjtn000 = new ASTSymbolsFromModuleList(this, JJTSYMBOLSFROMMODULELIST);  boolean jjtc000 = true;  jjtree.openNodeScope(jjtn000);/*@egen*/} {/*@bgen(jjtree) SymbolsFromModuleList */   try {/*@egen*/    SymbolsFromModule() (SymbolsFromModule())*/*@bgen(jjtree)*/   } catch (Throwable jjte000) {     if (jjtc000) {       jjtree.clearNodeScope(jjtn000);       jjtc000 = false;     } else {       jjtree.popNode();     }     if (jjte000 instanceof RuntimeException) {       throw (RuntimeException)jjte000;     }     if (jjte000 instanceof ParseException) {       throw (ParseException)jjte000;     }     throw (Error)jjte000;   } finally {     if (jjtc000) {       jjtree.closeNodeScope(jjtn000, true);     }   }/*@egen*/}void SymbolsFromModule() : {/*@bgen(jjtree) SymbolsFromModule */                             ASTSymbolsFromModule jjtn000 = new ASTSymbolsFromModule(this, JJTSYMBOLSFROMMODULE);                             boolean jjtc000 = true;                             jjtree.openNodeScope(jjtn000);/*@egen*/ String module; } {/*@bgen(jjtree) SymbolsFromModule */   try {/*@egen*/    SymbolList() <FROM_TKN>  ModuleIdentifier()/*@bgen(jjtree)*/   } catch (Throwable jjte000) {     if (jjtc000) {       jjtree.clearNodeScope(jjtn000);       jjtc000 = false;     } else {       jjtree.popNode();     }     if (jjte000 instanceof RuntimeException) {       throw (RuntimeException)jjte000;     }     if (jjte000 instanceof ParseException) {       throw (ParseException)jjte000;     }     throw (Error)jjte000;   } finally {     if (jjtc000) {       jjtree.closeNodeScope(jjtn000, true);     }   }/*@egen*/ }void SymbolList() : {/*@bgen(jjtree) SymbolList */  ASTSymbolList jjtn000 = new ASTSymbolList(this, JJTSYMBOLLIST);  boolean jjtc000 = true;  jjtree.openNodeScope(jjtn000);/*@egen*/} {/*@bgen(jjtree) SymbolList */   try {/*@egen*/    Symbol() (<COMMA_TKN> Symbol())*/*@bgen(jjtree)*/   } catch (Throwable jjte000) {     if (jjtc000) {       jjtree.clearNodeScope(jjtn000);       jjtc000 = false;     } else {       jjtree.popNode();     }     if (jjte000 instanceof RuntimeException) {       throw (RuntimeException)jjte000;     }     if (jjte000 instanceof ParseException) {       throw (ParseException)jjte000;     }     throw (Error)jjte000;   } finally {     if (jjtc000) {       jjtree.closeNodeScope(jjtn000, true);     }   }/*@egen*/ }void Symbol() : {/*@bgen(jjtree) Symbol */  ASTSymbol jjtn000 = new ASTSymbol(this, JJTSYMBOL);  boolean jjtc000 = true;  jjtree.openNodeScope(jjtn000);/*@egen*/} {/*@bgen(jjtree) Symbol */   try {/*@egen*/    typereference()/*@bgen(jjtree)*/                   {                     jjtree.closeNodeScope(jjtn000, true);                     jjtc000 = false;                   }/*@egen*/ { jjtn000.which = 1; } | identifier()/*@bgen(jjtree)*/                {                  jjtree.closeNodeScope(jjtn000, true);                  jjtc000 = false;                }/*@egen*/ { jjtn000.which = 2; } | DefinedMacroName()/*@bgen(jjtree)*/                      {                        jjtree.closeNodeScope(jjtn000, true);                        jjtc000 = false;                      }/*@egen*/ { jjtn000.which = 3; }/*@bgen(jjtree)*/   } catch (Throwable jjte000) {     if (jjtc000) {       jjtree.clearNodeScope(jjtn000);       jjtc000 = false;     } else {       jjtree.popNode();     }     if (jjte000 instanceof RuntimeException) {       throw (RuntimeException)jjte000;     }     if (jjte000 instanceof ParseException) {       throw (ParseException)jjte000;     }     throw (Error)jjte000;   } finally {     if (jjtc000) {       jjtree.closeNodeScope(jjtn000, true);     }   }/*@egen*/}void AssignmentList() : {/*@bgen(jjtree) AssignmentList */  ASTAssignmentList jjtn000 = new ASTAssignmentList(this, JJTASSIGNMENTLIST);  boolean jjtc000 = true;  jjtree.openNodeScope(jjtn000);/*@egen*/} {/*@bgen(jjtree) AssignmentList */  try {/*@egen*/   Assignment() [<SEMI_COLON_TKN>] ( Assignment() [<SEMI_COLON_TKN>] )*/*@bgen(jjtree)*/  } catch (Throwable jjte000) {    if (jjtc000) {      jjtree.clearNodeScope(jjtn000);      jjtc000 = false;    } else {      jjtree.popNode();    }    if (jjte000 instanceof RuntimeException) {      throw (RuntimeException)jjte000;    }    if (jjte000 instanceof ParseException) {      throw (ParseException)jjte000;    }    throw (Error)jjte000;  } finally {    if (jjtc000) {      jjtree.closeNodeScope(jjtn000, true);    }  }/*@egen*/}void Assignment() : {/*@bgen(jjtree) Assignment */  ASTAssignment jjtn000 = new ASTAssignment(this, JJTASSIGNMENT);  boolean jjtc000 = true;  jjtree.openNodeScope(jjtn000);/*@egen*/} {/*@bgen(jjtree) Assignment */   try {/*@egen*/    LOOKAHEAD(2)  MacroDefinition() |  TypeAssignment() |  ValueAssignment()/*@bgen(jjtree)*/   } catch (Throwable jjte000) {     if (jjtc000) {       jjtree.clearNodeScope(jjtn000);       jjtc000 = false;     } else {       jjtree.popNode();     }     if (jjte000 instanceof RuntimeException) {       throw (RuntimeException)jjte000;     }     if (jjte000 instanceof ParseException) {       throw (ParseException)jjte000;     }     throw (Error)jjte000;   } finally {     if (jjtc000) {       jjtree.closeNodeScope(jjtn000, true);     }   }/*@egen*/}void MacroDefinition() : {/*@bgen(jjtree) MacroDefinition */  ASTMacroDefinition jjtn000 = new ASTMacroDefinition(this, JJTMACRODEFINITION);  boolean jjtc000 = true;  jjtree.openNodeScope(jjtn000);/*@egen*/ } {/*@bgen(jjtree) MacroDefinition */   try {/*@egen*/   (<TC_TKN> | <OBJECTTYPE_TKN> | typereference()) <MACRO_TKN> <GETS_TKN> 	<BEGIN_TKN>  MacroBody() <END_TKN>/*@bgen(jjtree)*/   } catch (Throwable jjte000) {     if (jjtc000) {       jjtree.clearNodeScope(jjtn000);       jjtc000 = false;     } else {       jjtree.popNode();     }     if (jjte000 instanceof RuntimeException) {       throw (RuntimeException)jjte000;     }     if (jjte000 instanceof ParseException) {       throw (ParseException)jjte000;     }     throw (Error)jjte000;   } finally {     if (jjtc000) {       jjtree.closeNodeScope(jjtn000, true);     }   }/*@egen*/}JAVACODEvoid MacroBody() {/*@bgen(jjtree) MacroBody */ASTMacroBody jjtn000 = new ASTMacroBody(this, JJTMACROBODY);boolean jjtc000 = true;jjtree.openNodeScope(jjtn000);try {/*@egen*/	  Token tok;  int nesting = 1;  while (true) {    tok = getToken(1);    if (tok.kind == END_TKN) {	break;	    }    tok = getNextToken();  }/*@bgen(jjtree)*/} finally {  if (jjtc000) {    jjtree.closeNodeScope(jjtn000, true);  }}/*@egen*/}void MacroReference() : {/*@bgen(jjtree) MacroReference */  ASTMacroReference jjtn000 = new ASTMacroReference(this, JJTMACROREFERENCE);  boolean jjtc000 = true;  jjtree.openNodeScope(jjtn000);/*@egen*/} {/*@bgen(jjtree) MacroReference */   try {/*@egen*/    typereference() | DefinedMacroName()/*@bgen(jjtree)*/   } catch (Throwable jjte000) {     if (jjtc000) {       jjtree.clearNodeScope(jjtn000);       jjtc000 = false;     } else {       jjtree.popNode();     }     if (jjte000 instanceof RuntimeException) {       throw (RuntimeException)jjte000;     }     if (jjte000 instanceof ParseException) {       throw (ParseException)jjte000;     }     throw (Error)jjte000;   } finally {     if (jjtc000) {       jjtree.closeNodeScope(jjtn000, true);     }   }/*@egen*/ }void TypeAssignment() : {/*@bgen(jjtree) TypeAssignment */  ASTTypeAssignment jjtn000 = new ASTTypeAssignment(this, JJTTYPEASSIGNMENT);  boolean jjtc000 = true;  jjtree.openNodeScope(jjtn000);/*@egen*/ }{/*@bgen(jjtree) TypeAssignment */   try {/*@egen*/   typereference()  <GETS_TKN>   GlobalType()/*@bgen(jjtree)*/   } catch (Throwable jjte000) {     if (jjtc000) {       jjtree.clearNodeScope(jjtn000);       jjtc000 = false;     } else {       jjtree.popNode();     }     if (jjte000 instanceof RuntimeException) {       throw (RuntimeException)jjte000;     }     if (jjte000 instanceof ParseException) {       throw (ParseException)jjte000;     }     throw (Error)jjte000;   } finally {     if (jjtc000) {       jjtree.closeNodeScope(jjtn000, true);     }   }/*@egen*/}void GlobalType() : {/*@bgen(jjtree) GlobalType */  ASTGlobalType jjtn000 = new ASTGlobalType(this, JJTGLOBALTYPE);  boolean jjtc000 = true;  jjtree.openNodeScope(jjtn000);/*@egen*/ }{/*@bgen(jjtree) GlobalType */  try {/*@egen*/  (     Type()/*@bgen(jjtree)*/           {             jjtree.closeNodeScope(jjtn000, true);             jjtc000 = false;           }/*@egen*/ { jjtn000.which = 1; }   |      DefinedMacroType()/*@bgen(jjtree)*/                       {                         jjtree.closeNodeScope(jjtn000, true);                         jjtc000 = false;                       }/*@egen*/ { jjtn000.which = 2; }  )/*@bgen(jjtree)*/  } catch (Throwable jjte000) {    if (jjtc000) {      jjtree.clearNodeScope(jjtn000);      jjtc000 = false;    } else {      jjtree.popNode();    }    if (jjte000 instanceof RuntimeException) {      throw (RuntimeException)jjte000;    }    if (jjte000 instanceof ParseException) {      throw (ParseException)jjte000;    }    throw (Error)jjte000;  } finally {    if (jjtc000) {      jjtree.closeNodeScope(jjtn000, true);    }  }/*@egen*/}void Type() : {/*@bgen(jjtree) Type */  ASTType jjtn000 = new ASTType(this, JJTTYPE);  boolean jjtc000 = true;  jjtree.openNodeScope(jjtn000);/*@egen*/ }{/*@bgen(jjtree) Type */   try {/*@egen*/    (     LOOKAHEAD(2) BuiltinType() { jjtn000.which = 1; }    |       DefinedType() { jjtn000.which = 2; }   )  [LOOKAHEAD(2) SubtypeSpec()]/*@bgen(jjtree)*/   } catch (Throwable jjte000) {     if (jjtc000) {       jjtree.clearNodeScope(jjtn000);       jjtc000 = false;     } else {       jjtree.popNode();     }     if (jjte000 instanceof RuntimeException) {       throw (RuntimeException)jjte000;     }     if (jjte000 instanceof ParseException) {       throw (ParseException)jjte000;     }     throw (Error)jjte000;   } finally {     if (jjtc000) {       jjtree.closeNodeScope(jjtn000, true);     }   }/*@egen*/ }void DefinedType() : {/*@bgen(jjtree) DefinedType */  ASTDefinedType jjtn000 = new ASTDefinedType(this, JJTDEFINEDTYPE);  boolean jjtc000 = true;  jjtree.openNodeScope(jjtn000);/*@egen*/ } {/*@bgen(jjtree) DefinedType */  try {/*@egen*/    [LOOKAHEAD(2) modulereference() <DOT_TKN>]  typereference()/*@bgen(jjtree)*/  } catch (Throwable jjte000) {    if (jjtc000) {      jjtree.clearNodeScope(jjtn000);      jjtc000 = false;    } else {      jjtree.popNode();    }    if (jjte000 instanceof RuntimeException) {      throw (RuntimeException)jjte000;    }    if (jjte000 instanceof ParseException) {      throw (ParseException)jjte000;    }    throw (Error)jjte000;  } finally {    if (jjtc000) {      jjtree.closeNodeScope(jjtn000, true);    }  }/*@egen*/ }void BuiltinType() : {/*@bgen(jjtree) BuiltinType */  ASTBuiltinType jjtn000 = new ASTBuiltinType(this, JJTBUILTINTYPE);

⌨️ 快捷键说明

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