scope.java

来自「Java写的词法/语法分析器。可生成JAVA语言或者是C++的词法和语法分析器。」· Java 代码 · 共 61 行

JAVA
61
字号
package tinybasic;import java.util.*;public class Scope {	protected Scope prev;	protected Scope global;		Hashtable symbolTable;	protected Scope(Scope prev){		this.prev=prev;		symbolTable = new Hashtable();	}		public Scope cloneScope(Scope prev){		Scope newScope = new Scope(prev);		return newScope;	}		void insertVariable(String v,DTDataType t){	    symbolTable.put(v.toLowerCase(),t);	}		public DTDataType  getVariable(String v){		DTDataType t=(DTDataType)symbolTable.get(v.toLowerCase());		return t;	}		public int getVariableDimension(String v){	    DTDataType t=getVariable(v);	    	    if(t!=null){		return t.getDimension();	    } else {		return 0;	    }	}		public int getVariableType(String v){	    DTDataType t=getVariable(v);	    	    if(t!=null){		return t.getType();	    } else {		return 0;	    }	}		public boolean isArrayVariable(String s){	    return (getVariableDimension(s) > 0);	}		public Scope getPrev(){		return prev;	}			}	

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?