diff --git a/src/Bridges/Constraint/bridges/split_complex_equalto.jl b/src/Bridges/Constraint/bridges/split_complex_equalto.jl index 325612a0b6..ebebe8e8cb 100644 --- a/src/Bridges/Constraint/bridges/split_complex_equalto.jl +++ b/src/Bridges/Constraint/bridges/split_complex_equalto.jl @@ -159,11 +159,11 @@ function MOI.delete(model::MOI.ModelLike, bridge::SplitComplexEqualToBridge) end function MOI.supports( - ::MOI.ModelLike, - ::Union{MOI.ConstraintPrimalStart,MOI.ConstraintDualStart}, - ::Type{<:SplitComplexEqualToBridge}, -) - return true + model::MOI.ModelLike, + attr::Union{MOI.ConstraintPrimalStart,MOI.ConstraintDualStart}, + ::Type{<:SplitComplexEqualToBridge{T,F}}, +) where {T,F} + return MOI.supports(model, attr, MOI.ConstraintIndex{F,MOI.EqualTo{T}}) end function MOI.get( diff --git a/src/Bridges/Constraint/bridges/split_complex_zeros.jl b/src/Bridges/Constraint/bridges/split_complex_zeros.jl index ba637e1faf..3e12f77136 100644 --- a/src/Bridges/Constraint/bridges/split_complex_zeros.jl +++ b/src/Bridges/Constraint/bridges/split_complex_zeros.jl @@ -157,11 +157,11 @@ function MOI.delete(model::MOI.ModelLike, bridge::SplitComplexZerosBridge) end function MOI.supports( - ::MOI.ModelLike, - ::Union{MOI.ConstraintPrimalStart,MOI.ConstraintDualStart}, - ::Type{<:SplitComplexZerosBridge}, -) - return true + model::MOI.ModelLike, + attr::Union{MOI.ConstraintPrimalStart,MOI.ConstraintDualStart}, + ::Type{<:SplitComplexZerosBridge{T,F}}, +) where {T,F} + return MOI.supports(model, attr, MOI.ConstraintIndex{F,MOI.Zeros}) end function MOI.get( diff --git a/src/Bridges/Constraint/bridges/split_hyperrectangle.jl b/src/Bridges/Constraint/bridges/split_hyperrectangle.jl index 0a573f0b4f..9128b6b043 100644 --- a/src/Bridges/Constraint/bridges/split_hyperrectangle.jl +++ b/src/Bridges/Constraint/bridges/split_hyperrectangle.jl @@ -154,11 +154,11 @@ function MOI.get( end function MOI.supports( - ::MOI.ModelLike, - ::Union{MOI.ConstraintPrimalStart,MOI.ConstraintDualStart}, - ::Type{<:SplitHyperRectangleBridge}, -) - return true + model::MOI.ModelLike, + attr::Union{MOI.ConstraintPrimalStart,MOI.ConstraintDualStart}, + ::Type{<:SplitHyperRectangleBridge{T,G}}, +) where {T,G} + return MOI.supports(model, attr, MOI.ConstraintIndex{G,MOI.Nonnegatives}) end function MOI.set( diff --git a/src/Bridges/Constraint/bridges/square.jl b/src/Bridges/Constraint/bridges/square.jl index a3bacefbdd..0d3d40d0d8 100644 --- a/src/Bridges/Constraint/bridges/square.jl +++ b/src/Bridges/Constraint/bridges/square.jl @@ -279,9 +279,10 @@ end function MOI.supports( model::MOI.ModelLike, attr::Union{MOI.ConstraintPrimalStart,MOI.ConstraintDualStart}, - ::Type{<:SquareBridge}, -) - return true + ::Type{SquareBridge{T,F,G,TT,ST}}, +) where {T,F,G,TT,ST} + return MOI.supports(model, attr, MOI.ConstraintIndex{F,TT}) & + MOI.supports(model, attr, MOI.ConstraintIndex{G,MOI.EqualTo{T}}) end function MOI.set( diff --git a/src/Bridges/Variable/bridges/hermitian.jl b/src/Bridges/Variable/bridges/hermitian.jl index d05da70c98..71d33e7b68 100644 --- a/src/Bridges/Variable/bridges/hermitian.jl +++ b/src/Bridges/Variable/bridges/hermitian.jl @@ -332,11 +332,11 @@ function unbridged_map( end function MOI.supports( - ::MOI.ModelLike, - ::MOI.VariablePrimalStart, + model::MOI.ModelLike, + attr::MOI.VariablePrimalStart, ::Type{<:HermitianToSymmetricPSDBridge}, ) - return true + return MOI.supports(model, attr, MOI.VariableIndex) end function MOI.set(