添加缺失的 doxy
This commit is contained in:
@@ -1,5 +1,13 @@
|
|||||||
|
/*!
|
||||||
|
@file src/Core/Core.hpp
|
||||||
|
@brief Core总合集
|
||||||
|
@author PuqiAR (im@puqiar.top)
|
||||||
|
@date 2026-02-14
|
||||||
|
*/
|
||||||
|
|
||||||
#pragma once
|
#pragma once
|
||||||
|
|
||||||
#include <Core/CoreInfos.hpp>
|
#include <Core/CoreInfos.hpp>
|
||||||
#include <Core/CoreIO.hpp>
|
#include <Core/CoreIO.hpp>
|
||||||
#include <Core/RuntimeTime.hpp>
|
#include <Core/RuntimeTime.hpp>
|
||||||
|
#include <Core/SourceLocations.hpp>
|
||||||
@@ -1,3 +1,10 @@
|
|||||||
|
/*!
|
||||||
|
@file src/Core/CoreIO.cpp
|
||||||
|
@brief 标准输入输出链接
|
||||||
|
@author PuqiAR (im@puqiar.top)
|
||||||
|
@date 2026-02-14
|
||||||
|
*/
|
||||||
|
|
||||||
#include <Core/CoreIO.hpp>
|
#include <Core/CoreIO.hpp>
|
||||||
#include <Core/CoreInfos.hpp>
|
#include <Core/CoreInfos.hpp>
|
||||||
|
|
||||||
|
|||||||
@@ -1,3 +1,10 @@
|
|||||||
|
/*!
|
||||||
|
@file src/Core/CoreIO.hpp
|
||||||
|
@brief 标准输入输出链接定义
|
||||||
|
@author PuqiAR (im@puqiar.top)
|
||||||
|
@date 2026-02-14
|
||||||
|
*/
|
||||||
|
|
||||||
#pragma once
|
#pragma once
|
||||||
|
|
||||||
#include <iostream>
|
#include <iostream>
|
||||||
|
|||||||
@@ -1,3 +1,10 @@
|
|||||||
|
/*!
|
||||||
|
@file src/Core/CoreInfos.hpp
|
||||||
|
@brief 核心系统信息
|
||||||
|
@author PuqiAR (im@puqiar.top)
|
||||||
|
@date 2026-02-14
|
||||||
|
*/
|
||||||
|
|
||||||
#pragma once
|
#pragma once
|
||||||
|
|
||||||
#include <Deps/String/String.hpp>
|
#include <Deps/String/String.hpp>
|
||||||
|
|||||||
@@ -1,3 +1,10 @@
|
|||||||
|
/*!
|
||||||
|
@file src/Core/RuntimeTime.cpp
|
||||||
|
@brief 系统时间库实现(steady_clock)
|
||||||
|
@author PuqiAR (im@puqiar.top)
|
||||||
|
@date 2026-02-14
|
||||||
|
*/
|
||||||
|
|
||||||
#include <Core/RuntimeTime.hpp>
|
#include <Core/RuntimeTime.hpp>
|
||||||
|
|
||||||
#include <cassert>
|
#include <cassert>
|
||||||
|
|||||||
@@ -1,3 +1,10 @@
|
|||||||
|
/*!
|
||||||
|
@file src/Core/RuntimeTime.hpp
|
||||||
|
@brief 系统时间库定义
|
||||||
|
@author PuqiAR (im@puqiar.top)
|
||||||
|
@date 2026-02-14
|
||||||
|
*/
|
||||||
|
|
||||||
#pragma once
|
#pragma once
|
||||||
|
|
||||||
#include <chrono>
|
#include <chrono>
|
||||||
|
|||||||
@@ -1,3 +1,10 @@
|
|||||||
|
/*!
|
||||||
|
@file src/Core/SourceLocations
|
||||||
|
@brief SourcePosition + SourceLocation定义,全局代码定位
|
||||||
|
@author PuqiAR (im@puqiar.top)
|
||||||
|
@date 2026-02-14
|
||||||
|
*/
|
||||||
|
|
||||||
#pragma once
|
#pragma once
|
||||||
|
|
||||||
#include <Deps/Deps.hpp>
|
#include <Deps/Deps.hpp>
|
||||||
|
|||||||
@@ -141,6 +141,7 @@ namespace Fig
|
|||||||
), fileName, "[internal parser]", magic_enum::enum_name(state).data());
|
), fileName, "[internal parser]", magic_enum::enum_name(state).data());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* Expressions */
|
||||||
Result<LiteralExpr *, Error> parseLiteralExpr(); // 当前token为literal时调用
|
Result<LiteralExpr *, Error> parseLiteralExpr(); // 当前token为literal时调用
|
||||||
Result<IdentiExpr *, Error> parseIdentiExpr(); // 当前token为Identifier调用
|
Result<IdentiExpr *, Error> parseIdentiExpr(); // 当前token为Identifier调用
|
||||||
|
|
||||||
@@ -150,9 +151,12 @@ namespace Fig
|
|||||||
std::unordered_set<TokenType> getTerminators(); // 返回当前state的终止条件(终止符)
|
std::unordered_set<TokenType> getTerminators(); // 返回当前state的终止条件(终止符)
|
||||||
bool shouldTerminate(); // 通过state判断该不该终止表达式解析
|
bool shouldTerminate(); // 通过state判断该不该终止表达式解析
|
||||||
|
|
||||||
public:
|
|
||||||
Result<Expr *, Error> parseExpression(BindingPower = 0);
|
Result<Expr *, Error> parseExpression(BindingPower = 0);
|
||||||
|
|
||||||
|
/* Statements */
|
||||||
|
|
||||||
|
public:
|
||||||
|
|
||||||
DynArray<AstNode *> parseAll();
|
DynArray<AstNode *> parseAll();
|
||||||
};
|
};
|
||||||
}; // namespace Fig
|
}; // namespace Fig
|
||||||
@@ -18,12 +18,12 @@ int main()
|
|||||||
|
|
||||||
Lexer lexer(source, fileName);
|
Lexer lexer(source, fileName);
|
||||||
Parser parser(lexer, srcManager, fileName);
|
Parser parser(lexer, srcManager, fileName);
|
||||||
const auto &result = parser.parseExpression();
|
// const auto &result = parser.parseExpression();
|
||||||
if (!result)
|
// if (!result)
|
||||||
{
|
// {
|
||||||
ReportError(result.error(), srcManager);
|
// ReportError(result.error(), srcManager);
|
||||||
return 1;
|
// return 1;
|
||||||
}
|
// }
|
||||||
Expr *expr = *result;
|
// Expr *expr = *result;
|
||||||
std::cout << expr->toString() << '\n';
|
// std::cout << expr->toString() << '\n';
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user