ferroui_pretext_contracts/
lib.rs1#![forbid(unsafe_code)]
7
8mod pretext_font_descriptor;
9mod text_measurement_contracts;
10mod text_shaping_contracts;
11
12pub use pretext_font_descriptor::*;
13pub use text_measurement_contracts::*;
14pub use text_shaping_contracts::*;
15
16#[derive(Clone, Debug, PartialEq, Eq)]
18pub enum PretextError {
19 NoShapingBackend,
21 Backend(String),
23 InvalidInput(String),
25}
26
27impl std::fmt::Display for PretextError {
28 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
29 match self {
30 Self::NoShapingBackend => f.write_str("no text shaping backend is configured"),
31 Self::Backend(message) | Self::InvalidInput(message) => f.write_str(message),
32 }
33 }
34}
35
36impl std::error::Error for PretextError {}