title: 标准库 description: @lux/std、@lux/gmod、少分配 API 和命名约定。
标准库
Lux 标准库有意保持很小。它不会改写 table、string、math 或 GMod 全局表,
也不提供链式包装对象。你显式导入需要的模块,生成 Lua 时它们会变成普通局部变量。
@lux/std
@lux/std 是纯 Lua/GLua 可用的工具包,不依赖 GMod 全局。
arr:稠密一基数组。dict:键值表。set:布尔集合表。str:字符串工具。num:数字工具。func:小函数工具。pool:表复用工具。
@lux/std 导入与使用
少分配 API
简单名 API 通常会分配新表,适合一次性转换和非热路径。
分配新表的简单 API
以 Into 或 InPlace 结尾的 API 复用调用方提供的表,适合 HUD 绘制、Think
hook、VGUI layout 这类每帧路径。
复用输出表
@lux/gmod
@lux/gmod 是 GMod 专用工具包,可以使用 IsValid、hook、timer、net、
util、player、ents、Color 和 vgui 等全局。
validhookxtimerxnetxjsonplayersentsxcolorvgui
@lux/gmod 导入与使用
netx.register 内部使用 server { ... } 运行域块,所以 util.AddNetworkString
只会进入服务端产物。