Пример #1
0
 /// <summary>
 /// Creates an appropriate setter for GetIndexNode.
 /// From: expr[a]
 /// To:   expr[a] = ...
 /// </summary>
 private SetIndexNode SetterOf(GetIndexNode node)
 {
     return(new SetIndexNode
     {
         Expression = node.Expression,
         Index = node.Index
     });
 }
Пример #2
0
        /// <summary>
        /// accessor_idx                                = "[" line_expr "]"
        /// </summary>
        private GetIndexNode parseAccessorIdx()
        {
            if (!check(LexemType.SquareOpen))
                return null;

            var node = new GetIndexNode();
            node.Index = ensure(parseLineExpr, ParserMessages.IndexExpressionExpected);
            ensure(LexemType.SquareClose, ParserMessages.SymbolExpected, ']');
            return node;
        }