Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches
DoubleConverter.cs
Go to the documentation of this file.
2
3internal sealed class DoubleConverter : JsonConverter<double>
4{
9
11 {
12 return reader.GetDouble();
13 }
14
16 {
17 writer.WriteNumberValue(value);
18 }
19
21 {
22 return reader.GetDoubleWithQuotes();
23 }
24
26 {
27 writer.WritePropertyName(value);
28 }
29
31 {
32 if (reader.TokenType == JsonTokenType.String)
33 {
34 if ((JsonNumberHandling.AllowReadingFromString & handling) != 0)
35 {
36 return reader.GetDoubleWithQuotes();
37 }
38 if ((JsonNumberHandling.AllowNamedFloatingPointLiterals & handling) != 0)
39 {
40 return reader.GetDoubleFloatingPointConstant();
41 }
42 }
43 return reader.GetDouble();
44 }
45
47 {
48 if ((JsonNumberHandling.WriteAsString & handling) != 0)
49 {
50 writer.WriteNumberValueAsString(value);
51 }
52 else if ((JsonNumberHandling.AllowNamedFloatingPointLiterals & handling) != 0)
53 {
54 writer.WriteFloatingPointConstant(value);
55 }
56 else
57 {
58 writer.WriteNumberValue(value);
59 }
60 }
61}
override void Write(Utf8JsonWriter writer, double value, JsonSerializerOptions options)
override void WriteAsPropertyNameCore(Utf8JsonWriter writer, double value, JsonSerializerOptions options, bool isWritingExtensionDataProperty)
override double ReadAsPropertyNameCore(ref Utf8JsonReader reader, Type typeToConvert, JsonSerializerOptions options)
override double Read(ref Utf8JsonReader reader, Type typeToConvert, JsonSerializerOptions options)
override void WriteNumberWithCustomHandling(Utf8JsonWriter writer, double value, JsonNumberHandling handling)
override double ReadNumberWithCustomHandling(ref Utf8JsonReader reader, JsonNumberHandling handling, JsonSerializerOptions options)