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);
     }
 }
Exemple #2
0
        void Hash(GenericInstMethodSig sig)
        {
            if (sig == null)
            {
                return;
            }

            hasher.Hash((byte)sig.GetCallingConvention());
            foreach (var ga in sig.GetGenericArguments())
            {
                Hash(ga);
            }
        }
Exemple #3
0
        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();
		}