#![cfg_attr(docsrs, feature(doc_cfg))]
#![doc = include_str!("../README.md")]

mod attribute;
mod collection;
mod connection_design;
mod context;
mod data;
mod data_trait;
mod data_type;
mod debug;
mod described_type;
mod entry;
mod error;
mod flow;
mod function;
mod generic;
mod identifier;
mod input;
mod model;
mod model_design;
mod model_instanciation_design;
mod output;
mod parameter;
mod reporting;
mod treatment;
mod treatment_design;
mod treatment_instanciation_design;
mod value;
mod variability;

pub use attribute::{Attribute, Attributes};
pub use collection::{Collection, Element};
pub use connection_design::{ConnectionDesign, IoDesign};
pub use context::Context;
pub use data::Data;
pub use data_trait::DataTrait;
pub use data_type::DataType;
pub use debug::Event;
pub use described_type::DescribedType;
pub use entry::{Entry, EntryId, EntryKind};
pub use error::{SharingError, SharingResult};
pub use flow::Flow;
pub use function::Function;
pub use generic::Generic;
pub use identifier::Identifier;
pub use input::Input;
pub use model::{Model, ModelImplementationKind};
pub use model_design::ModelDesign;
pub use model_instanciation_design::ModelInstanciationDesign;
pub use output::Output;
pub use parameter::Parameter;
pub use reporting::ProgramDump;
pub use treatment::{Treatment, TreatmentImplementationKind};
pub use treatment_design::TreatmentDesign;
pub use treatment_instanciation_design::TreatmentInstanciationDesign;
pub use value::{RawValue, Value};
pub use variability::Variability;
