semantic-analyzer:Java语义分析器应用程序,用于Java编程语言的子集

上传者: 42156940 | 上传时间: 2022-05-17 11:03:24 | 文件大小: 38KB | 文件类型: ZIP
语义分析器 Java编程语言的子集的语义分析器。 :语义分析(也包括上下文敏感分析)是编译器构造过程中的一个过程,通常在解析后从源代码中收集必要的语义信息。 它通常包括类型检查,或确保在使用前声明了一个变量,该变量无法用扩展Backus–Naur形式描述,因此在解析过程中不容易检测到。 先决条件: 该应用程序是使用Java构建的,因此您应该在计算机上安装才能运行它。 特征: 词法分析。 语法分析(解析)。 语义分析。 用法: 将此存储库下载或克隆到您的计算机。 编译并运行带有命令行参数的任何Tester类(Testlexer,TestParser或TestSemantic)都指向测试文件路径。 javac Testlexer . java java Testlexer test_file_path 或者 javac TestParser . java java TestP

文件下载

资源详情

[{"title":"( 73 个子文件 38KB ) semantic-analyzer:Java语义分析器应用程序,用于Java编程语言的子集","children":[{"title":"semantic-analyzer-master","children":[{"title":".project <span style='color:#111;'> 401B </span>","children":null,"spread":false},{"title":"src","children":[{"title":"semantic","children":[{"title":"SemanticAnalyzer.java <span style='color:#111;'> 11.33KB </span>","children":null,"spread":false},{"title":"ErrorType.java <span style='color:#111;'> 817B </span>","children":null,"spread":false},{"title":"TestSemantic.java <span style='color:#111;'> 1.24KB </span>","children":null,"spread":false}],"spread":true},{"title":"ast","children":[{"title":"Times.java <span style='color:#111;'> 314B </span>","children":null,"spread":false},{"title":"MoreThan.java <span style='color:#111;'> 339B </span>","children":null,"spread":false},{"title":"IdentifierType.java <span style='color:#111;'> 274B </span>","children":null,"spread":false},{"title":"VarDecl.java <span style='color:#111;'> 340B </span>","children":null,"spread":false},{"title":"LessThanEqual.java <span style='color:#111;'> 349B </span>","children":null,"spread":false},{"title":"FloatLiteral.java <span style='color:#111;'> 287B </span>","children":null,"spread":false},{"title":"Modules.java <span style='color:#111;'> 337B </span>","children":null,"spread":false},{"title":"Formal.java <span style='color:#111;'> 338B </span>","children":null,"spread":false},{"title":"NewArray.java <span style='color:#111;'> 282B </span>","children":null,"spread":false},{"title":"IntegerArrayType.java <span style='color:#111;'> 142B </span>","children":null,"spread":false},{"title":"And.java <span style='color:#111;'> 310B </span>","children":null,"spread":false},{"title":"CharType.java <span style='color:#111;'> 143B </span>","children":null,"spread":false},{"title":"Divide.java <span style='color:#111;'> 335B </span>","children":null,"spread":false},{"title":"MoreThanEqual.java <span style='color:#111;'> 349B </span>","children":null,"spread":false},{"title":"Exp.java <span style='color:#111;'> 96B </span>","children":null,"spread":false},{"title":"Or.java <span style='color:#111;'> 328B </span>","children":null,"spread":false},{"title":"BooleanType.java <span style='color:#111;'> 137B </span>","children":null,"spread":false},{"title":"Minus.java <span style='color:#111;'> 314B </span>","children":null,"spread":false},{"title":"Assign.java <span style='color:#111;'> 362B </span>","children":null,"spread":false},{"title":"CharArrayType.java <span style='color:#111;'> 148B </span>","children":null,"spread":false},{"title":"Identifier.java <span style='color:#111;'> 250B </span>","children":null,"spread":false},{"title":"False.java <span style='color:#111;'> 130B </span>","children":null,"spread":false},{"title":"Statement.java <span style='color:#111;'> 102B </span>","children":null,"spread":false},{"title":"FloatArrayType.java <span style='color:#111;'> 148B </span>","children":null,"spread":false},{"title":"Equal.java <span style='color:#111;'> 333B </span>","children":null,"spread":false},{"title":"Declarations.java <span style='color:#111;'> 574B </span>","children":null,"spread":false},{"title":"ArrayAssign.java <span style='color:#111;'> 458B </span>","children":null,"spread":false},{"title":"LessThan.java <span style='color:#111;'> 320B </span>","children":null,"spread":false},{"title":"Type.java <span style='color:#111;'> 97B </span>","children":null,"spread":false},{"title":"BooleanArrayType.java <span style='color:#111;'> 151B </span>","children":null,"spread":false},{"title":"Plus.java <span style='color:#111;'> 312B </span>","children":null,"spread":false},{"title":"StatementList.java <span style='color:#111;'> 379B </span>","children":null,"spread":false},{"title":"Negative.java <span style='color:#111;'> 261B </span>","children":null,"spread":false},{"title":"IdentifierExp.java <span style='color:#111;'> 271B </span>","children":null,"spread":false},{"title":"ExpList.java <span style='color:#111;'> 343B </span>","children":null,"spread":false},{"title":"Program.java <span style='color:#111;'> 446B </span>","children":null,"spread":false},{"title":"BooleanLiteral.java <span style='color:#111;'> 301B </span>","children":null,"spread":false},{"title":"NotEqual.java <span style='color:#111;'> 339B </span>","children":null,"spread":false},{"title":"FloatType.java <span style='color:#111;'> 143B </span>","children":null,"spread":false},{"title":"While.java <span style='color:#111;'> 375B </span>","children":null,"spread":false},{"title":"VarDeclList.java <span style='color:#111;'> 527B </span>","children":null,"spread":false},{"title":"True.java <span style='color:#111;'> 129B </span>","children":null,"spread":false},{"title":"CharLiteral.java <span style='color:#111;'> 288B </span>","children":null,"spread":false},{"title":"If.java <span style='color:#111;'> 509B </span>","children":null,"spread":false},{"title":"FormalList.java <span style='color:#111;'> 365B </span>","children":null,"spread":false},{"title":"IntegerLiteral.java <span style='color:#111;'> 270B </span>","children":null,"spread":false},{"title":"IntegerType.java <span style='color:#111;'> 137B </span>","children":null,"spread":false},{"title":"ArrayLength.java <span style='color:#111;'> 264B </span>","children":null,"spread":false},{"title":"Not.java <span style='color:#111;'> 236B </span>","children":null,"spread":false},{"title":"Block.java <span style='color:#111;'> 282B </span>","children":null,"spread":false},{"title":"ArrayLookup.java <span style='color:#111;'> 350B </span>","children":null,"spread":false}],"spread":false},{"title":"parser","children":[{"title":"TestParser.java <span style='color:#111;'> 1.38KB </span>","children":null,"spread":false},{"title":"Parser.java <span style='color:#111;'> 15.86KB </span>","children":null,"spread":false}],"spread":true},{"title":"visitor","children":[{"title":"PrintVisitor.java <span style='color:#111;'> 8.57KB </span>","children":null,"spread":false},{"title":"Visitor.java <span style='color:#111;'> 1.80KB </span>","children":null,"spread":false}],"spread":true},{"title":"lexer","children":[{"title":"Lexer.java <span style='color:#111;'> 10.38KB </span>","children":null,"spread":false},{"title":"TokenType.java <span style='color:#111;'> 893B </span>","children":null,"spread":false},{"title":"TokenAttribute.java <span style='color:#111;'> 1.56KB </span>","children":null,"spread":false},{"title":"TestLexer.java <span style='color:#111;'> 2.43KB </span>","children":null,"spread":false},{"title":"Token.java <span style='color:#111;'> 691B </span>","children":null,"spread":false}],"spread":true}],"spread":true},{"title":"README.md <span style='color:#111;'> 4.05KB </span>","children":null,"spread":false},{"title":"tests","children":[{"title":"parser01.txt <span style='color:#111;'> 131B </span>","children":null,"spread":false},{"title":"lexer02.txt <span style='color:#111;'> 155B </span>","children":null,"spread":false},{"title":"lexer01.txt <span style='color:#111;'> 113B </span>","children":null,"spread":false},{"title":"semantic01.txt <span style='color:#111;'> 139B </span>","children":null,"spread":false},{"title":"parser02.txt <span style='color:#111;'> 145B </span>","children":null,"spread":false},{"title":"semantic02.txt <span style='color:#111;'> 123B </span>","children":null,"spread":false}],"spread":true},{"title":".classpath <span style='color:#111;'> 232B </span>","children":null,"spread":false},{"title":".gitignore <span style='color:#111;'> 6B </span>","children":null,"spread":false}],"spread":true}],"spread":true}]

评论信息

免责申明

【只为小站】的资源来自网友分享,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,【只为小站】 无法对用户传输的作品、信息、内容的权属或合法性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论 【只为小站】 经营者是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。
本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二条之规定,若资源存在侵权或相关问题请联系本站客服人员,zhiweidada#qq.com,请把#换成@,本站将给予最大的支持与配合,做到及时反馈和处理。关于更多版权及免责申明参见 版权及免责申明