// Copyright (c) Microsoft. All rights reserved. // Licensed under the MIT license. See LICENSE file in the project root for full license information. #if !NET_4_6 namespace System.Linq.Expressions.Reimplement { public interface IDynamicExpression : IArgumentProvider { /// /// Gets the type of the delegate used by the CallSite />. /// Type DelegateType { get; } /// /// Rewrite this node replacing the args with the provided values. The /// number of the args needs to match the number of the current block. /// /// This helper is provided to allow re-writing of nodes to not depend on the specific /// class of DynamicExpression which is being used. /// Expression Rewrite(Expression[] args); /// /// Creates a CallSite for the node. /// object CreateCallSite(); } } #endif