TypePHP 编译器
https://swoole.com/aot/
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
2.0 KiB
2.0 KiB
TypePHP 编译器内部文档
本目录包含编译器实现、兼容性、构建模式和专项设计文档。用户侧使用手册位于独立的 aot/docs 仓库;这里的研究报告和重构计划可能描述历史状态,当前行为应以代码、测试和兼容性清单为准。
当前权威文档
- AOT 与 PHP 不兼容特性清单:当前限制的简明清单。
- 不兼容性分类:区分 Hard Limit、Intentional Rule、Pending 和 Partial。
- 编译器命令行:当前 CLI 参数和项目配置。
- 编译模式:binary、extension、library 模式。
- 快速入门:最小编译流程。
- 编译期函数:
any()、refval()、objval()、expected()、unexpected()和关键词方法。 - 原生类型、高精度类型、Std 容器。
- 通用与扩展方法、Generator。
- 类继承、混合 C++/PHP。
架构与维护
研究与历史资料
hhvm-review.md、kphp-review.md、peachpie-review.md、phpstan-design-analysis.md、php-src-optimizer-analysis.md 以及专利草案用于记录调研时点的比较和设计背景,不作为当前功能清单。
维护规则
- 当前兼容性变化同时更新
INCOMPATIBLE_PHP_FEATURES.md和分类文档。 - 所有语法和语义限制统一链接到当前兼容性清单,避免维护重复清单。
- 功能是否支持应以 PHPT/PHPUnit 回归测试为依据。
- 历史研究文档保留原始比较结论,并在需要时注明调研日期,不应悄然改写为当前状态。