terraria-cpp2il-methodrecon v1.4.4.9
Terraria mobile dump, with reconstructed method body. Dump with CallAnalysis: https://infinitynichto.github.io/terraria-cpp2il
Loading...
Searching...
No Matches

◆ CreateNewList()

IList Newtonsoft.Json.Serialization.JsonSerializerInternalReader.CreateNewList ( JsonReader reader,
JsonArrayContract contract,
[Out] bool createdFromNonDefaultCreator )
inlineprivate

Definition at line 588 of file JsonSerializerInternalReader.cs.

589 {
590 if (contract.<CanDeserialize>k__BackingField)
591 {
592 if (contract._overrideCreator != null)
593 {
594 if (contract.<HasParameterizedCreator>k__BackingField)
595 {
597 return contract.CreateTemporaryCollection();
598 }
599 goto IL_0047;
600 }
601 else
602 {
603 if (!contract.IsReadOnlyOrFixedSize)
604 {
605 goto IL_0050;
606 }
608 IList list = contract.CreateTemporaryCollection();
609 if (contract.<ShouldCreateWrapper>k__BackingField)
610 {
611 goto IL_0047;
612 }
613 }
614 IL_008A:
615 bool <ShouldCreateWrapper>k__BackingField;
616 while (<ShouldCreateWrapper>k__BackingField)
617 {
618 }
619 while (<ShouldCreateWrapper>k__BackingField)
620 {
621 }
622 while (<ShouldCreateWrapper>k__BackingField)
623 {
624 }
625 if (!<ShouldCreateWrapper>k__BackingField)
626 {
627 }
629 if (this == null)
630 {
631 return "Could not create an instance of type {0}. Type is an interface or abstract class and cannot be instantiated.";
632 }
633 goto IL_00B7;
634 IL_0047:
635 ObjectConstructor<object> overrideCreator = contract._overrideCreator;
636 IL_0050:
637 if (contract.<DefaultCreator>k__BackingField == null)
638 {
639 goto IL_008A;
640 }
641 if (contract.<DefaultCreatorNonPublic>k__BackingField)
642 {
643 ConstructorHandling constructorHandling = this.Serializer._constructorHandling;
644 }
645 <ShouldCreateWrapper>k__BackingField = contract.<ShouldCreateWrapper>k__BackingField;
646 if (<ShouldCreateWrapper>k__BackingField)
647 {
648 }
650 if (wrappedCollection == null)
651 {
652 goto IL_008A;
653 }
654 if (wrappedCollection == null)
655 {
656 throw new InvalidCastException();
657 }
658 goto IL_008A;
659 }
660 else
661 {
663 }
664 IL_00B7:
665 return "Unable to find a constructor to use for type {0}.";
666 }
class f__AnonymousType0<< Count > j__TPar
ConstructorHandling _constructorHandling
static CultureInfo InvariantCulture

References Newtonsoft.Json.JsonSerializer._constructorHandling, System.Globalization.CultureInfo.InvariantCulture, j__TPar, System.list, and Newtonsoft.Json.Serialization.JsonSerializerInternalBase.Serializer.