public static MethodSignature ParseMethodSignature(Blob blob) { using (var br = blob.ToReader()) { var ms = new MethodSignature(); ms.CallingConventions = br.Read<CallingConventions>(); if (ms.CallingConventions.HasFlag(CallingConventions.Generic)) ms.GenericParamCount = br.ReadCompressedUInt32(); ms.ParamCount = br.ReadCompressedUInt32(); ms.ReturnType = ReadReturnTypeSignature(br); if (ms.ParamCount > 0) ms.FirstParam = ReadParams(br, ms.ParamCount); return ms; } }
public FunctionPointerTypeSignature(MethodSignature signature) : base(ElementType.Fnptr) { Signature = signature; }