Skip to content

Commit

Permalink
Revert "Jishnub aqua (#546)" (#547)
Browse files Browse the repository at this point in the history
This reverts commit dcfedd8.
  • Loading branch information
jverzani authored Dec 4, 2023
1 parent dcfedd8 commit b275df1
Show file tree
Hide file tree
Showing 3 changed files with 14 additions and 15 deletions.
2 changes: 1 addition & 1 deletion Project.toml
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ PolynomialsMakieCoreExt = "MakieCore"
PolynomialsMutableArithmeticsExt = "MutableArithmetics"

[compat]
Aqua = "0.8"
Aqua = "0.6, 0.7"
ChainRulesCore = "1"
ChainRulesTestUtils = "1"
DualNumbers = "0.6"
Expand Down
22 changes: 9 additions & 13 deletions src/polynomial-container-types/immutable-dense-polynomial.jl
Original file line number Diff line number Diff line change
Expand Up @@ -12,24 +12,23 @@ Immutable is a bit of a misnomer, as using the `@set!` macro from `Setfield.jl`
"""
struct ImmutableDensePolynomial{B,T,X,N} <: AbstractDenseUnivariatePolynomial{B,T,X}
coeffs::NTuple{N,T}
function ImmutableDensePolynomial{B,T,X,N}(cs::Tuple{S,Vararg{S}}) where {B,N,T,X, S}
m = length(cs)
m > N && throw(ArgumentError("Tuple too large for N"))
m < N && (cs = ntuple(i -> i <= m ? cs[i] : zero(T), Val(N)))
new{B,T,Symbol(X),N}(T.(cs))
end
function ImmutableDensePolynomial{B,T,X,N}(cs::Tuple{}) where {B,N,T,X}
function ImmutableDensePolynomial{B,T,X,N}(cs::NTuple{N}) where {B,N,T,X}
new{B,T,Symbol(X),N}(cs)
end
end


ImmutableDensePolynomial{B,T,X,N}(check::Type{Val{false}}, cs::NTuple{N,T}) where {B,N,T,X} =
ImmutableDensePolynomial{B,T,X}(cs)

ImmutableDensePolynomial{B,T,X,N}(check::Type{Val{true}}, cs::NTuple{N,T}) where {B,N, T,X} =
ImmutableDensePolynomial{B,T,X,N}(cs)

# tuple with mismatched size
function ImmutableDensePolynomial{B,T,X,N}(xs::NTuple{M,S}) where {B,T,S,X,N,M}
p = ImmutableDensePolynomial{B,S,X,M}(xs)
convert(ImmutableDensePolynomial{B,T,X,N}, ImmutableDensePolynomial{B,T,X,M}(xs))
end

# vector case with N
function ImmutableDensePolynomial{B,T,X,N}(xs::AbstractVector{S}) where {B,T,S,X,N}
ImmutableDensePolynomial{B,T,X,N}(ntuple(Base.Fix1(getindex, xs), Val(N)))
Expand All @@ -47,13 +46,10 @@ function ImmutableDensePolynomial{B,T,X,N}(c::S) where {B,T,X,N,S<:Scalar}
cs = ntuple(i -> i == 1 ? T(c) : zero(T), Val(N))
return ImmutableDensePolynomial{B,T,X,N}(cs)
end
function ImmutableDensePolynomial{B,T,X}(::Val{false}, xs::Tuple{S,Vararg{S}}) where {B,T,S,X}
N = length(xs)
ImmutableDensePolynomial{B,T,X,N}(convert(NTuple{N,T}, xs))
end
ImmutableDensePolynomial{B,T,X}(::Val{false}, xs::NTuple{N,S}) where {B,T,S,X,N} = ImmutableDensePolynomial{B,T,X,N}(convert(NTuple{N,T}, xs))
ImmutableDensePolynomial{B,T,X}(xs::NTuple{N}) where {B,T,X,N} = ImmutableDensePolynomial{B,T,X,N}(convert(NTuple{N,T}, xs))
ImmutableDensePolynomial{B,T}(xs::NTuple{N}, var::SymbolLike=Var(:x)) where {B,T,N} = ImmutableDensePolynomial{B,T,Symbol(var),N}(xs)
ImmutableDensePolynomial{B}(xs::Tuple{T,Vararg{T}}, var::SymbolLike=Var(:x)) where {B,T} = ImmutableDensePolynomial{B,T,Symbol(var),length(xs)}(xs)
ImmutableDensePolynomial{B}(xs::NTuple{N,T}, var::SymbolLike=Var(:x)) where {B,T,N} = ImmutableDensePolynomial{B,T,Symbol(var),N}(xs)

# abstract vector. Must eat order
ImmutableDensePolynomial{B,T,X}(::Val{false}, xs::AbstractVector, order::Int=0) where {B,T,X} =
Expand Down
5 changes: 4 additions & 1 deletion test/aqua.jl
Original file line number Diff line number Diff line change
@@ -1,3 +1,6 @@
using Aqua

Aqua.test_all(Polynomials)
Aqua.test_all(Polynomials;
unbound_args = false,
stale_deps = false
)

0 comments on commit b275df1

Please sign in to comment.