1#![no_std]
2extern crate alloc;
3
4#[cfg(feature = "std")]
5extern crate std;
6
7pub use text::Text;
9
10pub mod tree;
12
13pub mod identifier;
15
16pub mod text;
18
19pub mod value;
21
22pub mod document;
24
25pub use document::constructor;
27
28use crate::write::IntoEure;
29
30pub mod path;
32
33pub mod data_model;
35
36pub mod parse;
38
39pub mod write;
41
42pub mod layout;
44pub mod source;
49
50mod eure_macro;
52
53pub mod map;
54
55pub mod must_be;
57
58pub mod proxy;
60
61pub(crate) mod prelude_internal {
62 #![allow(unused_imports)]
63 #![allow(deprecated)]
64 pub use crate::data_model::*;
65 pub use crate::document::constructor::DocumentConstructor;
66 pub use crate::document::node::{Node, NodeMap, NodeMut, NodeValue};
67 pub use crate::document::{EureDocument, InsertError, InsertErrorKind, NodeId};
68 pub use crate::eure;
69 pub use crate::identifier::Identifier;
70 pub use crate::map::Map;
71 pub use crate::path::{EurePath, PathSegment};
72 pub use crate::text::{Language, SyntaxHint, Text, TextParseError};
73 pub use crate::value::{ObjectKey, PrimitiveValue};
74 pub use alloc::boxed::Box;
75 pub use alloc::{string::String, string::ToString, vec, vec::Vec};
76 pub use thisisplural::Plural;
77}
78
79impl IntoEure for regex::Regex {
80 type Error = write::WriteError;
81
82 fn write(value: Self, c: &mut constructor::DocumentConstructor) -> Result<(), Self::Error> {
83 c.write(value.as_str())
84 }
85}