1#![allow(clippy::len_zero)]
2#[macro_use]
3extern crate log;
4
5pub mod ast;
6pub mod deser;
7pub mod framework;
8mod liquid;
9pub mod ops;
10pub mod registry;
11pub mod resource;
12pub mod ser;
13pub mod tensors;
14
15pub use ast::ProtoModel;
16
17pub use tract_core;
18pub use tract_core::prelude::tract_ndarray;
19pub use tract_core::prelude::tract_num_traits;
20
21pub mod prelude {
22    pub use tract_core;
23    pub use tract_core::prelude::*;
24}
25
26pub mod internal {
27    pub use crate::ast::dump_doc::DocDumper;
28    pub use crate::ast::parse::parse_parameters;
29    pub use crate::ast::{
30        param, FragmentDecl, FragmentDef, Identifier, Parameter, RValue, TypeName,
31    };
32    pub use crate::deser::{ModelBuilder, ResolvedInvocation, Value};
33    pub use crate::framework::Nnef;
34    pub use crate::prelude::*;
35    pub use crate::registry::*;
36    pub use crate::resource::{
37        DatLoader, GraphNnefLoader, GraphQuantLoader, Resource, ResourceLoader, TypedModelLoader,
38        TypedModelResource,
39    };
40    pub use crate::ser::{invocation, logical, numeric, string, IntoAst};
41    pub use std::any::TypeId;
42    pub use tract_core::internal::*;
43}
44
45pub fn nnef() -> framework::Nnef {
46    framework::Nnef::default()
47}