1 // Licensed to the .NET Foundation under one or more agreements.
2 // The .NET Foundation licenses this file to you under the MIT license.
3 // See the LICENSE file in the project root for more information.
4 
5 using System.Dynamic;
6 using System.Reflection;
7 using System.Runtime.CompilerServices;
8 
9 namespace System.Linq.Expressions
10 {
11     internal static partial class CachedReflectionInfo
12     {
13         private static MethodInfo s_String_Format_String_ObjectArray;
14         public static MethodInfo String_Format_String_ObjectArray =>
15                                   s_String_Format_String_ObjectArray ??
16                                  (s_String_Format_String_ObjectArray = typeof(string).GetMethod(nameof(string.Format), new Type[] { typeof(string), typeof(object[]) }));
17 
18         private static ConstructorInfo s_InvalidCastException_Ctor_String;
19         public static ConstructorInfo InvalidCastException_Ctor_String =>
20                                        s_InvalidCastException_Ctor_String ??
21                                       (s_InvalidCastException_Ctor_String = typeof(InvalidCastException).GetConstructor(new Type[] { typeof(string) }));
22 
23         private static MethodInfo s_CallSiteOps_SetNotMatched;
24         public static MethodInfo CallSiteOps_SetNotMatched =>
25                                   s_CallSiteOps_SetNotMatched ??
26                                  (s_CallSiteOps_SetNotMatched = typeof(CallSiteOps).GetMethod(nameof(CallSiteOps.SetNotMatched)));
27 
28         private static MethodInfo s_CallSiteOps_CreateMatchmaker;
29         public static MethodInfo CallSiteOps_CreateMatchmaker =>
30                                   s_CallSiteOps_CreateMatchmaker ??
31                                  (s_CallSiteOps_CreateMatchmaker = typeof(CallSiteOps).GetMethod(nameof(CallSiteOps.CreateMatchmaker)));
32 
33         private static MethodInfo s_CallSiteOps_GetMatch;
34         public static MethodInfo CallSiteOps_GetMatch =>
35                                   s_CallSiteOps_GetMatch ??
36                                  (s_CallSiteOps_GetMatch = typeof(CallSiteOps).GetMethod(nameof(CallSiteOps.GetMatch)));
37 
38         private static MethodInfo s_CallSiteOps_ClearMatch;
39         public static MethodInfo CallSiteOps_ClearMatch =>
40                                   s_CallSiteOps_ClearMatch ??
41                                  (s_CallSiteOps_ClearMatch = typeof(CallSiteOps).GetMethod(nameof(CallSiteOps.ClearMatch)));
42 
43         private static MethodInfo s_CallSiteOps_UpdateRules;
44         public static MethodInfo CallSiteOps_UpdateRules =>
45                                   s_CallSiteOps_UpdateRules ??
46                                  (s_CallSiteOps_UpdateRules = typeof(CallSiteOps).GetMethod(nameof(CallSiteOps.UpdateRules)));
47 
48         private static MethodInfo s_CallSiteOps_GetRules;
49         public static MethodInfo CallSiteOps_GetRules =>
50                                   s_CallSiteOps_GetRules ??
51                                  (s_CallSiteOps_GetRules = typeof(CallSiteOps).GetMethod(nameof(CallSiteOps.GetRules)));
52 
53         private static MethodInfo s_CallSiteOps_GetRuleCache;
54         public static MethodInfo CallSiteOps_GetRuleCache =>
55                                   s_CallSiteOps_GetRuleCache ??
56                                  (s_CallSiteOps_GetRuleCache = typeof(CallSiteOps).GetMethod(nameof(CallSiteOps.GetRuleCache)));
57 
58         private static MethodInfo s_CallSiteOps_GetCachedRules;
59         public static MethodInfo CallSiteOps_GetCachedRules =>
60                                   s_CallSiteOps_GetCachedRules ??
61                                  (s_CallSiteOps_GetCachedRules = typeof(CallSiteOps).GetMethod(nameof(CallSiteOps.GetCachedRules)));
62 
63         private static MethodInfo s_CallSiteOps_AddRule;
64         public static MethodInfo CallSiteOps_AddRule =>
65                                   s_CallSiteOps_AddRule ??
66                                  (s_CallSiteOps_AddRule = typeof(CallSiteOps).GetMethod(nameof(CallSiteOps.AddRule)));
67 
68         private static MethodInfo s_CallSiteOps_MoveRule;
69         public static MethodInfo CallSiteOps_MoveRule =>
70                                   s_CallSiteOps_MoveRule ??
71                                  (s_CallSiteOps_MoveRule = typeof(CallSiteOps).GetMethod(nameof(CallSiteOps.MoveRule)));
72 
73         private static MethodInfo s_CallSiteOps_Bind;
74         public static MethodInfo CallSiteOps_Bind =>
75                                   s_CallSiteOps_Bind ??
76                                  (s_CallSiteOps_Bind = typeof(CallSiteOps).GetMethod(nameof(CallSiteOps.Bind)));
77 
78         private static MethodInfo s_DynamicObject_TryGetMember;
79         public static MethodInfo DynamicObject_TryGetMember =>
80                                   s_DynamicObject_TryGetMember ??
81                                  (s_DynamicObject_TryGetMember = typeof(DynamicObject).GetMethod(nameof(DynamicObject.TryGetMember)));
82 
83         private static MethodInfo s_DynamicObject_TrySetMember;
84         public static MethodInfo DynamicObject_TrySetMember =>
85                                   s_DynamicObject_TrySetMember ??
86                                  (s_DynamicObject_TrySetMember = typeof(DynamicObject).GetMethod(nameof(DynamicObject.TrySetMember)));
87 
88         private static MethodInfo s_DynamicObject_TryDeleteMember;
89         public static MethodInfo DynamicObject_TryDeleteMember =>
90                                   s_DynamicObject_TryDeleteMember ??
91                                  (s_DynamicObject_TryDeleteMember = typeof(DynamicObject).GetMethod(nameof(DynamicObject.TryDeleteMember)));
92 
93         private static MethodInfo s_DynamicObject_TryGetIndex;
94         public static MethodInfo DynamicObject_TryGetIndex =>
95                                   s_DynamicObject_TryGetIndex ??
96                                  (s_DynamicObject_TryGetIndex = typeof(DynamicObject).GetMethod(nameof(DynamicObject.TryGetIndex)));
97 
98         private static MethodInfo s_DynamicObject_TrySetIndex;
99         public static MethodInfo DynamicObject_TrySetIndex =>
100                                   s_DynamicObject_TrySetIndex ??
101                                  (s_DynamicObject_TrySetIndex = typeof(DynamicObject).GetMethod(nameof(DynamicObject.TrySetIndex)));
102 
103         private static MethodInfo s_DynamicObject_TryDeleteIndex;
104         public static MethodInfo DynamicObject_TryDeleteIndex =>
105                                   s_DynamicObject_TryDeleteIndex ??
106                                  (s_DynamicObject_TryDeleteIndex = typeof(DynamicObject).GetMethod(nameof(DynamicObject.TryDeleteIndex)));
107 
108         private static MethodInfo s_DynamicObject_TryConvert;
109         public static MethodInfo DynamicObject_TryConvert =>
110                                   s_DynamicObject_TryConvert ??
111                                  (s_DynamicObject_TryConvert = typeof(DynamicObject).GetMethod(nameof(DynamicObject.TryConvert)));
112 
113         private static MethodInfo s_DynamicObject_TryInvoke;
114         public static MethodInfo DynamicObject_TryInvoke =>
115                                   s_DynamicObject_TryInvoke ??
116                                  (s_DynamicObject_TryInvoke = typeof(DynamicObject).GetMethod(nameof(DynamicObject.TryInvoke)));
117 
118         private static MethodInfo s_DynamicObject_TryInvokeMember;
119         public static MethodInfo DynamicObject_TryInvokeMember =>
120                                   s_DynamicObject_TryInvokeMember ??
121                                  (s_DynamicObject_TryInvokeMember = typeof(DynamicObject).GetMethod(nameof(DynamicObject.TryInvokeMember)));
122 
123         private static MethodInfo s_DynamicObject_TryBinaryOperation;
124         public static MethodInfo DynamicObject_TryBinaryOperation =>
125                                   s_DynamicObject_TryBinaryOperation ??
126                                  (s_DynamicObject_TryBinaryOperation = typeof(DynamicObject).GetMethod(nameof(DynamicObject.TryBinaryOperation)));
127 
128         private static MethodInfo s_DynamicObject_TryUnaryOperation;
129         public static MethodInfo DynamicObject_TryUnaryOperation =>
130                                   s_DynamicObject_TryUnaryOperation ??
131                                  (s_DynamicObject_TryUnaryOperation = typeof(DynamicObject).GetMethod(nameof(DynamicObject.TryUnaryOperation)));
132 
133         private static MethodInfo s_DynamicObject_TryCreateInstance;
134         public static MethodInfo DynamicObject_TryCreateInstance =>
135                                   s_DynamicObject_TryCreateInstance ??
136                                  (s_DynamicObject_TryCreateInstance = typeof(DynamicObject).GetMethod(nameof(DynamicObject.TryCreateInstance)));
137     }
138 }
139