From 780aed33121e398fbcda5d7dbc4852d435bcc5ce Mon Sep 17 00:00:00 2001 From: Jameson Nash Date: Mon, 17 Apr 2023 12:24:55 -0400 Subject: [PATCH 1/2] remove eltype piracy from SortedDict --- src/sorted_dict.jl | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/src/sorted_dict.jl b/src/sorted_dict.jl index 2578c56c9..729469aff 100644 --- a/src/sorted_dict.jl +++ b/src/sorted_dict.jl @@ -81,7 +81,8 @@ function SortedDict(o::Ordering, kv) else throw(ArgumentError("In SortedDict(o,kv), kv should contain either pairs or 2-tuples")) end - SortedDict{eltype(c2).parameters[1], eltype(c2).parameters[2], typeof(o)}(o, c2) + SortedDict{ + (c2).parameters[1], eltype(c2).parameters[2], typeof(o)}(o, c2) end SortedDict{K,D}(iter, o::Ordering=Forward) where {K, D} = SortedDict{K,D,typeof(o)}(o, iter) @@ -231,11 +232,8 @@ end @inline Base.eltype(m::SortedDict{K,D,Ord}) where {K,D,Ord <: Ordering} = Pair{K,D} -@inline Base.eltype(::Type{SortedDict{K,D,Ord}}) where {K,D,Ord <: Ordering} = Pair{K,D} @inline Base.keytype(m::SortedDict{K,D,Ord}) where {K,D,Ord <: Ordering} = K -@inline Base.keytype(::Type{SortedDict{K,D,Ord}}) where {K,D,Ord <: Ordering} = K @inline Base.valtype(m::SortedDict{K,D,Ord}) where {K,D,Ord <: Ordering} = D -@inline Base.valtype(::Type{SortedDict{K,D,Ord}}) where {K,D,Ord <: Ordering} = D """ Base.in(p::Pair, sd::SortedDict) From 2faa2a2dc6fd81d2c65ed951b6cc898fd3067712 Mon Sep 17 00:00:00 2001 From: Jameson Nash Date: Mon, 17 Apr 2023 12:26:03 -0400 Subject: [PATCH 2/2] Update sorted_dict.jl --- src/sorted_dict.jl | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/sorted_dict.jl b/src/sorted_dict.jl index 729469aff..77db9ab94 100644 --- a/src/sorted_dict.jl +++ b/src/sorted_dict.jl @@ -81,8 +81,7 @@ function SortedDict(o::Ordering, kv) else throw(ArgumentError("In SortedDict(o,kv), kv should contain either pairs or 2-tuples")) end - SortedDict{ - (c2).parameters[1], eltype(c2).parameters[2], typeof(o)}(o, c2) + SortedDict{eltype(c2).parameters[1], eltype(c2).parameters[2], typeof(o)}(o, c2) end SortedDict{K,D}(iter, o::Ordering=Forward) where {K, D} = SortedDict{K,D,typeof(o)}(o, iter)