#![forbid(unsafe_code)]
#![deny(missing_docs)]
pub mod admission;
pub mod catalog;
pub mod hash;
pub mod kernel;
pub mod replay;
pub mod types;
#[cfg(feature = "wasm")]
pub mod wasm;
#[cfg(test)]
mod pararule_tests;
pub use admission::{admit_atom, admit_rule, RejectionCode};
pub use catalog::{Catalog, PredicateMeta, PredicateProofPolicy};
pub use hash::{combine_roots, hash_bytes, link_hash, Hash, DOMAIN_PROLOG8_RECEIPT};
pub use kernel::{Decision, Kernel, QueryResult};
pub use replay::{replay, ReplayStatus};
pub use types::{
Atom8, CatalogId, DecisionKind, EpochId, FactBlock8, FactBlockMeta, FactRow8, FeatureBit,
PredicateId, ProofKind, ProofMode, ProofNode, ProofNodeId, QueryAtom8, Receipt, Rule8, RuleId,
SourceId, SubstitutionId, TermId, ARITY_CAP, BINDING_PATTERNS, BODY_CAP, VAR_CAP,
};
pub const ENGINE_VERSION: &str = env!("CARGO_PKG_VERSION");
pub const ENGINE_NAME: &str = "prolog8";