/// <excludedoc /> protected internal override ITypeInfo ApplySubstitution(StaticTypeSubstitution substitution) { return(substitution.Apply(this)); }
/// <excludedoc /> protected internal override ITypeInfo ApplySubstitution(StaticTypeSubstitution substitution) { return(ElementType.ApplySubstitution(substitution).MakeByRefType()); }
/// <summary> /// Creates a wrapper. /// </summary> /// <param name="policy">The reflection policy.</param> /// <param name="handle">The underlying reflection object.</param> /// <param name="declaringType">The declaring type.</param> /// <param name="reflectedType">The reflected type.</param> /// <param name="substitution">The type substitution for generic parameters.</param> /// <exception cref="ArgumentNullException">Thrown if <paramref name="policy"/>, <paramref name="handle"/>, /// or <paramref name="declaringType"/> or <paramref name="reflectedType"/> is null.</exception> public StaticMethodWrapper(StaticReflectionPolicy policy, object handle, StaticDeclaredTypeWrapper declaringType, StaticDeclaredTypeWrapper reflectedType, StaticTypeSubstitution substitution) : base(policy, handle, declaringType, reflectedType) { this.substitution = substitution; }
/// <summary> /// Applies a type substitution and returns the resulting type. /// </summary> /// <param name="substitution">The substitution.</param> /// <returns>The type after substitution has been performed.</returns> protected internal virtual ITypeInfo ApplySubstitution(StaticTypeSubstitution substitution) { return(this); }
/// <excludedoc /> protected internal override ITypeInfo ApplySubstitution(StaticTypeSubstitution substitution) { return(ElementType.ApplySubstitution(substitution).MakeArrayType(arrayRank)); }
/// <summary> /// Composes the substitution of the type with the specified substitution and returns a new wrapper. /// </summary> /// <param name="substitution">The substitution.</param> /// <returns>The new wrapper with the composed substitution.</returns> public StaticDeclaredTypeWrapper ComposeSubstitution(StaticTypeSubstitution substitution) { return(new StaticDeclaredTypeWrapper(ReflectionPolicy, Handle, DeclaringType, Substitution.Compose(substitution))); }