Files
blackbird/pybot/pybot/__init__.py
T
qing bba7ee3eb4 feat(pybot): bot4cj 的 Python 迁移版(.mt 解析 + 硬件驱动 + 插件系统)
- parser: FSM 解析器与仓颉版逐语义对齐,修 S01/S02/S04/Q05
- robot/hardvars: 六类硬件变量工厂,修 r.cj:911 重名 FIXME、Q07 倒序释放
- plugin: Python 插件替代 Lua 桥接,修 S07 三级路径查找
- hd: i2c(每fd锁 Q03/S06)/spi/servo/kalman/mpu6050(S05/Q06)/speaker(S03 实声)
- modules: PCA9685 与 Lua 版逐字节对齐;ADS1115 重写(experimental);ADS1256 空桩
- tests: 42 项 pytest 全绿(Mock 总线 journal 断言)
- CLI: --dry-run / --test roundtrip / --verbose;运行时零第三方依赖
2026-08-09 18:57:03 +00:00

28 lines
803 B
Python

"""pybot —— 机器人 .mt 动作脚本解析器(bot4cj 的 Python 迁移版)
架构与 bot4cj(仓颉版)逐语义对齐:
.mt 脚本 → parser.MatrixParser → MatrixObject 列表
→ robot.RobotStruct(按 @块名分发硬件变量工厂)
→ active() / run() / deactive()
硬件驱动插件(modules/<Name>.py)替代仓颉版的 Lua 扩展层,
协议为 build(ctx) / call(ctx) / destroy(ctx) 三段生命周期。
迁移方案见 docs/reports/bot4cj_python_migration_dev_doc.md。
"""
__version__ = "0.1.0"
from .parser import ( # noqa: F401
MatrixObject,
MatrixParser,
MatrixSaver,
ParseError,
DoesNotSync,
MatrixIndexError,
get_mt,
parse_mt,
to_int,
)
from .robot import RobotStruct # noqa: F401