Trait WriteSolverLog

Source
pub trait WriteSolverLog {
Show 14 methods // Required methods fn log_candidate(&mut self, costs: &[usize], phase: Phase) -> Result<()>; fn log_oracle_call(&mut self, result: SolverResult) -> Result<()>; fn log_solution(&mut self) -> Result<()>; fn log_non_dominated(&mut self, pareto_point: &NonDomPoint) -> Result<()>; fn log_fence(&mut self, fence: &[usize]) -> Result<()>; fn log_routine_start(&mut self, desc: &'static str) -> Result<()>; fn log_routine_end(&mut self) -> Result<()>; fn log_end_solve(&mut self) -> Result<()>; fn log_ideal(&mut self, ideal: &[usize]) -> Result<()>; fn log_nadir(&mut self, nadir: &[usize]) -> Result<()>; fn log_core( &mut self, weight: usize, len: usize, red_len: usize, ) -> Result<()>; fn log_core_exhaustion( &mut self, exhausted: usize, weight: usize, ) -> Result<()>; fn log_inprocessing( &mut self, cls_before_after: (usize, usize), fixed_lits: usize, obj_range_before_after: Vec<(usize, usize)>, ) -> Result<()>; fn log_message(&mut self, msg: &str) -> Result<()>;
}
Expand description

A logger to attach to a solver

Required Methods§

Source

fn log_candidate(&mut self, costs: &[usize], phase: Phase) -> Result<()>

Adds a candidate cost point to the log

Source

fn log_oracle_call(&mut self, result: SolverResult) -> Result<()>

Adds an oracle call to the log

Source

fn log_solution(&mut self) -> Result<()>

Adds a solution to the log

Source

fn log_non_dominated(&mut self, pareto_point: &NonDomPoint) -> Result<()>

Adds a non-dominated point to the log

Source

fn log_fence(&mut self, fence: &[usize]) -> Result<()>

Adds a fence change in the lower-bounding algorithm to the log

Source

fn log_routine_start(&mut self, desc: &'static str) -> Result<()>

Adds a new routine starting to the log

Source

fn log_routine_end(&mut self) -> Result<()>

Adds a new routine ending to the log

Source

fn log_end_solve(&mut self) -> Result<()>

Adds end of solving to the log

Source

fn log_ideal(&mut self, ideal: &[usize]) -> Result<()>

Adds an updated ideal point to the log

Source

fn log_nadir(&mut self, nadir: &[usize]) -> Result<()>

Adds an updated nadir point to the log

Source

fn log_core(&mut self, weight: usize, len: usize, red_len: usize) -> Result<()>

Adds an extracted core to the log

Source

fn log_core_exhaustion(&mut self, exhausted: usize, weight: usize) -> Result<()>

Adds a core exhaustion to the log

Source

fn log_inprocessing( &mut self, cls_before_after: (usize, usize), fixed_lits: usize, obj_range_before_after: Vec<(usize, usize)>, ) -> Result<()>

Adds an inprocessing step to the log

Source

fn log_message(&mut self, msg: &str) -> Result<()>

Logs any string

Implementors§