コード例 #1
0
        private void ProcessReturnStatement(NodeBase statement)
        {
            Queue <NodeBase> children = GetChildren(statement);

            Expect(children.Dequeue(), NodeType.Keyword, "return");
            if (PeekType(children) == NodeType.Expression)
            {
                ProcessExpression(children.Dequeue());
                vmWriter.Return();
            }
            else
            {
                vmWriter.ReturnNothing();
            }
            Expect(children.Dequeue(), NodeType.Symbol, ";");
        }