Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches
InvokeMemberBinder.cs
Go to the documentation of this file.
2
3namespace System.Dynamic;
4
6{
7 public sealed override Type ReturnType => typeof(object);
8
9 public string Name { get; }
10
11 public bool IgnoreCase { get; }
12
13 public CallInfo CallInfo { get; }
14
15 internal sealed override bool IsStandardBinder => true;
16
17 protected InvokeMemberBinder(string name, bool ignoreCase, CallInfo callInfo)
18 {
19 ContractUtils.RequiresNotNull(name, "name");
20 ContractUtils.RequiresNotNull(callInfo, "callInfo");
21 Name = name;
22 IgnoreCase = ignoreCase;
23 CallInfo = callInfo;
24 }
25
26 public sealed override DynamicMetaObject Bind(DynamicMetaObject target, DynamicMetaObject[] args)
27 {
28 ContractUtils.RequiresNotNull(target, "target");
29 ContractUtils.RequiresNotNullItems(args, "args");
30 return target.BindInvokeMember(this, args);
31 }
32
34 {
35 return FallbackInvokeMember(target, args, null);
36 }
37
39
41}
virtual DynamicMetaObject BindInvokeMember(InvokeMemberBinder binder, DynamicMetaObject[] args)
DynamicMetaObject FallbackInvokeMember(DynamicMetaObject target, DynamicMetaObject[] args)
InvokeMemberBinder(string name, bool ignoreCase, CallInfo callInfo)
override DynamicMetaObject Bind(DynamicMetaObject target, DynamicMetaObject[] args)
DynamicMetaObject FallbackInvoke(DynamicMetaObject target, DynamicMetaObject[] args, DynamicMetaObject? errorSuggestion)
DynamicMetaObject FallbackInvokeMember(DynamicMetaObject target, DynamicMetaObject[] args, DynamicMetaObject? errorSuggestion)
static void RequiresNotNull(object value, string paramName)