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

◆ DecodeArrayArgument()

ImmutableArray< CustomAttributeTypedArgument< TType > >? System.Reflection.Metadata.Ecma335.CustomAttributeDecoder< TType >.DecodeArrayArgument ( ref BlobReader blobReader,
ArgumentTypeInfo info )
inlineprivate

Definition at line 265 of file CustomAttributeDecoder.cs.

266 {
267 int num = blobReader.ReadInt32();
268 if (num == -1)
269 {
270 return null;
271 }
272 if (num == 0)
273 {
275 }
276 if (num < 0)
277 {
278 throw new BadImageFormatException();
279 }
280 ArgumentTypeInfo argumentTypeInfo = default(ArgumentTypeInfo);
281 argumentTypeInfo.Type = info.ElementType;
282 argumentTypeInfo.TypeCode = info.ElementTypeCode;
283 ArgumentTypeInfo info2 = argumentTypeInfo;
284 ImmutableArray<CustomAttributeTypedArgument<TType>>.Builder builder = ImmutableArray.CreateBuilder<CustomAttributeTypedArgument<TType>>(num);
285 for (int i = 0; i < num; i++)
286 {
287 builder.Add(DecodeArgument(ref blobReader, info2));
288 }
289 return builder.MoveToImmutable();
290 }
static readonly ImmutableArray< T > Empty
CustomAttributeTypedArgument< TType > DecodeArgument(ref BlobReader valueReader, ArgumentTypeInfo info)

References System.Reflection.Metadata.Ecma335.CustomAttributeDecoder< TType >.DecodeArgument(), System.Reflection.Metadata.Ecma335.CustomAttributeDecoder< TType >.ArgumentTypeInfo.ElementType, System.Collections.Immutable.ImmutableArray< T >.Empty, and System.info.

Referenced by System.Reflection.Metadata.Ecma335.CustomAttributeDecoder< TType >.DecodeArgument().