using System; using System.Collections.ObjectModel; using System.Reflection; namespace System.Linq.Expressions { /// Represents calling a method. // Token: 0x0200002B RID: 43 public sealed class MethodCallExpression : Expression { // Token: 0x06000233 RID: 563 RVA: 0x0000BCD8 File Offset: 0x00009ED8 internal MethodCallExpression(MethodInfo method, ReadOnlyCollection arguments) : base(ExpressionType.Call, method.ReturnType) { this.method = method; this.arguments = arguments; } // Token: 0x06000234 RID: 564 RVA: 0x0000BCF8 File Offset: 0x00009EF8 internal MethodCallExpression(Expression obj, MethodInfo method, ReadOnlyCollection arguments) : base(ExpressionType.Call, method.ReturnType) { this.obj = obj; this.method = method; this.arguments = arguments; } /// Gets the receiving object of the method. /// An that represents the receiving object of the method. // Token: 0x1700002C RID: 44 // (get) Token: 0x06000235 RID: 565 RVA: 0x0000BD28 File Offset: 0x00009F28 public Expression Object { get { return this.obj; } } /// Gets the called method. /// The that represents the called method. // Token: 0x1700002D RID: 45 // (get) Token: 0x06000236 RID: 566 RVA: 0x0000BD30 File Offset: 0x00009F30 public MethodInfo Method { get { return this.method; } } /// Gets the arguments to the called method. /// A of objects which represent the arguments to the called method. // Token: 0x1700002E RID: 46 // (get) Token: 0x06000237 RID: 567 RVA: 0x0000BD38 File Offset: 0x00009F38 public ReadOnlyCollection Arguments { get { return this.arguments; } } // Token: 0x06000238 RID: 568 RVA: 0x0000BD40 File Offset: 0x00009F40 internal override void Emit(EmitContext ec) { ec.EmitCall(this.obj, this.arguments, this.method); } // Token: 0x040000B6 RID: 182 private Expression obj; // Token: 0x040000B7 RID: 183 private MethodInfo method; // Token: 0x040000B8 RID: 184 private ReadOnlyCollection arguments; } }