icu_provider_source/properties/
uprops_serde.rsuse icu::collections::codepointtrie::toml::CodePointTrieToml;
pub(crate) mod binary {
#[derive(serde::Deserialize)]
pub(crate) struct BinaryProperty {
#[serde(rename = "long_name")]
pub(crate) _long_name: String,
#[serde(skip)]
#[serde(rename = "short_name")]
pub(crate) _short_name: String,
pub(crate) ranges: Vec<(u32, u32)>,
pub(crate) strings: Option<Vec<String>>,
}
#[derive(serde::Deserialize)]
pub(crate) struct Main {
#[serde(default)]
pub(crate) binary_property: Vec<BinaryProperty>,
}
}
#[derive(serde::Deserialize)]
pub(crate) struct PropertyValue {
pub(crate) discr: u32,
pub(crate) long: String,
pub(crate) short: Option<String>,
#[serde(default)]
pub(crate) aliases: Vec<String>,
}
pub(crate) mod enumerated {
#[derive(serde::Deserialize)]
pub(crate) struct EnumeratedPropertyMapRange {
#[serde(rename = "a")]
pub(crate) _a: u32,
#[serde(rename = "b")]
pub(crate) _b: u32,
#[serde(rename = "v")]
pub(crate) _v: u32,
#[serde(rename = "name")]
pub(crate) _name: String,
}
#[derive(serde::Deserialize)]
pub(crate) struct EnumeratedPropertyMap {
#[serde(rename = "long_name")]
pub(crate) _long_name: String,
#[serde(rename = "short_name")]
pub(crate) _short_name: String,
pub(crate) values: Vec<super::PropertyValue>,
#[serde(rename = "ranges")]
pub(crate) _ranges: Vec<EnumeratedPropertyMapRange>,
pub(crate) code_point_trie: super::CodePointTrieToml,
}
#[derive(serde::Deserialize)]
pub(crate) struct Main {
#[serde(default)]
pub(crate) enum_property: Vec<EnumeratedPropertyMap>,
}
}
pub(crate) mod code_point_prop {
#[derive(serde::Deserialize)]
pub(crate) struct CodePointPropertyMapRange {
#[serde(rename = "a")]
pub(crate) _a: u32,
#[serde(rename = "b")]
pub(crate) _b: u32,
#[serde(rename = "v")]
pub(crate) _v: u32,
}
#[derive(serde::Deserialize)]
pub(crate) struct CodePointPropertyMap {
#[serde(rename = "long_name")]
pub(crate) _long_name: String,
#[serde(rename = "short_name")]
pub(crate) _short_name: String,
#[serde(rename = "ranges")]
pub(crate) _ranges: Vec<CodePointPropertyMapRange>,
#[cfg(any(feature = "use_wasm", feature = "use_icu4c"))]
pub(crate) code_point_trie: super::CodePointTrieToml,
}
#[derive(serde::Deserialize)]
pub(crate) struct Main {
#[serde(default)]
#[cfg(any(feature = "use_wasm", feature = "use_icu4c"))]
pub(crate) enum_property: Vec<CodePointPropertyMap>,
}
}
pub(crate) mod mask {
#[derive(serde::Deserialize)]
pub(crate) struct MaskPropertyMap {
#[serde(rename = "long_name")]
pub(crate) _long_name: String,
#[serde(rename = "short_name")]
pub(crate) _short_name: String,
#[serde(rename = "mask_for")]
pub(crate) _mask_for: String,
pub(crate) values: Vec<super::PropertyValue>,
}
#[derive(serde::Deserialize)]
pub(crate) struct Main {
#[serde(default)]
pub(crate) mask_property: Vec<MaskPropertyMap>,
}
}
pub(crate) mod script_extensions {
use super::CodePointTrieToml;
#[derive(serde::Deserialize)]
pub(crate) struct ScriptWithExtensionsPropertyV1Property {
#[serde(rename = "long_name")]
pub(crate) _long_name: String,
#[serde(rename = "short_name")]
pub(crate) _short_name: String,
pub(crate) script_code_array: Vec<Vec<u16>>,
pub(crate) code_point_trie: CodePointTrieToml,
}
#[derive(serde::Deserialize)]
pub(crate) struct Main {
#[serde(default)]
pub(crate) script_extensions: Vec<ScriptWithExtensionsPropertyV1Property>,
}
}