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
48/// Function registration and declaration utilities.
49pub mod function;
50pub use function::*;
51
52/// CEL macro system for compile-time expression expansion.
53pub mod macros;
54pub use macros::*;
55
56/// Variable declarations for CEL environments.
57pub mod variable;
58pub use variable::*;
59
60pub mod activation;
61pub use activation::*;
62
63pub mod kind;
64pub use kind::*;
65
66pub mod types;
67pub use types::*;
68
69pub mod values;
70pub use values::*;
71
72pub mod maybe_future;
73pub use maybe_future::*;