1#![doc = include_str!("../README.md")]
2#![forbid(unsafe_code)]
3
4extern crate self as oximo_core;
5
6#[doc(hidden)]
7#[path = "macro_support.rs"]
8pub mod __macro_support;
9pub mod constraint;
10pub mod display;
11pub mod domain;
12pub mod error;
13pub mod indexed;
14pub mod indicator;
15pub mod model;
16pub mod objective;
17pub mod param;
18pub mod prelude;
19pub mod reformulation;
20pub mod set;
21pub mod soc;
22pub mod sos;
23pub mod sum;
24pub mod var;
25
26pub use constraint::{
27 Constraint, ConstraintExpr, ConstraintHandle, ConstraintId, IntoRhs, RangeConstraintHandles,
28 RangeConstraintIds, Relate, Sense,
29};
30pub use display::{
31 ConstraintDisplay, ExprDisplay, IndicatorDisplay, ObjectiveDisplay, SocDisplay, SosDisplay,
32};
33pub use domain::Domain;
34pub use error::{Error, Result};
35pub use indexed::{
36 IndexedConstraint, IndexedIndicatorConstraint, IndexedParam, IndexedRangeConstraint,
37 IndexedRangeIndicatorConstraint, IndexedVar,
38};
39pub use indicator::{
40 IndicatorConstraint, IndicatorConstraintHandle, IndicatorConstraintId,
41 RangeIndicatorConstraintHandles, RangeIndicatorConstraintIds,
42};
43pub use model::{
44 ConstraintRef, IndexedVarBuilder, Model, ModelConstraints, ModelKind, display_index_key,
45};
46pub use objective::{Objective, ObjectiveSense};
47pub use param::Parameter;
48pub use reformulation::{
49 IndicatorReformulationArtifacts, IndicatorReformulationOptions, ReformulatedModel,
50 ReformulationError, SosReformulationArtifacts, SosReformulationOptions,
51};
52pub use set::{
53 Axis, FromIndexKey, FromIndexKeyRef, IndexKey, IndexKeyRef, IndexTuple, KeyCat, ScalarKey, Set,
54 SetIter,
55};
56#[doc(hidden)]
57pub use soc::__detect_soc_from_quadratic;
58pub use soc::{SocConstraint, SocConstraintHandle, SocConstraintId, SocForm};
59pub use sos::{SosConstraint, SosConstraintHandle, SosConstraintId, SosMember, SosType};
60pub use sum::SumDomain;
61pub use var::{VarBuilder, Variable, var_name};
62
63pub use oximo_expr::{
66 Children, EvalError, Expr, ExprArena, ExprArenaCell, ExprArenaSnapshot, ExprArenaWriteGuard,
67 ExprId, ExprNode, ModelId, ModelMismatchError, ParamId, UnaryOp, VarId,
68 describe_nonlinear_term, dot, render_expr, render_linear_terms,
69};
70
71pub use oximo_macros::{
72 constraint, indicator_constraint, max, min, objective, param, set, soc_constraint,
73 sos_constraint, sum, variable,
74};