summaryrefslogtreecommitdiff
path: root/vendor/unicode-normalization/src/lookups.rs
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/unicode-normalization/src/lookups.rs')
-rw-r--r--vendor/unicode-normalization/src/lookups.rs138
1 files changed, 0 insertions, 138 deletions
diff --git a/vendor/unicode-normalization/src/lookups.rs b/vendor/unicode-normalization/src/lookups.rs
deleted file mode 100644
index ea7a96c4..00000000
--- a/vendor/unicode-normalization/src/lookups.rs
+++ /dev/null
@@ -1,138 +0,0 @@
-// Copyright 2019 The Rust Project Developers. See the COPYRIGHT
-// file at the top-level directory of this distribution and at
-// http://rust-lang.org/COPYRIGHT.
-//
-// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
-// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
-// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
-// option. This file may not be copied, modified, or distributed
-// except according to those terms.
-
-//! Lookups of unicode properties using minimal perfect hashing.
-
-use crate::perfect_hash::mph_lookup;
-use crate::tables::*;
-
-/// Look up the canonical combining class for a codepoint.
-///
-/// The value returned is as defined in the Unicode Character Database.
-pub fn canonical_combining_class(c: char) -> u8 {
- mph_lookup(
- c.into(),
- CANONICAL_COMBINING_CLASS_SALT,
- CANONICAL_COMBINING_CLASS_KV,
- u8_lookup_fk,
- u8_lookup_fv,
- 0,
- )
-}
-
-pub(crate) fn composition_table(c1: char, c2: char) -> Option<char> {
- if c1 < '\u{10000}' && c2 < '\u{10000}' {
- mph_lookup(
- (c1 as u32) << 16 | (c2 as u32),
- COMPOSITION_TABLE_SALT,
- COMPOSITION_TABLE_KV,
- pair_lookup_fk,
- pair_lookup_fv_opt,
- None,
- )
- } else {
- composition_table_astral(c1, c2)
- }
-}
-
-pub(crate) fn canonical_fully_decomposed(c: char) -> Option<&'static [char]> {
- mph_lookup(
- c.into(),
- CANONICAL_DECOMPOSED_SALT,
- CANONICAL_DECOMPOSED_KV,
- pair_lookup_fk,
- pair_lookup_fv_opt,
- None,
- )
- .map(|(start, len)| &CANONICAL_DECOMPOSED_CHARS[start as usize..][..len as usize])
-}
-
-pub(crate) fn compatibility_fully_decomposed(c: char) -> Option<&'static [char]> {
- mph_lookup(
- c.into(),
- COMPATIBILITY_DECOMPOSED_SALT,
- COMPATIBILITY_DECOMPOSED_KV,
- pair_lookup_fk,
- pair_lookup_fv_opt,
- None,
- )
- .map(|(start, len)| &COMPATIBILITY_DECOMPOSED_CHARS[start as usize..][..len as usize])
-}
-
-pub(crate) fn cjk_compat_variants_fully_decomposed(c: char) -> Option<&'static [char]> {
- mph_lookup(
- c.into(),
- CJK_COMPAT_VARIANTS_DECOMPOSED_SALT,
- CJK_COMPAT_VARIANTS_DECOMPOSED_KV,
- pair_lookup_fk,
- pair_lookup_fv_opt,
- None,
- )
- .map(|(start, len)| &CJK_COMPAT_VARIANTS_DECOMPOSED_CHARS[start as usize..][..len as usize])
-}
-
-/// Return whether the given character is a combining mark (`General_Category=Mark`)
-pub fn is_combining_mark(c: char) -> bool {
- mph_lookup(
- c.into(),
- COMBINING_MARK_SALT,
- COMBINING_MARK_KV,
- bool_lookup_fk,
- bool_lookup_fv,
- false,
- )
-}
-
-pub fn stream_safe_trailing_nonstarters(c: char) -> usize {
- mph_lookup(
- c.into(),
- TRAILING_NONSTARTERS_SALT,
- TRAILING_NONSTARTERS_KV,
- u8_lookup_fk,
- u8_lookup_fv,
- 0,
- ) as usize
-}
-
-/// Extract the key in a 24 bit key and 8 bit value packed in a u32.
-#[inline]
-fn u8_lookup_fk(kv: u32) -> u32 {
- kv >> 8
-}
-
-/// Extract the value in a 24 bit key and 8 bit value packed in a u32.
-#[inline]
-fn u8_lookup_fv(kv: u32) -> u8 {
- (kv & 0xff) as u8
-}
-
-/// Extract the key for a boolean lookup.
-#[inline]
-fn bool_lookup_fk(kv: u32) -> u32 {
- kv
-}
-
-/// Extract the value for a boolean lookup.
-#[inline]
-fn bool_lookup_fv(_kv: u32) -> bool {
- true
-}
-
-/// Extract the key in a pair.
-#[inline]
-fn pair_lookup_fk<T>(kv: (u32, T)) -> u32 {
- kv.0
-}
-
-/// Extract the value in a pair, returning an option.
-#[inline]
-fn pair_lookup_fv_opt<T>(kv: (u32, T)) -> Option<T> {
- Some(kv.1)
-}