Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches
AmbientValueAttribute.cs
Go to the documentation of this file.
2
4
5[AttributeUsage(AttributeTargets.All)]
6public sealed class AmbientValueAttribute : Attribute
7{
8 public object? Value { get; }
9
10 [RequiresUnreferencedCode("Generic TypeConverters may require the generic types to be annotated. For example, NullableConverter requires the underlying type to be DynamicallyAccessedMembers All.")]
11 public AmbientValueAttribute([DynamicallyAccessedMembers(DynamicallyAccessedMemberTypes.All)] Type type, string value)
12 {
13 try
14 {
15 Value = TypeDescriptor.GetConverter(type).ConvertFromInvariantString(value);
16 }
17 catch
18 {
19 }
20 }
21
23 {
24 Value = value;
25 }
26
28 {
29 Value = value;
30 }
31
33 {
34 Value = value;
35 }
36
38 {
39 Value = value;
40 }
41
43 {
44 Value = value;
45 }
46
48 {
49 Value = value;
50 }
51
53 {
54 Value = value;
55 }
56
58 {
59 Value = value;
60 }
61
63 {
64 Value = value;
65 }
66
68 {
69 Value = value;
70 }
71
72 public override bool Equals([NotNullWhen(true)] object? obj)
73 {
74 if (obj == this)
75 {
76 return true;
77 }
78 if (obj is AmbientValueAttribute ambientValueAttribute)
79 {
80 if (Value == null)
81 {
82 return ambientValueAttribute.Value == null;
83 }
84 return Value.Equals(ambientValueAttribute.Value);
85 }
86 return false;
87 }
88
89 public override int GetHashCode()
90 {
91 return base.GetHashCode();
92 }
93}
AmbientValueAttribute([DynamicallyAccessedMembers(DynamicallyAccessedMemberTypes.All)] Type type, string value)
override bool Equals([NotNullWhen(true)] object? obj)
static TypeConverter GetConverter(object component)