1#![allow(clippy::arc_with_non_send_sync)]
2pub mod clone;
3pub mod collections;
4pub mod error;
5pub mod hash;
6pub mod intern;
7pub mod jit_hooks;
8pub mod keyword;
9pub mod native_object;
10#[cfg(not(feature = "no-gc"))]
11pub mod publish;
12pub mod regex;
13pub mod resource;
14pub mod shared;
15pub mod symbol;
16pub mod types;
17pub mod value;
18
19#[cfg(feature = "no-gc")]
22pub mod publish {
23 pub fn publish_value(v: crate::Value) -> crate::Value {
24 v
25 }
26}
27
28pub use collections::{
29 PersistentArrayMap, PersistentHashMap, PersistentHashSet, PersistentList, PersistentQueue,
30 PersistentVector, SortedMap, SortedSet,
31};
32pub use error::{ExceptionInfo, ValueError, ValueResult};
33pub use hash::ClojureHash;
34pub use intern::{intern_keyword, intern_symbol};
35pub use jit_hooks::set_var_rebind_hook;
36pub use keyword::Keyword;
37pub use native_object::{NativeObject, NativeObjectBox, gc_native_object};
38pub use resource::{Resource, ResourceHandle};
39pub use shared::{PromoteError, SharedAtom, SharedValue, demote, promote};
40pub use symbol::Symbol;
41pub use types::{
42 Agent, Arity, Atom, BoundFn, CljxCons, CljxFn, CljxFnArity, CljxFuture, CljxPromise, Delay,
43 DelayState, FutureState, LazySeq, MultiFn, Namespace, NativeFn, NativeFnFunc, NativeFnPtr,
44 Protocol, ProtocolFn, ProtocolMethod, Thunk, Var, Volatile,
45};
46pub use value::{MapValue, ObjectArray, SetValue, TypeInstance, Value};