コード例 #1
0
ファイル: Extensions.cs プロジェクト: ttRevan/cecil
        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;
        }
コード例 #2
0
ファイル: MetadataResolver.cs プロジェクト: ttRevan/cecil
		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;
		}