| 限定符和类型 | 类和说明 |
|---|---|
class |
AssignAttrsToLeftNode
复制属性给产生式左部的节点
|
class |
AttrFilter
属性过滤(规约后产生式左部的语法树节点),设置保留的属性值
|
class |
SetAttrFromLexical
设置综合属性,来源于词法分析器
|
class |
SetAttrToLeftNode
为产生式左部的语法树节点设定属性值
|
class |
SetControlTransferTypeIfNecessary |
class |
SetIdentifierAttr
根据标志符名称,设置IDENTIFIER_NAME、TYPE属性
|
| 限定符和类型 | 类和说明 |
|---|---|
class |
ControlTransferByteCodeBackFill
跳转指令的回填
|
| 限定符和类型 | 类和说明 |
|---|---|
class |
MergeControlTransferByteCode
合并待回填字节码属性
|
class |
PushArrayItemLoadByteCode |
class |
PushBinaryComputeByteCode
添加双目运算
|
class |
PushCompareTransferByteCode
根据比较运算符的类型,添加对应的转义字节码
转移字节码延迟加载
因为不知道需要的是正向逻辑还是反向逻辑,例如if(expression)就是正向逻辑,do{}while(expression)就是反向逻辑
但是这样一来,就需要注意必须要添加转移字节码(例如赋值语句、初始化语句、方法参数列表)
|
class |
PushConstByteCode
加载字面值
|
class |
PushControlTransferByteCode
添加跳转指令
|
class |
PushControlTransferByteCodeByType
按类型添加跳转指令
|
class |
PushNewArrayByteCode |
class |
PushPropertyLoadByteCode
将标志符压入操作数栈
|
class |
PushReturnByteCode |
class |
PushUnaryComputeByteCode
添加一元运算指令
|
| 限定符和类型 | 类和说明 |
|---|---|
class |
IncreaseArraySize |
class |
InitArraySizeIfNecessary |
| 限定符和类型 | 类和说明 |
|---|---|
class |
BooleanExpressionEnding
布尔表达式收尾
|
Copyright © 2020. All rights reserved.