韩天峰
|
d90bf8a5fd
|
feat(compiler): 添加类常量支持和优化代码生成
- 引入 NodeAbstract 类型用于对象转换
- 移除 Stmt_Nop 语句的空注释生成
- 为 Foreach 循环体添加前置语句解析
- 简化对象类型检查逻辑
- 添加多个类常量测试用例
- 在预处理器和翻译器中处理 Stmt_Nop 语句类型
- 完善类常量声明、继承和访问功能
|
7 months ago |
韩天峰
|
25e567b3db
|
feat(php): 添加类定义功能支持
- 实现了 StaticPropertyFetch 类型检查方法
- 扩展了 ClassDef 构造函数以支持 flags 参数
- 添加了类继承时对 final 类的检查逻辑
- 更新了示例文件 call3.php 中的类结构
- 增加了多个类相关的测试用例文件
- 修改了后置操作解析逻辑以支持静态属性访问
- 在编译器基类中添加了类声明的错误处理
- 实现了对象包装器数组初始化
- 添加了对类可见性构造函数的支持测试
- 更新了接口定义的构造函数实现
|
7 months ago |
韩天峰
|
4ed56de30e
|
feat(php): 实现PHP编译器对引用参数的支持
- 修改CompilerBase.php以支持函数引用参数的正确处理
- 添加Reflection::isReferenceArg方法用于检查函数参数是否为引用类型
- 在处理函数调用时针对引用参数创建临时变量并正确传递引用
- 扩展支持对象属性获取作为引用参数的功能
- 添加iterators_006.phpt和iterators_007.phpt测试用例验证迭代器功能
- 添加ref_prop.php示例文件展示引用属性功能
- 重构多个算法示例文件以改进代码结构和可读性
|
7 months ago |
韩天峰
|
715abf458d
|
refactor(php): 重构 foreach 循环解析逻辑以支持对象迭代器
- 将原 parseForeach 方法拆分为 parseForeach 和 parseForeachArray 两个方法
- 添加对 Iterator 和 IteratorAggregate 接口的支持
- 实现对象属性遍历的备用方案,使用 get_object_vars 函数
- 添加新的测试用例 iterators_004.phpt 验证迭代器功能
- 添加新的测试用例 iterators_005.phpt 验证 Traversable 接口实现检查
- 为对象迭代创建临时变量并设置正确的类型标识
|
7 months ago |
韩天峰
|
749b4ec00d
|
修复迭代器实现,continue 时执行 next()
|
7 months ago |
韩天峰
|
c9d6e93f40
|
支持 Iterator/IteratorAggregate 对象 foreach 操作
|
7 months ago |
韩天峰
|
689b59bbda
|
处理继承或实现内置类和接口
|
7 months ago |
韩天峰
|
f8100988c4
|
update mixed
|
7 months ago |
韩天峰
|
bdea6f77cc
|
添加类的单元测试
|
7 months ago |
韩天峰
|
7ae7e12ad8
|
增加标准库单测文件
|
8 months ago |
韩天峰
|
16787142d6
|
修复错误,增加单测
|
8 months ago |
韩天峰
|
0033a243d0
|
添加更多测试,php std 标准库测试,支持 list 语法
|
8 months ago |
韩天峰
|
a54b04118d
|
支持错误抑制操作符,但仅支持控制一个函数
|
8 months ago |
韩天峰
|
04f265ae24
|
全局变量
|
8 months ago |
韩天峰
|
730e0e45f1
|
支持 empty 语法
|
8 months ago |
韩天峰
|
73f84217db
|
支持静态类属性读写语法
|
8 months ago |
韩天峰
|
5f14139ace
|
Native 常量处理
|
8 months ago |
韩天峰
|
4dd4b61218
|
添加更多單元測試
|
8 months ago |
韩天峰
|
4f095c301d
|
添加更多單元測試
|
8 months ago |
韩天峰
|
c1d759de57
|
动态函数调用语法 [2]
|
8 months ago |
韩天峰
|
fb10132b6c
|
动态函数调用语法
|
8 months ago |
韩天峰
|
739152ba14
|
支持语法 **=
|
8 months ago |
韩天峰
|
4162b79113
|
try/catch 语法支持
|
8 months ago |
韩天峰
|
d2f02f4922
|
文件操作测试
|
8 months ago |
韩天峰
|
1a1134d974
|
对象操作,方法调用、静态方法调用、属性读取
|
8 months ago |
韩天峰
|
c9c558103c
|
数组操作处理
|
8 months ago |
韩天峰
|
bf69a539a1
|
字面量字符串优化,增加字面量表
|
8 months ago |
韩天峰
|
a25fe02e09
|
更新
|
8 months ago |
韩天峰
|
f072f944b2
|
函数定义处理
|
8 months ago |
韩天峰
|
72b7ebdfae
|
单测
|
8 months ago |
韩天峰
|
6ac8494173
|
update
|
8 months ago |
韩天峰
|
0dbb12812d
|
数值系统 单元测试
|
8 months ago |
韩天峰
|
204908f6e9
|
数组 单元测试
|
8 months ago |
韩天峰
|
257cc2d796
|
单元测试
|
8 months ago |
韩天峰
|
765eb75869
|
运算操作符 单元测试
|
8 months ago |
韩天峰
|
2b9417d78f
|
update
|
8 months ago |
韩天峰
|
f3565a6439
|
回归赋值的语法
|
8 months ago |
韩天峰
|
f1bbcfe64c
|
优化 Switch 脚本
|
8 months ago |
韩天峰
|
1dd9f62914
|
单元测试脚本
|
8 months ago |