// This file is part of ICU4X. For terms of use, please see the file
// called LICENSE at the top level of the ICU4X source tree
// (online at: https://github.com/unicode-org/icu4x/blob/main/LICENSE ).
#[ diplomat::bridge]
#[ diplomat::abi_rename =
"icu4x_{0}_mv1" ]
pub mod ffi {
use diplomat_runtime::DiplomatChar;
use icu_properties::props;
#[ diplomat::rust_link(icu::properties::props::BidiMirroringGlyph,
Struct )]
pub struct BidiMirroringGlyph {
/// The mirroring glyph
pub mirroring_glyph: DiplomatOption<DiplomatChar>,
/// Whether the glyph is mirrored
pub mirrored: bool,
/// The paired bracket type
pub paired_bracket_type: BidiPairedBracketType,
}
#[ diplomat::rust_link(icu::properties::props::BidiPairedBracketType,
Enum )]
#[ diplomat::enum_convert(props::BidiPairedBracketType, needs_wildcard)]
#[ non_exhaustive]
pub enum BidiPairedBracketType {
/// Represents Bidi_Paired_Bracket_Type=Open.
Open,
/// Represents Bidi_Paired_Bracket_Type=Close.
Close,
/// Represents Bidi_Paired_Bracket_Type=None.
// This is an output type, so the default mostly impacts deferred initialization.
#[ diplomat::attr(auto, default)]
None,
}
impl BidiMirroringGlyph {
#[ diplomat::rust_link(icu::properties::props::EnumeratedProperty::for_char, FnInT
rait)]
#[ cfg(feature = "compiled_data" )]
pub fn for_char(ch: DiplomatChar) -> Self {
icu_properties::CodePointMapData::<props::BidiMirroringGlyph>::new()
.get32(ch)
.into()
}
}
}
impl From<icu_properties::props::BidiMirroringGlyph> for ffi::BidiMirroringGlyph {
fn from(other: icu_properties::props::BidiMirroringGlyph) -> Self {
Self {
mirroring_glyph: other.mirroring_glyph.map(u32::from).into(),
mirrored: other.mirrored,
paired_bracket_type: other.paired_bracket_type.into(),
}
}
}
Messung V0.5 in Prozent C=88 H=88 G=87
¤ Dauer der Verarbeitung: 0.13 Sekunden
(vorverarbeitet am 2026-08-25)
¤
*© Formatika GbR, Deutschland