Skip to main content

pounce_algorithm/hess/
trait.rs

1//! `HessianUpdater` trait — port of `IpHessianUpdater.hpp`.
2
3use crate::ipopt_cq::IpoptCqHandle;
4use crate::ipopt_data::IpoptDataHandle;
5
6pub trait HessianUpdater {
7    /// Refresh `data.w` for the current iterate. Returns `true` on
8    /// success. Mirrors `IpHessianUpdater::UpdateHessian` (which is
9    /// pure-virtual; implementations write into `IpData().Set_W(...)`).
10    fn update_hessian(&mut self, data: &IpoptDataHandle, cq: &IpoptCqHandle) -> bool;
11}