1#![forbid(unsafe_code)]
44#![deny(missing_docs)]
45pub mod callable;
46pub mod capability;
47pub mod card;
48pub mod catalog;
49pub mod claim;
50pub mod class;
51pub mod control;
52pub mod datum;
53pub mod datum_store;
54pub mod effect;
55pub mod effect_ledger;
56pub mod encode;
57pub mod env;
58pub mod error;
59pub mod eval;
60pub mod event;
61pub mod event_ledger;
62#[cfg(test)]
63mod event_tests;
64pub mod expr;
65pub mod fact_store;
66#[cfg(test)]
67mod fact_store_tests;
68pub mod factory;
69pub mod handle_store;
70pub mod hint;
71#[cfg(test)]
72mod hint_tests;
73pub mod id;
74pub mod library;
75pub mod list;
76pub mod native_abi;
77pub mod number_domain;
78pub mod object;
79pub mod op;
80#[cfg(test)]
81mod op_adapter_tests;
82mod op_adapters;
83#[cfg(test)]
84mod op_tests;
85pub mod pratt;
86pub mod rank;
87pub mod realize;
88#[cfg(test)]
89mod realize_tests;
90pub mod ref_id;
91pub mod ref_resolver;
92pub mod seq;
93#[cfg(test)]
94mod seq_tests;
95pub mod shape;
96mod shape_check;
97pub mod shape_report;
98pub mod standard;
99pub mod stream;
100pub mod stream_surface;
101pub mod table;
102pub mod term;
103#[cfg(test)]
104mod term_tests;
105pub mod testing;
106pub mod value;
107pub use callable::Callable;
108pub use capability::{
109 CapabilityName, CapabilitySet, GrantSeat, ReadPolicy, TrustLevel, diminish,
110 eval_fabric_capability, eval_remote_capability, fact_private_capability,
111 list_force_unbounded_capability, macro_expand_capability, macro_expand_compile_capability,
112 macro_expand_eval_capability, macro_expand_read_capability, native_dynamic_load_capability,
113 read_construct_capability, read_eval_capability, registry_catalog_read_capability,
114};
115pub use claim::{Claim, ClaimKind, ClaimPattern, Visibility};
116pub use class::{Class, class_is_subclass_of};
117pub use datum::{
118 DATUM_CONTENT_ALGORITHM_NAME, DATUM_CONTENT_ALGORITHM_NAMESPACE, Datum, datum_content_algorithm,
119};
120pub use datum_store::{BTreeDatumStore, DatumStore};
121pub use effect::{Effect, effect_abort_op_key, effect_resume_op_key};
122pub use encode::{
123 CanonicalPolicy, ConstructorSurface, EncodeOptions, EncodePosition, ObjectEncode,
124 ObjectEncoding, ReadConstructEncodePolicy, ReadConstructor, ReadEvalEncodePolicy, WriteCx,
125};
126pub use env::{Capabilities, Cx, Diagnostics, Env};
127pub use error::{Diagnostic, Error, Result, Severity};
128pub use eval::{
129 Consistency, Demand, EagerPolicy, EvalFabric, EvalFabricRef, EvalMode, EvalPolicy,
130 EvalPolicyRef, EvalReply, EvalRequest, HybridPolicy, LazyPolicy, LazyThunkObject,
131 MacroExpander, MacroExpanderRef, NeedPolicy, NoopEvalPolicy, Phase, PreparedArgs,
132 StrictByShapePolicy, StrictNames, Thunk, ThunkObject, eval_expr_default, force_default,
133};
134pub use event::{Event, EventKind, EventSource, Tick, validate_ticks};
135pub use event_ledger::EventLedger;
136pub use expr::{
137 CanonicalKey, Expr, LocatedExpr, LocatedExprTree, NumberLiteral, Origin, QuoteMode, SourceId,
138 SourceRegistry, Span, Trivia,
139};
140pub use fact_store::{BTreeFactStore, FactStore};
141pub use factory::{DefaultFactory, Factory};
142pub use handle_store::{BTreeHandleStore, HandleStore};
143pub use hint::HintMetadata;
144#[rustfmt::skip]
145pub use id::{CORE_BOOL_CLASS_ID, CORE_BYTES_CLASS_ID, CORE_CARD_CLASS_ID, CORE_CLASS_CLASS_ID, CORE_CODEC_CLASS_ID, CORE_EVAL_REPLY_CLASS_ID, CORE_EVAL_REQUEST_CLASS_ID, CORE_EXPR_CLASS_ID, CORE_FUNCTION_CLASS_ID, CORE_HELP_CLASS_ID, CORE_LIST_CLASS_ID, CORE_LOCAL_EVAL_FABRIC_CLASS_ID, CORE_MACRO_CLASS_ID, CORE_NIL_CLASS_ID, CORE_NUMBER_CLASS_ID, CORE_NUMBER_DOMAIN_CLASS_ID, CORE_SEQUENCE_CLASS_ID, CORE_SHAPE_CLASS_ID, CORE_SHAPE_MATCH_CLASS_ID, CORE_STRING_CLASS_ID, CORE_SYMBOL_CLASS_ID, CORE_TABLE_CLASS_ID, CORE_TEST_CLASS_ID, CORE_THUNK_CLASS_ID, CaseId, ClassId, CodecId, FunctionId, LibId, MacroId, NumberDomainId, RuntimeId, ShapeId, SiteId, Symbol, ValueId};
146pub use library::{
147 AbiVersion, CatalogSource, Dependency, Export, ExportKind, ExportRecord, ExportState, Lib,
148 LibBootDependency, LibBootReceipt, LibLoader, LibManifest, LibSource, LibSourceSpec, LibTarget,
149 Linker, LoadCx, LoadedLib, LoaderRegistry, Registry, RegistryBootState, Test, TestReport,
150 Version,
151};
152pub use list::{
153 DEFAULT_FORCE_BOUND, LengthResult, ListBackend, ListRegistry, ListValue, VecList,
154 force_list_bound, force_list_to_vec, spine_len_cmp,
155};
156pub use native_abi::{
157 NATIVE_DYLIB_ENTRYPOINT_V1, NATIVE_LIB_ABI_V1_MAJOR, NATIVE_LIB_ABI_V1_MINOR,
158 NativeAbiBorrowedBytes, NativeAbiCall, NativeAbiCallResponse, NativeAbiDestroyBytes,
159 NativeAbiDestroyError, NativeAbiDestroyInstance, NativeAbiError, NativeAbiInstantiate,
160 NativeAbiManifest, NativeAbiOwnedBytes, NativeLibAbiHeaderV1, NativeLibAbiV1,
161 native_abi_owned_bytes,
162};
163pub use number_domain::{
164 NumberBinaryOp, NumberDomain, NumberReductionOp, NumberUnaryOp, NumberValue, NumberValueRef,
165 PromotionRule, PromotionSearchLimits, ValueNumberBinaryOp, ValueNumberReductionOp,
166 ValueNumberUnaryOp, ValuePromotionRule,
167};
168pub use object::{
169 Args, ClaimSink, ClassRef, Object, ObjectCompat, ObjectHeader, RawArgs, ReadConstructorRef,
170 ShapeRef, TableRef, default_object_header, is_default_object_header,
171};
172#[rustfmt::skip]
173pub use op::{Op, OpSpec, ResolvedOp, Step, check_shape_if_available, core_any_ref, core_call_op_key, core_class_symbol_op_key, core_dir_is_dir_op_key, core_expr_snapshot_op_key, core_force_op_key, core_list_items_op_key, core_number_domain_symbol_op_key, core_number_value_op_key, core_object_encoding_op_key, core_read_construct_op_key, core_realize_start_op_key, core_seq_close_op_key, core_seq_next_op_key, core_shape_check_term_op_key, core_shape_check_value_op_key, core_shape_describe_op_key, core_table_entries_op_key, invoke_op, resolve_op};
174pub use pratt::{
175 Fixity, PrattOperator, PrattResult, PrattTable, PrattTableObject, Token as PrattToken,
176 parse_symbol as parse_pratt_symbol, pratt_table_value,
177};
178pub use realize::{
179 BufferedEventSource, ObserveMode, RealizeRequest, drain_events_to_reply, realize_events,
180 realize_final,
181};
182pub use ref_id::{ContentId, Coordinate, HandleId, Ref};
183pub use ref_resolver::{
184 RefResolver, ResolvedRef, TemporaryRefResolver, value_from_datum, value_from_ref,
185};
186#[rustfmt::skip]
187pub use seq::{EventSourceSequence, ListSequence, Sequence, SequenceItem, seq_close, seq_close_value, seq_is_done, seq_next, seq_next_value, seq_peek, sequence_item_from_event, sequence_item_value};
188pub use shape::{
189 ExprKind, MatchScore, Shape, ShapeBindings, ShapeCallTarget, ShapeDoc, ShapeMatch,
190 ShapeMatchObject, call_shape, shape_is_subshape_of, shape_match_value,
191};
192pub use stream::Stream;
193pub use table::{AssocTable, Dir, Table, TableBackend, TableRegistry};
194pub use term::{OpKey, Term};
195pub use value::{RuntimeObject, Value};