cel_cxx/
lib.rs

1#![doc = include_str!("../README.md")]
2#![cfg_attr(docsrs, feature(doc_cfg))]
3#![warn(
4    missing_debug_implementations,
5    rust_2018_idioms,
6    missing_docs,
7    unreachable_pub
8)]
9
10#[cfg(feature = "derive")]
11#[cfg_attr(docsrs, doc(cfg(feature = "derive")))]
12pub use cel_cxx_macros::*;
13
14#[cfg(feature = "async")]
15#[cfg_attr(docsrs, doc(cfg(feature = "async")))]
16pub mod r#async;
17
18#[cfg(feature = "async-std")]
19#[cfg_attr(docsrs, doc(cfg(feature = "async-std")))]
20pub use r#async::AsyncStd;
21
22#[cfg(feature = "tokio")]
23#[cfg_attr(docsrs, doc(cfg(feature = "tokio")))]
24pub use r#async::Tokio;
25
26#[cfg(feature = "smol")]
27#[cfg_attr(docsrs, doc(cfg(feature = "smol")))]
28pub use r#async::Smol;
29
30/// Marker types and traits for function and runtime polymorphism.
31pub mod marker;
32pub use marker::*;
33
34/// Environment for compiling CEL expressions.
35pub mod env;
36pub use env::*;
37
38/// Compiled CEL programs ready for evaluation.
39pub mod program;
40pub use program::*;
41
42mod ffi;
43
44/// Error types and error handling utilities.
45pub mod error;
46pub use error::*;
47
48pub mod function;
49pub use function::*;
50
51pub mod variable;
52pub use variable::*;
53
54pub mod activation;
55pub use activation::*;
56
57pub mod kind;
58pub use kind::*;
59
60pub mod types;
61pub use types::*;
62
63pub mod values;
64pub use values::*;
65
66pub mod maybe_future;
67pub use maybe_future::*;