#![forbid(unsafe_code)]
pub mod builtins;
pub mod bytecode;
mod clock;
pub mod embed;
pub mod heap;
pub mod host;
pub mod runtime;
pub mod shape;
pub mod value;
pub mod vm;
pub use builtins::agent::ScriptRunner;
pub use bytecode::{CodeStore, CodeUnit, CodeUnitId, Insn, Opcode, UnitRef, Units};
pub use embed::{KeyName, NativeCx, PropertyDescriptor};
pub use heap::atom::{KeyKind, PropertyKey};
pub use heap::gc::{Handle, HeapLimits, RootMark};
pub use heap::object::ObjectKind;
pub use heap::report::MemoryReport;
pub use heap::{AtomMode, BytecodeTemplate, Heap, HeapError};
pub use runtime::{Intrinsic, Realm, Runtime, RuntimeOptions, ThrownSummary};
pub use shape::PropertyFlags;
pub use value::{
BigIntId, BytecodeId, Kind, ObjectId, ScopeId, ShapeId, StringId, SymbolId, ValidityCellId,
Value,
};
pub use vm::{ErrorKind, Output, Throw};