Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches
MethodCallExpression1.cs
Go to the documentation of this file.
5
7
9{
10 private object _arg0;
11
12 public override int ArgumentCount => 1;
13
19
20 public override Expression GetArgument(int index)
21 {
22 if (index == 0)
23 {
24 return ExpressionUtils.ReturnObject<Expression>(_arg0);
25 }
26 throw new ArgumentOutOfRangeException("index");
27 }
28
33
35 {
36 if (arguments != null && arguments.Count == 1)
37 {
39 {
40 enumerator.MoveNext();
41 return enumerator.Current == ExpressionUtils.ReturnObject<Expression>(_arg0);
42 }
43 }
44 return false;
45 }
46
48 {
49 if (args != null)
50 {
51 return Expression.Call(base.Method, args[0]);
52 }
53 return Expression.Call(base.Method, ExpressionUtils.ReturnObject<Expression>(_arg0));
54 }
55}
static ReadOnlyCollection< ParameterExpression > ReturnReadOnly(IParameterProvider provider, ref object collection)
static MethodCallExpression Call(MethodInfo method)
MethodCallExpression1(MethodInfo method, Expression arg0)
override MethodCallExpression Rewrite(Expression instance, IReadOnlyList< Expression > args)
override ReadOnlyCollection< Expression > GetOrMakeArguments()
override bool SameArguments(ICollection< Expression > arguments)