Skip to main content

vole_document/adapter/
mod.rs

1//! Format adapters.
2//!
3//! An adapter proposes a reconstruction hypothesis. It never overrides the
4//! byte authority: a hypothesis is only admitted after it reproduces the exact
5//! source bytes and wins the complete-cost court.
6
7#[cfg(feature = "apispec")]
8pub mod apispec;
9#[cfg(feature = "arrow")]
10pub mod arrow;
11#[cfg(feature = "asciidoc")]
12pub mod asciidoc;
13#[cfg(feature = "bib")]
14pub mod bib;
15#[cfg(feature = "cbor")]
16pub mod cbor;
17#[cfg(feature = "cfbf")]
18pub mod cfbf;
19#[cfg(feature = "config")]
20pub mod config;
21#[cfg(feature = "container")]
22pub mod container;
23#[cfg(feature = "csv")]
24pub mod csv;
25#[cfg(feature = "doc")]
26pub mod doc;
27#[cfg(feature = "docx")]
28pub mod docx;
29#[cfg(feature = "eml")]
30pub mod eml;
31#[cfg(feature = "epub")]
32pub mod epub;
33#[cfg(feature = "feed")]
34pub mod feed;
35#[cfg(feature = "fixedwidth")]
36pub mod fixedwidth;
37#[cfg(any(
38    feature = "arrow",
39    feature = "parquet",
40    feature = "csv",
41    feature = "fixedwidth"
42))]
43pub mod fused;
44#[cfg(feature = "geojson")]
45pub mod geojson;
46#[cfg(feature = "gis")]
47pub mod gis;
48#[cfg(feature = "hdf")]
49pub mod hdf;
50#[cfg(feature = "html")]
51pub mod html;
52#[cfg(feature = "json")]
53pub mod json;
54#[cfg(feature = "json5")]
55pub mod json5;
56#[cfg(feature = "jsonl")]
57pub mod jsonl;
58#[cfg(feature = "logstream")]
59pub mod logstream;
60#[cfg(feature = "markdown")]
61pub mod markdown;
62#[cfg(feature = "mdx")]
63pub mod mdx;
64#[cfg(feature = "mhtml")]
65pub mod mhtml;
66#[cfg(feature = "msg")]
67pub mod msg;
68#[cfg(feature = "msgpack")]
69pub mod msgpack;
70#[cfg(feature = "notebook")]
71pub mod notebook;
72#[cfg(feature = "odp")]
73pub mod odp;
74#[cfg(feature = "ods")]
75pub mod ods;
76#[cfg(feature = "odt")]
77pub mod odt;
78pub mod opaque;
79#[cfg(feature = "package")]
80pub mod package;
81#[cfg(feature = "parquet")]
82pub mod parquet;
83pub mod pdf;
84#[cfg(feature = "pkgmeta")]
85pub mod pkgmeta;
86#[cfg(feature = "ppt")]
87pub mod ppt;
88#[cfg(feature = "pptx")]
89pub mod pptx;
90#[cfg(feature = "rst")]
91pub mod rst;
92#[cfg(feature = "rtf")]
93pub mod rtf;
94#[cfg(feature = "toml")]
95pub mod toml;
96#[cfg(feature = "xls")]
97pub mod xls;
98#[cfg(feature = "xlsx")]
99pub mod xlsx;
100#[cfg(feature = "xml")]
101pub mod xml;
102#[cfg(feature = "xml")]
103pub(crate) mod xml_policy;
104#[cfg(feature = "yaml")]
105pub mod yaml;
106
107/// The source-format class decision for an input.
108///
109/// File extensions are hints, never authority. In Phase 1 every input is
110/// preserved by the opaque adapter, which is the unconditional exact floor.
111#[derive(Debug, Clone, Copy, PartialEq, Eq)]
112pub enum FormatDecision {
113    /// Unstructured bytes; preserved exactly by the opaque adapter.
114    Opaque,
115}