statementnode.java
来自「是有关解释器的.用JAVA编写.可以解释一般的JAVA程序.」· Java 代码 · 共 57 行
JAVA
57 行
class StatementNode extends ExecutableNode
{
ExecutableNode vStatementNode;
static StatementNode parserStatement(Environment env, Scanner s) throws ParserException, ScannerException
{
ExecutableNode tmpStatementNode;
if(VariableDefinitionNode.mIsVariableDefinition(s))
tmpStatementNode= VariableDefinitionNode.parserVariableDefinition(env,s);
else
if(AssignmentStatementNode.mIsAssignmentStatement(s))
tmpStatementNode= AssignmentStatementNode.parserAssignmentStatement(env,s);
else
if(IfStatementNode.mIsIfStatement(s))
tmpStatementNode= IfStatementNode.parserIfStatement(env,s);
else
if(WhileStatementNode.mIsWhileStatement(s))
tmpStatementNode= WhileStatementNode.parserWhileStatement(env,s);
else
if(BlockNode.mIsBlock(s))
tmpStatementNode= BlockNode.parserBlock(env,s);
else
if(ReturnStatementNode.mIsReturnStatement(s))
tmpStatementNode= ReturnStatementNode.parserReturnStatement(env,s);
else
if(EmptyStatementNode.mIsEmptyStatement(s))
tmpStatementNode= EmptyStatementNode.parserEmptyStatement(env,s);
else
tmpStatementNode= MessageSendStatementNode.parserMessageSendStatement(env,s);
return new StatementNode(tmpStatementNode);
}
StatementNode()
{
vStatementNode= null;
}
StatementNode(ExecutableNode aStatementNode)
{
vStatementNode= aStatementNode;
}
String format(int indent)
{
return vStatementNode.format(indent);
}
Environment run(Environment env) throws InterpreterException
{
vStatementNode.run(env);
return env;
}
boolean typeCheck(Environment env) throws InterpreterException
{
return vStatementNode.typeCheck(env);
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?