/// <summary> /// Creates a new <see cref="GenericParameterData"/> with the /// <paramref name="name"/>, <paramref name="requiresBlankConstructor"/>, <paramref name="constructors"/>, /// <paramref name="methods"/>, <paramref name="indexers"/>, <paramref name="properties"/> and <paramref name="events"/> provided. /// </summary> /// <param name="name">The <see cref="String"/> value of the unique identifier of the <see cref="IGenericParameter"/> /// to create.</param> /// <param name="constructors">The <see cref="SignaturesData"/> associated to the constructors to add.</param> /// <param name="methods">The <see cref="ExtendedSignaturesData"/> associated to the methods to add.</param> /// <param name="indexers">The <see cref="ExtendedSignaturesData"/> associated to the indexers to add.</param> /// <param name="properties">The <see cref="TypedNameSeries"/> associated to the properties to add.</param> /// <param name="events">The <see cref="TypedNameSeries"/> associated to the events to add.</param> /// <param name="constraints">The <see cref="IType"/> array /// specifying the constraints which bind the resultant generic /// parameter.</param> public GenericParameterData(string name, SignaturesData constructors, ExtendedSignaturesData methods, ExtendedSignaturesData indexers, TypedNameSeries properties, TypedNameSeries events, IType[] constraints = null) { this.name = name; this.methods = methods; this.indexers = indexers; this.properties = properties; this.events = events; this.ctors = constructors; this.specialConstraint = GenericTypeParameterSpecialConstraint.None; if (constraints == null) { this.constraints = null; } else { this.constraints = constraints.ToCollection(); } }
/// <summary> /// Creates a new <see cref="GenericParameterData"/> /// with the <paramref name="name"/>, <paramref name="constructors"/>, and <paramref name="constraints"/> provided. /// </summary> /// <param name="name">The <see cref="String"/> /// that represents the name of the generic parameter.</param> /// <param name="constructors">The <see cref="SignaturesData"/> /// which defines the constructor information on the parameter.</param> /// <param name="constraints">The <see cref="IType"/> array /// specifying the constraints which bind the resultant generic /// parameter.</param> public GenericParameterData(string name, SignaturesData constructors, IType[] constraints = null) : this(name, constructors, ExtendedSignaturesData.Empty, ExtendedSignaturesData.Empty, TypedNameSeries.Empty, TypedNameSeries.Empty, constraints) { }