本文整理汇总了C#中ParseTreeNode.evalNodeComponent方法的典型用法代码示例。如果您正苦于以下问题:C# ParseTreeNode.evalNodeComponent方法的具体用法?C# ParseTreeNode.evalNodeComponent怎么用?C# ParseTreeNode.evalNodeComponent使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类ParseTreeNode
的用法示例。
在下文中一共展示了ParseTreeNode.evalNodeComponent方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: runParseTree
public void runParseTree(ParseTreeNode<ITreeNode> someNode)
{
Direction nextCommand = Direction.NEXT;
List<Command> commands = someNode.evalNodeComponent(ref nextCommand, ref Identifiers);
foreach (Command curCommand in commands)
{
CommandType curComType = curCommand.getCommandType();
switch (curComType)
{
case CommandType.EVALUABLE:
outputStream.WriteLine(curCommand.getIdValue().ToString());
break;
case CommandType.FLOWCONTROLL:
//outputStream.WriteLine("Jumping to label: " + curCommand.getIdName());
ParseTreeNode<ITreeNode> jumpNode = jumpToLabel(this.programTree.getRoot().getRight(), curCommand.getIdName());
runParseTree(jumpNode);
break;
case CommandType.OUTPUT:
outputStream.WriteLine(curCommand.getIdValue());
break;
case CommandType.ERRORALREADYDECLARED:
outputStream.WriteLine("Error: Identifier "+curCommand.getIdName()+ " is already declared");
break;
case CommandType.ERRORNOSUCHID:
outputStream.WriteLine("Error: Unknown Identifier " + curCommand.getIdName());
break;
case CommandType.ERRORNULLARGUMENT:
outputStream.WriteLine("Error: Identifier " + curCommand.getIdName() + " has null value");
break;
case CommandType.ERRORUNCOMPATIBLETYPES:
outputStream.WriteLine("Error: Uncompatible type of identifier " + curCommand.getIdName());
break;
case CommandType.ERRORUNDECLAREDID:
outputStream.WriteLine("Error: Identifier " + curCommand.getIdName() + " is not declared");
break;
default:
//???
break;
}
}
}