cel_cxx_ffi/
lib.rs

1pub mod absl;
2pub mod checker;
3pub mod common;
4pub mod compiler;
5mod cxx;
6pub mod extensions;
7pub mod parser;
8pub mod protobuf;
9pub mod runtime;
10
11pub use absl::*;
12pub use checker::*;
13pub use common::*;
14pub use compiler::*;
15pub use extensions::*;
16pub use parser::*;
17pub use protobuf::*;
18pub use runtime::*;
19
20// Rep is a helper type to represent data layout.
21#[repr(C)]
22#[derive(Copy, Clone)]
23struct Rep<'a, T: Copy + Clone, const N: usize> {
24    _space: std::mem::MaybeUninit<[T; N]>,
25    _marker: std::marker::PhantomData<&'a ()>,
26}
27
28pub trait SizedExternType: ::cxx::ExternType + Sized {
29    fn size_of() -> usize {
30        std::mem::size_of::<Self>()
31    }
32}