Skip to content

Commit 419d65e

Browse files
authored
remove promote_rule method; add type information to any definition (#440)
* remove promote_rule method; add type information to any definition * mirror any
1 parent 8d96702 commit 419d65e

File tree

3 files changed

+7
-7
lines changed

3 files changed

+7
-7
lines changed

Project.toml

+1-1
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ name = "Polynomials"
22
uuid = "f27b6e38-b328-58d1-80ce-0feddd5e7a45"
33
license = "MIT"
44
author = "JuliaMath"
5-
version = "3.1.6"
5+
version = "3.1.7"
66

77
[deps]
88
LinearAlgebra = "37e2e46d-f89d-539d-b4ee-838fcccc9c8e"

src/common.jl

+2-5
Original file line numberDiff line numberDiff line change
@@ -431,9 +431,6 @@ function Base.convert(::Type{T}, p::AbstractPolynomial{T,X}) where {T <: Number,
431431
end
432432

433433
# Methods to ensure that matrices of polynomials behave as desired
434-
Base.promote_rule(::Type{<:AbstractPolynomial{T}},
435-
::Type{<:AbstractPolynomial{S}},
436-
) where {T,S} = Polynomial{promote_type(T, S)}
437434
Base.promote_rule(::Type{P},::Type{Q}) where {T,X, P<:AbstractPolynomial{T,X},
438435
S, Q<:AbstractPolynomial{S,X}} =
439436
Polynomial{promote_type(T, S),X}
@@ -479,13 +476,13 @@ Test whether all coefficients of an `AbstractPolynomial` satisfy predicate `pred
479476
480477
You can implement `isreal`, etc., to a `Polynomial` by using `all`.
481478
"""
482-
Base.all(pred, p::AbstractPolynomial) = all(pred, values(p))
479+
Base.all(pred, p::AbstractPolynomial{T, X}) where {T,X} = all(pred, values(p))
483480
"""
484481
any(pred, poly::AbstractPolynomial)
485482
486483
Test whether any coefficient of an `AbstractPolynomial` satisfies predicate `pred`.
487484
"""
488-
Base.any(pred, p::AbstractPolynomial) = any(pred, values(p))
485+
Base.any(pred, p::AbstractPolynomial{T,X}) where {T, X} = any(pred, values(p))
489486

490487

491488

src/polynomials/ChebyshevT.jl

+4-1
Original file line numberDiff line numberDiff line change
@@ -83,7 +83,10 @@ function Base.convert(C::Type{<:ChebyshevT}, p::Polynomial)
8383
p(x)
8484
end
8585

86-
Base.promote_rule(::Type{P},::Type{Q}) where {T, X, P <: LaurentPolynomial{T,X}, S, Q <: ChebyshevT{S, X}} = LaurentPolynomial{promote_type(T, S), X}
86+
Base.promote_rule(::Type{P},::Type{Q}) where {
87+
T, X, P <: LaurentPolynomial{T,X},
88+
S, Q <: ChebyshevT{S, X}} =
89+
LaurentPolynomial{promote_type(T, S), X}
8790

8891
domain(::Type{<:ChebyshevT}) = Interval(-1, 1)
8992
function Base.one(::Type{P}) where {P<:ChebyshevT}

0 commit comments

Comments
 (0)