#![cfg_attr(not(feature = "std"), no_std)]
#![forbid(unsafe_code)]
extern crate alloc;
pub mod emit;
pub mod format;
pub mod generated;
pub mod platform;
pub mod primitive;
pub mod profile;
pub mod resource;
pub mod resource_font;
pub mod session;
#[cfg(feature = "std")]
pub mod texmf;
pub use emit::{EmitNode, IrEmitter};
pub use format::{
FormatImage, FormatInitError, FormatInitializer, FormatPackage, FormatResource,
FormatResourceKind, FormatSnapshot, FormatState, MacroDefinition, RegisterSnapshot,
SessionState,
};
pub use generated::{
generated_node_to_fragment, EmptyGeneratedFontPlatform, EmptyGeneratedPlatform, GeneratedClock,
GeneratedFontHandle, GeneratedFontMetrics, GeneratedFontPlatform, GeneratedFontSystemAdapter,
GeneratedFormatCache, GeneratedHostBox, GeneratedHostBoxRequest, GeneratedHostBoxStyle,
GeneratedLayoutCapture, GeneratedLinebreakRequest, GeneratedNodeHandle, GeneratedNodeKind,
GeneratedNodeSnapshot, GeneratedNodeSourceSpan, GeneratedPlatform, GeneratedPlatformAdapter,
GeneratedResourceProvider, GeneratedResourceRequestRecord, GeneratedSourceSpan,
};
pub use mathtex_font as font;
pub use mathtex_portable_engine_generated as portable_engine;
pub use platform::{
CollectingDiagnosticSink, ConfigurablePlatform, Diagnostic, DiagnosticSeverity, DiagnosticSink,
HostBox, HostBoxGlyph, HostBoxRequest, HostBoxRule, HostBoxRun, HostBoxStyle, HostClock,
HostLimits, LimitError, LinebreakRequest, NoopDiagnosticSink, NoopPlatform, Platform,
};
pub use primitive::{PrimitiveEntry, PrimitiveRegistry, PrimitiveRegistryError};
pub use profile::{
CatcodeDefaults, EngineKind, EnginePatch, EnginePatches, EngineProfile, EngineSemantics,
EtexProfile, ExtensionPolicy, FontSemantics, MathcodeDefaults, PrimitiveKind, PrimitiveOpcode,
PrimitiveSpec, ProfileId, RegisterDefaults, TexCore, TexProfile, XetexProfile,
};
#[cfg(feature = "std")]
pub use resource::FileSystemResourceProvider;
#[cfg(feature = "std")]
pub use texmf::TexmfResources;
pub use resource::{
InMemoryResourceProvider, OverlayResourceProvider, ResolverResourceProvider, Resource,
ResourceBundle, ResourceError, ResourceKind, ResourceProvider,
ResourceRequest as ProviderResourceRequest, ResourceRequestSource,
};
pub use resource_font::ResourceFontSystem;
pub use session::{
BuildError, Engine, EngineBuilder, EngineError, EngineSession, FormatPreloadError,
FragmentInput,
};