AsmResolver.Net.Signatures.TypeSignature.ReadTypeSignature C# (CSharp) Метод

ReadTypeSignature() приватный статический Метод

private static ReadTypeSignature ( MetadataHeader header, IBinaryStreamReader reader ) : TypeSignature
header MetadataHeader
reader IBinaryStreamReader
Результат TypeSignature
        private static TypeSignature ReadTypeSignature(MetadataHeader header, IBinaryStreamReader reader)
        {
            var elementType = (ElementType) reader.ReadByte();
            switch (elementType)
            {
                case ElementType.Array:
                    return ArrayTypeSignature.FromReader(header, reader);
                case ElementType.Boxed:
                    return BoxedTypeSignature.FromReader(header, reader);
                case ElementType.ByRef:
                    return ByReferenceTypeSignature.FromReader(header, reader);
                case ElementType.CModOpt:
                    return OptionalModifierSignature.FromReader(header, reader);
                case ElementType.CModReqD:
                    return RequiredModifierSignature.FromReader(header, reader);
                case ElementType.Class:
                    return TypeDefOrRefSignature.FromReader(header, reader);
                case ElementType.FnPtr:
                    return FunctionPointerTypeSignature.FromReader(header, reader);
                case ElementType.GenericInst:
                    return GenericInstanceTypeSignature.FromReader(header, reader);
                case ElementType.MVar:
                    return GenericParameterSignature.FromReader(header, reader, GenericParameterType.Method);
                case ElementType.Pinned:
                    return PinnedTypeSignature.FromReader(header, reader);
                case ElementType.Ptr:
                    return PointerTypeSignature.FromReader(header, reader);
                case ElementType.Sentinel:
                    return SentinelTypeSignature.FromReader(header, reader);
                case ElementType.SzArray:
                    return SzArrayTypeSignature.FromReader(header, reader);
                case ElementType.ValueType:
                    var type = TypeDefOrRefSignature.FromReader(header, reader);
                    type.IsValueType = true;
                    return type;
                case ElementType.Var:
                    return GenericParameterSignature.FromReader(header, reader, GenericParameterType.Type);
                default:
                    return MsCorLibTypeSignature.FromElementType(header, elementType);
            }
        }