Skip to content

Commit 13f9ef5

Browse files
committed
allow Rational in divison with PolyForm
1 parent 7c28c42 commit 13f9ef5

File tree

1 file changed

+5
-4
lines changed

1 file changed

+5
-4
lines changed

src/polyform.jl

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -81,14 +81,15 @@ end
8181
# forward gcd
8282

8383
PF = :(PolyForm{promote_symtype(/, symtype(x), symtype(y))})
84+
const FriendlyCoeffType = Union{Integer, Rational}
8485
@eval begin
8586
Base.div(x::PolyForm, y::PolyForm) = $PF(div(x.p, y.p), mix_dicts(x, y)...)
86-
Base.div(x::Integer, y::PolyForm) = $PF(div(x, y.p), y.pvar2sym, y.sym2term)
87-
Base.div(x::PolyForm, y::Integer) = $PF(div(x.p, y), x.pvar2sym, x.sym2term)
87+
Base.div(x::FriendlyCoeffType, y::PolyForm) = $PF(div(x, y.p), y.pvar2sym, y.sym2term)
88+
Base.div(x::PolyForm, y::FriendlyCoeffType) = $PF(div(x.p, y), x.pvar2sym, x.sym2term)
8889

8990
Base.gcd(x::PolyForm, y::PolyForm) = $PF(_gcd(x.p, y.p), mix_dicts(x, y)...)
90-
Base.gcd(x::Integer, y::PolyForm) = $PF(_gcd(x, y.p), y.pvar2sym, y.sym2term)
91-
Base.gcd(x::PolyForm, y::Integer) = $PF(_gcd(x.p, y), x.pvar2sym, x.sym2term)
91+
Base.gcd(x::FriendlyCoeffType, y::PolyForm) = $PF(_gcd(x, y.p), y.pvar2sym, y.sym2term)
92+
Base.gcd(x::PolyForm, y::FriendlyCoeffType) = $PF(_gcd(x.p, y), x.pvar2sym, x.sym2term)
9293
end
9394

9495
_isone(p::PolyForm) = isone(p.p)

0 commit comments

Comments
 (0)