void Write(BinaryWriter writer, GenericInstMethodSig sig) { writer.Write((byte)ObjectType.GenericInstMethodSig); writer.Write((byte)(sig == null ? 0 : sig.GetCallingConvention())); foreach (var ga in sig.GetGenericArguments()) { Write(writer, ga); } }
void Hash(GenericInstMethodSig sig) { if (sig == null) { return; } hasher.Hash((byte)sig.GetCallingConvention()); foreach (var ga in sig.GetGenericArguments()) { Hash(ga); } }
private void Write(GenericInstMethodSig sig) { if (sig == null) { helper.Error("sig is null"); return; } if (!recursionCounter.Increment()) { helper.Error("Infinite recursion"); return; } writer.Write((byte)sig.GetCallingConvention()); var count = WriteCompressedUInt32((uint)sig.GenericArguments.Count); for (uint i = 0; i < count; i++) { Write(sig.GenericArguments[(int)i]); } recursionCounter.Decrement(); }
void Write(GenericInstMethodSig sig) { if (sig == null) { helper.Error("sig is null"); return; } if (!recursionCounter.Increment()) { helper.Error("Infinite recursion"); return; } writer.Write((byte)sig.GetCallingConvention()); uint count = WriteCompressedUInt32((uint)sig.GenericArguments.Count); for (uint i = 0; i < count; i++) Write(sig.GenericArguments[(int)i]); recursionCounter.Decrement(); }