#![warn(missing_docs)]
#[cfg(feature = "cache")]
pub mod cache;
#[cfg(feature = "auth")]
pub mod auth;
#[cfg(feature = "cache")]
pub use cache::{
CacheConfig, CacheKey, CacheOptions, CacheableFn, Cached, cache_shared, invalidate_all_cached,
invalidate_cached, invalidate_cached_call, invalidate_cached_key, invalidate_cached_name,
set_cache_owner, use_cached, use_cached_key, use_cached_key_with, use_cached_with,
use_client_cache,
};
#[cfg(all(feature = "cache", feature = "server"))]
pub use cache::{ServerCache, cdn_cache_guard};
#[cfg(feature = "auth")]
pub use g3_kit_macros::public;
#[doc(hidden)]
pub mod __private {
#[cfg(feature = "cache")]
pub use crate::cache::__private::*;
#[cfg(all(feature = "auth", feature = "server"))]
pub use inventory;
#[cfg(feature = "auth")]
pub use crate::__g3_kit_public_endpoint as public_endpoint;
}
#[doc(hidden)]
#[macro_export]
#[cfg(all(feature = "auth", feature = "server"))]
macro_rules! __g3_kit_public_endpoint {
($path:literal) => {
const _: () = {
$crate::__private::inventory::submit! {
$crate::auth::PublicEndpoint::new($path)
}
};
};
}
#[doc(hidden)]
#[macro_export]
#[cfg(all(feature = "auth", not(feature = "server")))]
macro_rules! __g3_kit_public_endpoint {
($path:literal) => {};
}