public class ProgramBuilderContext extends Object
| 限定符和类型 | 字段和说明 |
|---|---|
Map<String,Integer> |
globalIndexMap |
Map<String,Integer> |
rootIndexMap
顶级变量在空间中的位置
|
| 构造器和说明 |
|---|
ProgramBuilderContext() |
| 限定符和类型 | 方法和说明 |
|---|---|
boolean |
addRootVarAdnPosition(ASTNode first)
动态添加一个顶级变量
|
void |
addVar(String varName)
在当前context定义变量
|
void |
addVarAndPostion(ASTNode first) |
void |
anzlyszeGlobal() |
void |
anzlyszeLocal() |
ASTNode |
contain(String varName) |
void |
enterBlock()
进入一个scope
|
void |
exitBlock() |
protected org.beetl.core.VarDescrption |
findVar(String varName) |
protected GrammarToken |
hasDefined(String varName) |
ASTNode |
searchVar(org.beetl.core.BlockEnvContext ctx,
String name)
自上向下查找
|
int |
setNodeEvalObject(Object o) |
void |
setVarAttr(String varName,
String attrName)
变量属性,展示没用上,本来想用在ide属性提示,但ide插件门槛太高了,搞不定
|
void |
setVarPosition(String varName,
ASTNode where) |
public void enterBlock()
public void exitBlock()
public void addVarAndPostion(ASTNode first)
public boolean addRootVarAdnPosition(ASTNode first)
public void addVar(String varName)
public void setVarAttr(String varName, String attrName)
protected GrammarToken hasDefined(String varName)
protected org.beetl.core.VarDescrption findVar(String varName)
public int setNodeEvalObject(Object o)
public void anzlyszeGlobal()
public void anzlyszeLocal()
Copyright © 2021. All rights reserved.