コード例 #1
0
        override TExpression VisitIndex(IndexExpressionAlias node)
        {
            if (node == null)
            {
                throw new ArgumentNullException(nameof(node));
            }

            var o = Visit(node.Object);
            var a = Visit(node.Arguments);

            return(MakeIndex(node, o, a));
        }
コード例 #2
0
#pragma warning disable IDE0079 // Remove unnecessary suppression.
#pragma warning disable CA1720  // Identifier 'object' contains type name. (Mirroring expression tree APIs.)
#pragma warning disable CA1716  // Reserved language keyword 'object'. (Mirroring expression tree APIs.)

        /// <summary>
        /// Makes an expression representing a IndexExpression with the given children.
        /// </summary>
        /// <param name="node">Original expression.</param>
        /// <param name="object">Object expression.</param>
        /// <param name="arguments">Argument expressions.</param>
        /// <returns>Representation of the original expression.</returns>
        protected abstract TExpression MakeIndex(IndexExpressionAlias node, TExpression @object, ReadOnlyCollection <TExpression> arguments);