1pub mod asset;
15mod binding_style;
16pub mod cache;
18pub mod collision;
20pub mod compiler;
22mod compiler_bind;
23mod compiler_style;
24pub mod constraints;
26pub mod control;
28pub mod data;
30pub mod debug;
32pub mod debug_export;
34mod debug_geometry;
35mod debug_plan;
36#[cfg(test)]
37mod debug_tests;
38mod diagnostic_budget;
39pub mod error;
41pub mod export;
43pub mod expression;
45pub mod fingerprint;
47pub mod font;
49pub mod geometry;
51pub mod image;
53pub mod inspect;
55pub mod ir;
57pub mod layout;
59mod layout_collision;
60mod layout_context;
61mod layout_exclusion;
62mod layout_flow;
63mod layout_geometry;
64mod layout_measure;
65mod layout_page;
66mod layout_policy;
67mod layout_region;
68mod layout_table;
69mod layout_table_stream;
70#[cfg(test)]
71mod layout_table_tests;
72pub mod limits;
74mod memory;
75pub mod page;
77pub mod patch;
79mod patch_log;
80pub mod preset;
82pub mod resolved;
84mod resolved_table;
85pub mod source;
87mod source_build;
88mod source_element;
89mod source_layout;
90mod source_page;
91mod source_page_build;
92mod source_style;
93mod source_table;
94mod source_text;
95mod source_transform;
96pub mod style;
98pub mod table;
100mod table_columns;
101pub mod text;
103#[cfg(test)]
104mod text_break_tests;
105mod transform_math;
106pub mod units;
108pub mod validation;
110mod validation_capability;
111mod validation_data;
112mod validation_layout;
113mod validation_page;
114mod validation_table;
115
116pub use asset::{Asset, AssetResolver, FileResolver, MemoryResolver, TemplateResolver};
117pub use cache::SceneCache;
118pub use collision::{
119 CollisionBounds, CollisionPolicy, CollisionResolution, CollisionRule, LinearSpatialIndex,
120 SpatialIndex,
121};
122pub use compiler::{Compiler, CompilerBuilder};
123pub use constraints::{Alignment, Distribution, LayoutConstraints};
124pub use control::{
125 CancellationToken, OperationControl, ProgressEvent, ProgressObserver, ProgressPhase,
126};
127pub use data::{
128 resolve_computed_fields, CurrencyValue, DataField, DataSchema, DataType, DataValue,
129};
130pub use debug::{CollisionMask, DebugOverlay, DebugOverlayOptions, DebugPrimitive, MaskView};
131pub use debug_export::{export_collision_mask, MaskFormat};
132pub use error::{ErrorCode, FileMakerError, Result};
133pub use export::{
134 export, export_bytes, export_controlled, export_dataset_csv, export_dataset_csv_bytes,
135 ExportCapabilities, ExportContext, ExportFormat, ExportLoss, ExportLossKind, ExportLossReport,
136 ExportOutcome, ExportRequest, ExportStyleOverride, Fidelity, HtmlMode, PdfMode,
137};
138pub use expression::{Expression, ExpressionBudget};
139pub use fingerprint::{DocumentFingerprint, FingerprintBuilder};
140pub use font::{FontAsset, FontManager, FontResolver, FontSubset};
141pub use geometry::{BoundsSet, Insets, PathCommand, Point, Rect, Shape, Size, Transform};
142pub use image::{
143 resolve_image_placement, ImageCrop, ImageFit, ImageOptions, ImageOrientation, ImagePlacement,
144 PixelRect,
145};
146pub use inspect::{ElementInspection, LayoutExplanation, PageInspection, SceneInspector};
147pub use ir::{
148 AiPolicy, DocumentIr, ElementId, ElementIr, ElementKind, ExclusionIr, GeometryIr, LayoutMode,
149 PathCommandIr, Provenance, RegionIr, TableIr, TemplateIr, TextIr, TransformIr,
150};
151pub use layout::{LayoutEngine, LayoutOptions};
152pub use limits::ResourceLimits;
153pub use page::{PageBand, PagePlacement, PageRole, PageTemplate, PageTemplateSet};
154pub use patch::{Patch, PatchOperation, PatchTransaction};
155pub use patch_log::OperationLog;
156pub use preset::{Orientation, Preset, PresetRegistry};
157pub use resolved::{
158 LayoutTrace, ResolvedElement, ResolvedExclusion, ResolvedPage, ResolvedRegion, ResolvedScene,
159};
160pub use resolved_table::{ResolvedTableCell, ResolvedTableFragment, ResolvedTableRow};
161pub use source::{
162 ColorSource, EdgeSource, ElementSource, ElementStyleRuleSource, ExclusionSource, MirrorSource,
163 ModelKind, PageLayerSource, PageSource, TableSource, TableStyleRuleSource, TemplateSourceV1,
164 TextSourceOptions, TransformSource,
165};
166pub use style::{Color, ComputedStyle, ElementStyleRule, Style, StyleCascade};
167pub use table::{
168 BorrowedDataset, ColumnWidth, DataRow, Dataset, InMemoryDataset, StreamingDataset, TableColumn,
169 TablePage, TablePageSink, TablePaginator, TableSpec, TableStyleRule,
170};
171pub use table_columns::{resolve_table_columns, ResolvedTableColumn};
172pub use text::{
173 Glyph, GlyphRun, TextDiagnostic, TextEngine, TextLayout, TextLine, TextOptions, TextOverflow,
174 WritingMode,
175};
176pub use units::{Length, Unit};
177pub use validation::{
178 preflight, validate_data, validate_layout, validate_template, PreflightOptions, ValidationCode,
179 ValidationIssue, ValidationReport, ValidationSeverity,
180};
181
182pub const FILEMAKER_SCHEMA_V1: &str = "1.0";
184
185pub const ENGINE_VERSION: &str = env!("CARGO_PKG_VERSION");