Ejemplo n.º 1
0
        public static TypeReference MakeGenericType(this TypeReference self, params TypeReference [] arguments)
        {
            if (self.GenericParameters.Count != arguments.Length)
                throw new ArgumentException ();

            var instance = new GenericInstanceType (self);
            foreach (var argument in arguments)
                instance.GenericArguments.Add (argument);

            return instance;
        }
Ejemplo n.º 2
0
		static bool AreSame (GenericInstanceType a, GenericInstanceType b)
		{
			if (a.GenericArguments.Count != b.GenericArguments.Count)
				return false;

			for (int i = 0; i < a.GenericArguments.Count; i++)
				if (!AreSame (a.GenericArguments [i], b.GenericArguments [i]))
					return false;

			return true;
		}