#![forbid(unsafe_code)]
mod compile;
mod data;
mod error;
mod penalty;
mod predictor;
mod schema;
mod spec;
mod terms;
pub use data::{BoolCol, CatCol, Category, Col, DataView, NumericCol, NumericResponse, col};
pub use error::FormulaError;
pub use penalty::FormulaPenalty;
pub use predictor::FormulaPredictorBlock;
pub use schema::{BuiltModel, ModelSchema, ParameterTerms, PredictionDesign, ResponseSchema};
pub use spec::{
BetaBlocks, BetaSpec, BuiltBeta, BuiltGamma, BuiltInverseGaussian, BuiltLogNormal, BuiltNormal,
BuiltWeibull, CompiledBeta, CompiledGamma, CompiledInverseGaussian, CompiledLogNormal,
CompiledNormal, CompiledWeibull, FormulaBlock, GammaBlocks, GammaSpec, InverseGaussianBlocks,
InverseGaussianSpec, LogNormalBlocks, LogNormalSpec, ModelSpec, NormalBlocks, NormalSpec,
WeibullBlocks, WeibullSpec, beta, gamma, inverse_gaussian, log_normal, normal, weibull,
};
pub use terms::{
CyclicPSplineTerm, FittedTerm, FourierTerm, MonotoneTerm, PSplineTerm, TensorPSplineTerm,
TermExpr, TermSpec, cyclic_pspline, factor, fourier, indicator, interaction, intercept, linear,
monotone, no_intercept, offset, pspline, tensor_pspline,
};
pub mod prelude {
pub use crate::{
BetaSpec, BoolCol, BuiltBeta, BuiltGamma, BuiltInverseGaussian, BuiltLogNormal, BuiltModel,
BuiltNormal, BuiltWeibull, CatCol, Category, Col, CompiledBeta, CompiledGamma,
CompiledInverseGaussian, CompiledLogNormal, CompiledNormal, CompiledWeibull,
CyclicPSplineTerm, DataView, FittedTerm, FormulaError, FormulaPenalty,
FormulaPredictorBlock, FourierTerm, GammaSpec, InverseGaussianSpec, LogNormalSpec,
ModelSchema, ModelSpec, MonotoneTerm, NormalSpec, NumericCol, NumericResponse, PSplineTerm,
ParameterTerms, PredictionDesign, ResponseSchema, TensorPSplineTerm, TermExpr, TermSpec,
WeibullSpec, beta, col, cyclic_pspline, factor, fourier, gamma, indicator, interaction,
intercept, inverse_gaussian, linear, log_normal, monotone, no_intercept, normal, offset,
pspline, tensor_pspline, weibull,
};
}
#[cfg(test)]
mod tests;