Skip to content

Commit 09d06a6

Browse files
committed
Fix ambiguity
1 parent 29c1a7a commit 09d06a6

File tree

1 file changed

+5
-3
lines changed

1 file changed

+5
-3
lines changed

src/comparison.jl

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -200,7 +200,9 @@ Springer Science & Business Media, **2013**.
200200
"""
201201
struct LexOrder <: AbstractMonomialOrdering end
202202

203-
compare(exp1, exp2, ::Type{LexOrder}) = Base.cmp(exp1, exp2)
203+
const _TupleOrVector = Union{Tuple, AbstractVector}
204+
205+
compare(exp1::_TupleOrVector, exp2::_TupleOrVector, ::Type{LexOrder}) = Base.cmp(exp1, exp2)
204206

205207
"""
206208
struct InverseLexOrder <: AbstractMonomialOrdering end
@@ -222,9 +224,9 @@ struct InverseLexOrder <: AbstractMonomialOrdering end
222224

223225
# We can't use `Iterators.Reverse` because it's not an `AbstractVector`
224226
# so not `cmp` methods is defined for it.
225-
_rev(v::AbstractArray) = view(v, lastindex(v):-1:firstindex(v))
227+
_rev(v::AbstractVector) = view(v, lastindex(v):-1:firstindex(v))
226228
_rev(t::Tuple) = reverse(t)
227-
function compare(exp1, exp2, ::Type{InverseLexOrder})
229+
function compare(exp1::_TupleOrVector, exp2::_TupleOrVector, ::Type{InverseLexOrder})
228230
return compare(_rev(exp1), _rev(exp2), LexOrder)
229231
end
230232

0 commit comments

Comments
 (0)