1#![forbid(unsafe_code)]
2#![cfg_attr(not(test), deny(clippy::unwrap_used, clippy::expect_used))]
3
4pub mod json;
5
6pub use rexlang_ast::expr::{Program, intern, sym};
7pub use rexlang_engine::{
8 AsyncHandler, AsyncNativeCallable, AsyncNativeCallableCancellable, Engine, EngineError,
9 EngineOptions, Export, FromPointer, Handler, Heap, IntoPointer, Module, NativeFuture,
10 PRELUDE_MODULE_NAME, Pointer, PreludeMode, ROOT_MODULE_NAME, RexAdt, RexDefault, RexType,
11 SyncNativeCallable, Value, ValueDisplayOptions, assert_pointer_eq, closure_debug, closure_eq,
12 collect_adts_error_to_engine, pointer_display, pointer_display_with, value_debug, value_eq,
13};
14pub use rexlang_lexer::Token;
15pub use rexlang_parser::{Parser, ParserLimits, error::ParserErr};
16pub use rexlang_proc_macro::Rex;
17pub use rexlang_typesystem::{
18 AdtConflict, AdtDecl, BuiltinTypeId, CollectAdtsError, Scheme, Type, TypeError, TypeKind,
19 TypeSystem, collect_adts_in_types,
20};
21pub use rexlang_util::{GasCosts, GasMeter};
22
23pub use crate::json::{EnumPatch, JsonOptions, json_to_rex, rex_to_json};