Big News: Socket raises $60M Series C at a $1B valuation to secure software supply chains for AI-driven development.Announcement
Sign In

icu_properties

Package Overview
Dependencies
Maintainers
1
Versions
24
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

icu_properties

Source
crates.io
Version
2.2.0
Version published
Maintainers
1
Created
Source

icu_properties crates.io

Definitions of Unicode Properties and APIs for retrieving property data in an appropriate data structure.

This module is published as its own crate (icu_properties) and as part of the icu crate. See the latter for more details on the ICU4X project.

APIs that return a CodePointSetData exist for binary properties and certain enumerated properties.

APIs that return a CodePointMapData exist for certain enumerated properties.

Examples

Property data as CodePointSetDatas

use icu::properties::{CodePointSetData, CodePointMapData};
use icu::properties::props::{GeneralCategory, Emoji};

// A binary property as a `CodePointSetData`

assert!(CodePointSetData::new::<Emoji>().contains('🎃')); // U+1F383 JACK-O-LANTERN
assert!(!CodePointSetData::new::<Emoji>().contains('木')); // U+6728

// An individual enumerated property value as a `CodePointSetData`

let line_sep_data = CodePointMapData::<GeneralCategory>::new()
    .get_set_for_value(GeneralCategory::LineSeparator);
let line_sep = line_sep_data.as_borrowed();

assert!(line_sep.contains('\u{2028}'));
assert!(!line_sep.contains('\u{2029}'));

Property data as CodePointMapDatas

use icu::properties::CodePointMapData;
use icu::properties::props::Script;

assert_eq!(CodePointMapData::<Script>::new().get('🎃'), Script::Common); // U+1F383 JACK-O-LANTERN
assert_eq!(CodePointMapData::<Script>::new().get('木'), Script::Han); // U+6728

Harfbuzz

The harfbuzz_traits Cargo feature can be used to add implementations of the [harfbuzz_traits] to CodePointMap<GeneralCategory>, CodePointMap<BidiMirroringGlyph>, and to enable the [script::HarfbuzzScriptData] type.

More Information

For more information on development, authorship, contributing etc. please visit ICU4X home page.

FAQs

Package last updated on 01 Apr 2026

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts