feat: 增加了analyzer, compiler不再分析并且报错, 只生产 bytecode, analyzer作为前端结束最后一道防线检查代码,同时引入一个简单的LSP

This commit is contained in:
2026-02-23 19:57:28 +08:00
parent 852dd27836
commit b7bb889676
28 changed files with 26665 additions and 3153 deletions

View File

@@ -53,6 +53,20 @@ target("ObjectTest")
add_files("src/Object/Object.cpp")
add_files("src/Object/ObjectTest.cpp")
target("AnalyzerTest")
add_files("src/Core/*.cpp")
add_files("src/Token/Token.cpp")
add_files("src/Error/Error.cpp")
add_files("src/Lexer/Lexer.cpp")
add_files("src/Ast/Operator.cpp")
add_files("src/Parser/ExprParser.cpp")
add_files("src/Parser/StmtParser.cpp")
add_files("src/Parser/Parser.cpp")
add_files("src/Sema/Analyzer.cpp")
add_files("src/Sema/AnalyzerTest.cpp")
target("CompilerTest")
add_files("src/Core/*.cpp")
add_files("src/Token/Token.cpp")
@@ -66,12 +80,31 @@ target("CompilerTest")
add_files("src/Object/Object.cpp")
add_files("src/Sema/Analyzer.cpp")
add_files("src/Compiler/ExprCompiler.cpp")
add_files("src/Compiler/StmtCompiler.cpp")
add_files("src/Compiler/Compiler.cpp")
add_files("src/Compiler/CompileTest.cpp")
target("LSP")
add_files("src/Core/*.cpp")
add_files("src/Token/Token.cpp")
add_files("src/Error/Error.cpp")
add_files("src/Lexer/Lexer.cpp")
add_files("src/Ast/Operator.cpp")
add_files("src/Parser/ExprParser.cpp")
add_files("src/Parser/StmtParser.cpp")
add_files("src/Parser/Parser.cpp")
add_files("src/Sema/Analyzer.cpp")
add_files("src/LSP/FigLSPServer.cpp")
set_filename("Fig-LSP")
target("Fig")
add_files("src/Core/*.cpp")
add_files("src/Token/Token.cpp")
@@ -85,6 +118,8 @@ target("Fig")
add_files("src/Object/Object.cpp")
add_files("src/Sema/Analyzer.cpp")
add_files("src/Compiler/ExprCompiler.cpp")
add_files("src/Compiler/StmtCompiler.cpp")
add_files("src/Compiler/Compiler.cpp")