Skip to content

Commit c0dfa80

Browse files
authored
Qualify the use of coefficient (#61)
1 parent 5588163 commit c0dfa80

File tree

2 files changed

+14
-4
lines changed

2 files changed

+14
-4
lines changed

src/variable.jl

Lines changed: 13 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,19 @@
11
export Poly
22

3-
function JuMP.value(t::AbstractTerm{<:JuMP.AbstractJuMPScalar})
4-
JuMP.value(coefficient(t)) * monomial(t)
3+
function JuMP.value(
4+
t::AbstractTerm{<:JuMP.AbstractJuMPScalar},
5+
f::Function = JuMP.value,
6+
)
7+
return JuMP.value(MultivariatePolynomials.coefficient(t), f) * monomial(t)
58
end
6-
function JuMP.value(p::AbstractPolynomialLike{<:JuMP.AbstractJuMPScalar})
7-
polynomial(JuMP.value.(terms(p)), MultivariatePolynomials.SortedUniqState())
9+
function JuMP.value(
10+
p::AbstractPolynomialLike{<:JuMP.AbstractJuMPScalar},
11+
f::Function = JuMP.value,
12+
)
13+
return polynomial(
14+
JuMP.value.(terms(p), f),
15+
MultivariatePolynomials.SortedUniqState(),
16+
)
817
end
918

1019
abstract type AbstractPoly end

test/variable.jl

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -93,4 +93,5 @@ end
9393
JuMP.fix(α, 2)
9494
JuMP.fix(β, 3)
9595
@test_broken JuMP.value(p) == 2x*y + 3x^2
96+
@test JuMP.value(p, fix_value) == 2x*y + 3x^2
9697
end

0 commit comments

Comments
 (0)