Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ ConvertJsonElement< TypeToConvert >()

TypeToConvert System.Text.Json.Nodes.JsonValue< TValue >.ConvertJsonElement< TypeToConvert > ( )
inlinepackageinherited

Definition at line 414 of file JsonValue.cs.

415 {
417 switch (jsonElement.ValueKind)
418 {
419 case JsonValueKind.Number:
420 if (typeof(TypeToConvert) == typeof(int) || typeof(TypeToConvert) == typeof(int?))
421 {
422 return (TypeToConvert)(object)jsonElement.GetInt32();
423 }
424 if (typeof(TypeToConvert) == typeof(long) || typeof(TypeToConvert) == typeof(long?))
425 {
426 return (TypeToConvert)(object)jsonElement.GetInt64();
427 }
428 if (typeof(TypeToConvert) == typeof(double) || typeof(TypeToConvert) == typeof(double?))
429 {
430 return (TypeToConvert)(object)jsonElement.GetDouble();
431 }
432 if (typeof(TypeToConvert) == typeof(short) || typeof(TypeToConvert) == typeof(short?))
433 {
434 return (TypeToConvert)(object)jsonElement.GetInt16();
435 }
436 if (typeof(TypeToConvert) == typeof(decimal) || typeof(TypeToConvert) == typeof(decimal?))
437 {
438 return (TypeToConvert)(object)jsonElement.GetDecimal();
439 }
440 if (typeof(TypeToConvert) == typeof(byte) || typeof(TypeToConvert) == typeof(byte?))
441 {
442 return (TypeToConvert)(object)jsonElement.GetByte();
443 }
444 if (typeof(TypeToConvert) == typeof(float) || typeof(TypeToConvert) == typeof(float?))
445 {
446 return (TypeToConvert)(object)jsonElement.GetSingle();
447 }
448 if (typeof(TypeToConvert) == typeof(uint) || typeof(TypeToConvert) == typeof(uint?))
449 {
450 return (TypeToConvert)(object)jsonElement.GetUInt32();
451 }
452 if (typeof(TypeToConvert) == typeof(ushort) || typeof(TypeToConvert) == typeof(ushort?))
453 {
454 return (TypeToConvert)(object)jsonElement.GetUInt16();
455 }
456 if (typeof(TypeToConvert) == typeof(ulong) || typeof(TypeToConvert) == typeof(ulong?))
457 {
458 return (TypeToConvert)(object)jsonElement.GetUInt64();
459 }
460 if (typeof(TypeToConvert) == typeof(sbyte) || typeof(TypeToConvert) == typeof(sbyte?))
461 {
462 return (TypeToConvert)(object)jsonElement.GetSByte();
463 }
464 break;
465 case JsonValueKind.String:
466 if (typeof(TypeToConvert) == typeof(string))
467 {
468 return (TypeToConvert)(object)jsonElement.GetString();
469 }
470 if (typeof(TypeToConvert) == typeof(DateTime) || typeof(TypeToConvert) == typeof(DateTime?))
471 {
472 return (TypeToConvert)(object)jsonElement.GetDateTime();
473 }
474 if (typeof(TypeToConvert) == typeof(DateTimeOffset) || typeof(TypeToConvert) == typeof(DateTimeOffset?))
475 {
476 return (TypeToConvert)(object)jsonElement.GetDateTimeOffset();
477 }
478 if (typeof(TypeToConvert) == typeof(Guid) || typeof(TypeToConvert) == typeof(Guid?))
479 {
480 return (TypeToConvert)(object)jsonElement.GetGuid();
481 }
482 if (typeof(TypeToConvert) == typeof(char) || typeof(TypeToConvert) == typeof(char?))
483 {
484 string @string = jsonElement.GetString();
485 if (@string.Length == 1)
486 {
487 return (TypeToConvert)(object)@string[0];
488 }
489 }
490 break;
491 case JsonValueKind.True:
492 case JsonValueKind.False:
493 if (typeof(TypeToConvert) == typeof(bool) || typeof(TypeToConvert) == typeof(bool?))
494 {
495 return (TypeToConvert)(object)jsonElement.GetBoolean();
496 }
497 break;
498 }
500 }
static string NodeUnableToConvertElement
Definition SR.cs:296
static string Format(string resourceFormat, object p1)
Definition SR.cs:118
Definition SR.cs:7

References System.Text.Json.Nodes.JsonValue< TValue >._value, System.Text.Json.Dictionary, System.SR.Format(), and System.SR.NodeUnableToConvertElement.