Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches
InvokeBinder.cs
Go to the documentation of this file.
2
3namespace System.Dynamic;
4
5public abstract class InvokeBinder : DynamicMetaObjectBinder
6{
7 public sealed override Type ReturnType => typeof(object);
8
9 public CallInfo CallInfo { get; }
10
11 internal sealed override bool IsStandardBinder => true;
12
13 protected InvokeBinder(CallInfo callInfo)
14 {
15 ContractUtils.RequiresNotNull(callInfo, "callInfo");
16 CallInfo = callInfo;
17 }
18
20 {
21 return FallbackInvoke(target, args, null);
22 }
23
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.BindInvoke(this, args);
31 }
32}
virtual DynamicMetaObject BindInvoke(InvokeBinder binder, DynamicMetaObject[] args)
DynamicMetaObject FallbackInvoke(DynamicMetaObject target, DynamicMetaObject[] args)
override DynamicMetaObject Bind(DynamicMetaObject target, DynamicMetaObject[] args)
DynamicMetaObject FallbackInvoke(DynamicMetaObject target, DynamicMetaObject[] args, DynamicMetaObject? errorSuggestion)
InvokeBinder(CallInfo callInfo)
static void RequiresNotNull(object value, string paramName)