literalnode.java

来自「是有关解释器的.用JAVA编写.可以解释一般的JAVA程序.」· Java 代码 · 共 41 行

JAVA
41
字号
class LiteralNode extends EvaluatableNode
{
	EvaluatableNode vLiteralNode;
	
	static LiteralNode parserLiteral(Environment env,Scanner s) throws ParserException, ScannerException
	{
		EvaluatableNode tmpLiteralNode;
		String tmpLiteralType;
		
		if(BooleanLiteralNode.mIsBooleanLiteral(s))
			tmpLiteralNode= BooleanLiteralNode.parserBooleanLiteral(env,s);
		else		
			tmpLiteralNode= NumberLiteralNode.parserNumberLiteral(env,s);
	
		return new LiteralNode(tmpLiteralNode);
	}
	static boolean mIsLiteral(Scanner s) throws ScannerException
	{
		return BooleanLiteralNode.mIsBooleanLiteral(s)||NumberLiteralNode.mIsNumberLiteral(s);
	}
	LiteralNode()
	{		
		vLiteralNode= null;
	}
	LiteralNode(EvaluatableNode aLiteralNode)
	{		
		vLiteralNode= aLiteralNode;
	}
	String format(int indent)
	{
		return vLiteralNode.format(indent);
	}
	Value evaluate(Environment env) throws InterpreterException
	{		
		return vLiteralNode.evaluate(env);
	}
	boolean typeCheck(Environment env) throws InterpreterException
	{		
		return vLiteralNode.typeCheck(env);		
	}
}

⌨️ 快捷键说明

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