valueid.java

来自「编译器中的词法分析」· Java 代码 · 共 52 行

JAVA
52
字号
package cmm.cmmcc;

/**
 * 值标示符,继承标示符类
 * @author Huang Xuanxing
 *
 */
public class ValueId extends Id {
	private boolean isConst = false; // 常量标志
	private String value;

	public ValueId(String inId) {
		super(inId);
	}
	
	public ValueId(String inId, boolean bool) {
		super(inId);
		isConst = bool;
	}
	
	private void setValue(String inVal) {
		if (!isConst) {
			value = inVal;
		} else {
			// 产生常量修改异常
			//
		}
	}
	
	public String getValue() {
		return value;
	}
	
	public void setConst() {
		if (!isConst) {
			isConst = true;
		}
	}
	
	public void evaluate() {
		setValue(null);
	}
	
	/**
	 * 变量赋值
	 * @param inVal
	 */
	public void evaluate(String inVal) {
		setValue(inVal);
	}
}

⌨️ 快捷键说明

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