Terraria
v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches
InvocationExpression2.cs
Go to the documentation of this file.
1
using
System.Collections.ObjectModel
;
2
using
System.Dynamic.Utils
;
3
4
namespace
System.Linq.Expressions
;
5
6
internal
sealed
class
InvocationExpression2
:
InvocationExpression
7
{
8
private
object
_arg0
;
9
10
private
readonly
Expression
_arg1
;
11
12
public
override
int
ArgumentCount
=> 2;
13
14
public
InvocationExpression2
(
Expression
lambda,
Type
returnType,
Expression
arg0,
Expression
arg1)
15
: base(lambda, returnType)
16
{
17
_arg0
= arg0;
18
_arg1
= arg1;
19
}
20
21
internal
override
ReadOnlyCollection<Expression>
GetOrMakeArguments
()
22
{
23
return
ExpressionUtils
.
ReturnReadOnly
(
this
, ref
_arg0
);
24
}
25
26
public
override
Expression
GetArgument
(
int
index
)
27
{
28
return
index
switch
29
{
30
0 =>
ExpressionUtils
.ReturnObject<
Expression
>(
_arg0
),
31
1 =>
_arg1
,
32
_ =>
throw
new
ArgumentOutOfRangeException
(
"index"
),
33
};
34
}
35
36
internal
override
InvocationExpression
Rewrite
(
Expression
lambda,
Expression
[] arguments)
37
{
38
if
(arguments !=
null
)
39
{
40
return
System
.
Linq
.
Expressions
.
Expression
.
Invoke
(lambda, arguments[0], arguments[1]);
41
}
42
return
System
.
Linq
.
Expressions
.
Expression
.
Invoke
(lambda,
ExpressionUtils
.ReturnObject<
Expression
>(
_arg0
),
_arg1
);
43
}
44
}
System.ArgumentOutOfRangeException
Definition
ArgumentOutOfRangeException.cs:9
System.Collections.ObjectModel.ReadOnlyCollection
Definition
ReadOnlyCollection.cs:12
System.Dynamic.Utils.ExpressionUtils.ReturnReadOnly
static ReadOnlyCollection< ParameterExpression > ReturnReadOnly(IParameterProvider provider, ref object collection)
Definition
ExpressionUtils.cs:12
System.Dynamic.Utils.ExpressionUtils
Definition
ExpressionUtils.cs:11
System.Linq.Expressions.Expression.Invoke
static InvocationExpression Invoke(Expression expression)
Definition
Expression.cs:3096
System.Linq.Expressions.Expression
Definition
Expression.cs:5484
System.Linq.Expressions.InvocationExpression2.GetOrMakeArguments
override ReadOnlyCollection< Expression > GetOrMakeArguments()
Definition
InvocationExpression2.cs:21
System.Linq.Expressions.InvocationExpression2.GetArgument
override Expression GetArgument(int index)
Definition
InvocationExpression2.cs:26
System.Linq.Expressions.InvocationExpression2.InvocationExpression2
InvocationExpression2(Expression lambda, Type returnType, Expression arg0, Expression arg1)
Definition
InvocationExpression2.cs:14
System.Linq.Expressions.InvocationExpression2._arg0
object _arg0
Definition
InvocationExpression2.cs:8
System.Linq.Expressions.InvocationExpression2._arg1
readonly Expression _arg1
Definition
InvocationExpression2.cs:10
System.Linq.Expressions.InvocationExpression2.Rewrite
override InvocationExpression Rewrite(Expression lambda, Expression[] arguments)
Definition
InvocationExpression2.cs:36
System.Linq.Expressions.InvocationExpression2.ArgumentCount
override int ArgumentCount
Definition
InvocationExpression2.cs:12
System.Linq.Expressions.InvocationExpression2
Definition
InvocationExpression2.cs:7
System.Linq.Expressions.InvocationExpression
Definition
InvocationExpression.cs:11
System.Type
Definition
Type.cs:14
System.Collections.ObjectModel
Definition
EventArgsCache.cs:4
System.Dynamic.Utils
Definition
CacheDict.cs:4
System.Linq.Expressions
Definition
AnalyzedTree.cs:3
System.Linq.ExceptionArgument.index
@ index
System.Linq
Definition
ImmutableArrayExtensions.cs:4
System
Definition
BlockingCollection.cs:8
source
System.Linq.Expressions
System.Linq.Expressions
InvocationExpression2.cs
Generated by
1.10.0