<PackageReference Include="System.ClientModel" Version="1.8.0" />

ReflectionReadOnlyMemoryBuilder<T>

using System.Collections; using System.Collections.Generic; using System.Diagnostics.CodeAnalysis; using System.Runtime.CompilerServices; namespace System.ClientModel.Primitives { [System.Runtime.CompilerServices.NullableContext(1)] [System.Runtime.CompilerServices.Nullable(0)] [System.Diagnostics.CodeAnalysis.RequiresDynamicCode("This class uses reflection. Pass in a generated ModelReaderWriterContext to be AOT compatible.")] [System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("This class uses reflection. Pass in a generated ModelReaderWriterContext to be AOT compatible.")] internal class ReflectionReadOnlyMemoryBuilder<[System.Runtime.CompilerServices.Nullable(2)] T> : ModelReaderWriterTypeBuilder { private Type _memoryType; protected override Type BuilderType => typeof(List<>).MakeGenericType(typeof(T)); protected override Type ItemType => typeof(T); public ReflectionReadOnlyMemoryBuilder(Type memoryType) { _memoryType = memoryType; } protected override object CreateInstance() { return Activator.CreateInstance(BuilderType); } protected override void AddItem(object collection, [System.Runtime.CompilerServices.Nullable(2)] object item) { BuilderType.GetMethod("Add", new Type[1] { ItemType }).Invoke(collection, new object[1] { item }); } protected override object ConvertCollectionBuilder(object builder) { return Activator.CreateInstance(_memoryType, BuilderType.GetMethod("ToArray").Invoke(builder, null)); } [IteratorStateMachine(typeof(ReflectionReadOnlyMemoryBuilder<>.<GetItems>d__9))] [return: System.Runtime.CompilerServices.Nullable(2)] protected override IEnumerable GetItems(object obj) { <GetItems>d__9 <GetItems>d__ = new <GetItems>d__9(-2); <GetItems>d__.<>3__obj = obj; return <GetItems>d__; } } }