Files
Decodal/crates/decodal-core/src/lib.rs
T
2026-07-09 17:46:24 +09:00

36 lines
1.1 KiB
Rust

#![cfg_attr(not(feature = "std"), no_std)]
extern crate alloc;
pub mod ast;
pub mod constraints;
pub mod diagnostic;
pub mod embedding;
pub mod eval;
mod lexer;
pub mod module;
pub mod parser;
pub mod runtime;
pub mod span;
pub mod typed;
pub use ast::{Ast, BinaryOp, CompareOp, Expr, ExprId, Field, Literal, Param};
pub use constraints::normalize_constraints;
#[cfg(feature = "derive")]
pub use decodal_derive::Decodal;
pub use diagnostic::{Diagnostic, DiagnosticKind, Result};
pub use embedding::{HostField, HostValue};
pub use eval::{Engine, format_diagnostic_with};
pub use module::{EmptyLoader, LoadedSource, Module, SourceLoader};
pub use parser::{ParseOutput, Parser, SourceForm, parse_source, parse_source_with_source_id};
pub use runtime::{Constraint, Data, ExprRef, LiteralValue, ModuleId, PrimitiveType, RuntimeValue};
pub use span::{SourceId, Span};
pub use typed::{
DecodalDecode, DecodalSchema, DecodeError, DecodeResult, IntoHostValue, data_at_path,
decode_path, prefix_decode_error,
};
pub fn version() -> &'static str {
env!("CARGO_PKG_VERSION")
}