JsonSourceGenerator.Emitter.cs (46)
386CollectionType collectionType = typeGenerationSpec.CollectionType;
403case CollectionType.Array:
404case CollectionType.MemoryOfT:
405case CollectionType.ReadOnlyMemoryOfT:
408case CollectionType.IEnumerable:
409case CollectionType.IDictionary:
410case CollectionType.IList:
413case CollectionType.Stack:
414case CollectionType.Queue:
415string addMethod = collectionType == CollectionType.Stack ? "Push" : "Enqueue";
419case CollectionType.ImmutableEnumerable:
422case CollectionType.Dictionary:
423case CollectionType.IDictionaryOfTKeyTValue:
424case CollectionType.IReadOnlyDictionary:
428case CollectionType.ImmutableDictionary:
486case CollectionType.Array:
491case CollectionType.MemoryOfT:
492case CollectionType.ReadOnlyMemoryOfT:
497case CollectionType.IListOfT:
498case CollectionType.List:
499case CollectionType.IList:
2504private static string GetCollectionInfoMethodName(CollectionType collectionType)
2508CollectionType.Array => "CreateArrayInfo",
2509CollectionType.List => "CreateListInfo",
2510CollectionType.IListOfT or CollectionType.IList => "CreateIListInfo",
2511CollectionType.ICollectionOfT => "CreateICollectionInfo",
2512CollectionType.IEnumerableOfT or CollectionType.IEnumerable => "CreateIEnumerableInfo",
2513CollectionType.StackOfT or CollectionType.Stack => "CreateStackInfo",
2514CollectionType.QueueOfT or CollectionType.Queue => "CreateQueueInfo",
2515CollectionType.ConcurrentStack => "CreateConcurrentStackInfo",
2516CollectionType.ConcurrentQueue => "CreateConcurrentQueueInfo",
2517CollectionType.ImmutableEnumerable => "CreateImmutableEnumerableInfo",
2518CollectionType.IAsyncEnumerableOfT => "CreateIAsyncEnumerableInfo",
2519CollectionType.MemoryOfT => "CreateMemoryInfo",
2520CollectionType.ReadOnlyMemoryOfT => "CreateReadOnlyMemoryInfo",
2521CollectionType.ISet => "CreateISetInfo",
2522CollectionType.IReadOnlySetOfT => "CreateIReadOnlySetInfo",
2523CollectionType.Dictionary => "CreateDictionaryInfo",
2524CollectionType.IDictionaryOfTKeyTValue or CollectionType.IDictionary => "CreateIDictionaryInfo",
2525CollectionType.IReadOnlyDictionary => "CreateIReadOnlyDictionaryInfo",
2526CollectionType.ImmutableDictionary => "CreateImmutableDictionaryInfo",