Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches
FieldInfo.cs
Go to the documentation of this file.
4
5namespace System.Reflection;
6
7public abstract class FieldInfo : MemberInfo
8{
9 public override MemberTypes MemberType => MemberTypes.Field;
10
11 public abstract FieldAttributes Attributes { get; }
12
13 public abstract Type FieldType { get; }
14
15 public bool IsInitOnly => (Attributes & FieldAttributes.InitOnly) != 0;
16
17 public bool IsLiteral => (Attributes & FieldAttributes.Literal) != 0;
18
19 public bool IsNotSerialized => (Attributes & FieldAttributes.NotSerialized) != 0;
20
21 public bool IsPinvokeImpl => (Attributes & FieldAttributes.PinvokeImpl) != 0;
22
23 public bool IsSpecialName => (Attributes & FieldAttributes.SpecialName) != 0;
24
25 public bool IsStatic => (Attributes & FieldAttributes.Static) != 0;
26
27 public bool IsAssembly => (Attributes & FieldAttributes.FieldAccessMask) == FieldAttributes.Assembly;
28
29 public bool IsFamily => (Attributes & FieldAttributes.FieldAccessMask) == FieldAttributes.Family;
30
31 public bool IsFamilyAndAssembly => (Attributes & FieldAttributes.FieldAccessMask) == FieldAttributes.FamANDAssem;
32
33 public bool IsFamilyOrAssembly => (Attributes & FieldAttributes.FieldAccessMask) == FieldAttributes.FamORAssem;
34
35 public bool IsPrivate => (Attributes & FieldAttributes.FieldAccessMask) == FieldAttributes.Private;
36
37 public bool IsPublic => (Attributes & FieldAttributes.FieldAccessMask) == FieldAttributes.Public;
38
39 public virtual bool IsSecurityCritical => true;
40
41 public virtual bool IsSecuritySafeCritical => false;
42
43 public virtual bool IsSecurityTransparent => false;
44
45 public abstract RuntimeFieldHandle FieldHandle { get; }
46
48 {
49 if (handle.IsNullHandle())
50 {
51 throw new ArgumentException(SR.Argument_InvalidHandle, "handle");
52 }
53 FieldInfo fieldInfo = RuntimeType.GetFieldInfo(handle.GetRuntimeFieldInfo());
54 Type declaringType = fieldInfo.DeclaringType;
55 if (declaringType != null && declaringType.IsGenericType)
56 {
58 }
59 return fieldInfo;
60 }
61
63 {
64 if (handle.IsNullHandle())
65 {
67 }
68 return RuntimeType.GetFieldInfo(declaringType.GetRuntimeType(), handle.GetRuntimeFieldInfo());
69 }
70
71 public override bool Equals(object? obj)
72 {
73 return base.Equals(obj);
74 }
75
76 public override int GetHashCode()
77 {
78 return base.GetHashCode();
79 }
80
81 [MethodImpl(MethodImplOptions.AggressiveInlining)]
82 public static bool operator ==(FieldInfo? left, FieldInfo? right)
83 {
84 if ((object)right == null)
85 {
86 if ((object)left != null)
87 {
88 return false;
89 }
90 return true;
91 }
92 if ((object)left == right)
93 {
94 return true;
95 }
96 return left?.Equals(right) ?? false;
97 }
98
99 public static bool operator !=(FieldInfo? left, FieldInfo? right)
100 {
101 return !(left == right);
102 }
103
104 public abstract object? GetValue(object? obj);
105
106 [DebuggerHidden]
107 [DebuggerStepThrough]
108 public void SetValue(object? obj, object? value)
109 {
111 }
112
113 public abstract void SetValue(object? obj, object? value, BindingFlags invokeAttr, Binder? binder, CultureInfo? culture);
114
115 [CLSCompliant(false)]
116 public virtual void SetValueDirect(TypedReference obj, object value)
117 {
119 }
120
121 [CLSCompliant(false)]
122 public virtual object? GetValueDirect(TypedReference obj)
123 {
125 }
126
127 public virtual object? GetRawConstantValue()
128 {
130 }
131
133 {
135 }
136
138 {
140 }
141}
static Exception ByDesign
static bool operator==(FieldInfo? left, FieldInfo? right)
Definition FieldInfo.cs:82
virtual bool IsSecurityTransparent
Definition FieldInfo.cs:43
void SetValue(object? obj, object? value)
Definition FieldInfo.cs:108
FieldAttributes Attributes
Definition FieldInfo.cs:11
override int GetHashCode()
Definition FieldInfo.cs:76
object? GetValue(object? obj)
RuntimeFieldHandle FieldHandle
Definition FieldInfo.cs:45
virtual void SetValueDirect(TypedReference obj, object value)
Definition FieldInfo.cs:116
override MemberTypes MemberType
Definition FieldInfo.cs:9
void SetValue(object? obj, object? value, BindingFlags invokeAttr, Binder? binder, CultureInfo? culture)
virtual ? object GetRawConstantValue()
Definition FieldInfo.cs:127
override bool Equals(object? obj)
Definition FieldInfo.cs:71
static FieldInfo GetFieldFromHandle(RuntimeFieldHandle handle)
Definition FieldInfo.cs:47
virtual Type[] GetOptionalCustomModifiers()
Definition FieldInfo.cs:132
virtual Type[] GetRequiredCustomModifiers()
Definition FieldInfo.cs:137
static FieldInfo GetFieldFromHandle(RuntimeFieldHandle handle, RuntimeTypeHandle declaringType)
Definition FieldInfo.cs:62
virtual bool IsSecuritySafeCritical
Definition FieldInfo.cs:41
static bool operator!=(FieldInfo? left, FieldInfo? right)
Definition FieldInfo.cs:99
virtual ? object GetValueDirect(TypedReference obj)
Definition FieldInfo.cs:122
virtual bool IsSecurityCritical
Definition FieldInfo.cs:39
static FieldInfo GetFieldInfo(IRuntimeFieldInfo fieldHandle)
static string Format(string resourceFormat, object p1)
Definition SR.cs:118
static string NotSupported_AbstractNonCLS
Definition SR.cs:1646
static string Argument_InvalidHandle
Definition SR.cs:24
static string Argument_FieldDeclaringTypeGeneric
Definition SR.cs:602
Definition SR.cs:7
static Binder DefaultBinder
Definition Type.cs:298
virtual bool IsGenericType
Definition Type.cs:111
virtual Type GetGenericTypeDefinition()
Definition Type.cs:495