跳转至

API 参考

欢迎阅读 LeviLamina API 参考文档。本节详细介绍了 ll/api 下每个模块的类说明、方法签名、使用示例和平台差异。

模块总览

LeviLamina 的 API 按以下模块组织:

基础设施

模块 说明 适用范围
Base(基础类型) 基本类型、宏、概念和元编程工具 通用
Expected(错误处理) Expected<T>Error 类型的错误处理 通用
Config(配置系统) 基于 JSON 序列化的配置加载与保存 通用
Reflection(反射) 编译期反射、序列化和反序列化 通用

核心系统

模块 说明 适用范围
Mod(模组系统) 模组生命周期管理、清单和模组管理器 通用
Event(事件系统) 事件总线、监听器和内置事件(玩家、世界、实体、服务器、客户端) 通用 / 服务端 / 客户端
Command(命令系统) 命令注册、重载、枚举和执行 通用
Service(服务系统) 服务注册、发现和 Bedrock 引擎访问器 通用 / 服务端 / 客户端
Form(表单 UI) 交互式 UI 表单(Simple、Modal、Custom) 通用

I/O 与日志

模块 说明 适用范围
IO & Logger(日志系统) 日志器、输出目标、格式化器和文件工具 通用
I18n(国际化) 国际化与本地化支持 通用

异步与线程

模块 说明 适用范围
Coroutine(协程) 协程任务、生成器、执行器和 async/await 通用
Thread(线程工具) 线程池、服务器线程执行器和同步原语 通用
Chrono(游戏时间) 游戏刻时钟、服务器时钟和时间工具 通用

数据与工具

模块 说明 适用范围
Data(数据结构) 键值数据库、依赖图、版本号和容器 通用
Utils(工具函数) 系统、字符串、哈希、随机数、文件、Base64 和错误处理工具 通用

底层

模块 说明 适用范围
Memory & Hook(内存与钩子) 内存操作、函数钩子和签名匹配 通用
Network(网络) 自定义数据包注册和处理 通用

仅客户端

模块 说明 适用范围
Input(输入系统) 键盘/鼠标输入绑定和输入事件 仅客户端

适用范围说明

  • 通用 — 在服务端和客户端构建中均可使用。头文件位于 src/ll/api/
  • 服务端 — 服务端特有的扩展。头文件位于 src-server/ll/api/
  • 客户端 — 客户端特有的扩展。头文件位于 src-client/ll/api/

约定

本参考文档中的所有代码示例:

  • 包含必要的 #include 指令
  • 首次出现时使用完全限定的命名空间
  • 可在 C++20 和 LeviLamina 构建环境下编译
  • 使用 LLAPI / LLNDAPI 宏导出函数(详见 Base(基础类型)