Skip to main content

pounce_common/
lib.rs

1//! POUNCE common primitives.
2//!
3//! Port of Ipopt's `src/Common/`: scalar types, exceptions, journalist,
4//! tagged-object change tracking, cached results, registered options
5//! and options list, utility helpers, and timed-task accumulators.
6
7#![cfg_attr(test, allow(clippy::unwrap_used, clippy::expect_used))]
8
9pub mod cached;
10pub mod debug;
11pub mod diagnostics;
12pub mod exact;
13pub mod exception;
14pub mod journalist;
15pub mod options_list;
16pub mod pd_perturbation;
17pub mod reg_options;
18pub mod style;
19pub mod tagged;
20pub mod timing;
21pub mod tolerance;
22pub mod types;
23pub mod utils;
24
25pub use cached::Cache;
26pub use diagnostics::{DiagCategory, DiagnosticsConfig, DiagnosticsState, DumpFormat, IterSpec};
27pub use exact::{add_is_exact, is_live, mul_is_exact};
28pub use exception::{ExceptionKind, SolverException, option_invalid};
29pub use journalist::{
30    FileJournal, Journal, JournalCategory, JournalLevel, Journalist, StringJournal,
31};
32pub use options_list::OptionsList;
33pub use reg_options::{DefaultValue, OptionType, RegisteredOption, RegisteredOptions, StringEntry};
34pub use tagged::{Tag, TaggedCell, TaggedObject};
35pub use timing::{Deadline, DeadlineKind, TimedTask, TimingStatistics};
36pub use types::{Index, NLP_LOWER_BOUND_INF, NLP_UPPER_BOUND_INF, Number};