コード例 #1
0
ファイル: TotemParser.cs プロジェクト: Alxandr/IronTotem
        private Statement ParseExpressionStatement()
        {
            Expression ret = ParseExpression();
            if (!EatSemiOrInteractiveEndOfFile())
                return null;

            if (ret is ErrorExpression)
                NextToken();

            ExpressionStatement stmt = new ExpressionStatement(ret);
            stmt.SetLoc(_globalParent, ret.StartIndex, GetEnd());
            if (!_allowIncomplete) // don't normally allow statements like a, or a + 2, without assigning the value
                stmt = stmt.ValidateExpression();
            return stmt;
        }
コード例 #2
0
ファイル: TotemNameBinder.cs プロジェクト: Alxandr/IronTotem
 public override bool Walk(ExpressionStatement node)
 {
     node.Parent = _currentScope;
     return base.Walk(node);
 }