#unicode #xid #unicode-text #text

no-std supply-chain-trust-example-crate-000068

Determine whether characters have the XID_Start or XID_Continue properties according to Unicode Standard Annex #31

1 unstable release

Uses old Rust 2015

0.2.6 Nov 4, 2024

#1558 in Text processing

MIT/Apache

62KB
1.5K SLoC

unicode-xid

Determine if a char is a valid identifier for a parser and/or lexer according to Unicode Standard Annex #31 rules.

Build Status

Documentation

extern crate unicode_xid;

use unicode_xid::UnicodeXID;

fn main() {
    let ch = 'a';
    println!("Is {} a valid start of an identifier? {}", ch, UnicodeXID::is_xid_start(ch));
}

features

unicode-xid supports a no_std feature. This eliminates dependence on std, and instead uses equivalent functions from core.


lib.rs:

Determine if a char is a valid identifier for a parser and/or lexer according to Unicode Standard Annex #31 rules.

use unicode_xid::UnicodeXID;

fn main() {
    assert_eq!(UnicodeXID::is_xid_start('a'), true); // 'a' is a valid start of an identifier
    assert_eq!(UnicodeXID::is_xid_start(''), false); // '△' is a NOT valid start of an identifier
}

features

unicode-xid supports a no_std feature. This eliminates dependence on std, and instead uses equivalent functions from core.

No runtime deps