aboutsummaryrefslogtreecommitdiff
path: root/src/implicit.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/implicit.rs')
-rw-r--r--src/implicit.rs18
1 files changed, 8 insertions, 10 deletions
diff --git a/src/implicit.rs b/src/implicit.rs
index 2bb3581..4344ea3 100644
--- a/src/implicit.rs
+++ b/src/implicit.rs
@@ -9,17 +9,18 @@
//! 3.3.4 - 3.3.6. Resolve implicit levels and types.
-use core::cmp::max;
-use alloc::vec::Vec;
+use std::cmp::max;
-use super::char_data::BidiClass::{self, *};
+use super::char_data::BidiClass;
use super::prepare::{IsolatingRunSequence, LevelRun, not_removed_by_x9, removed_by_x9};
use super::level::Level;
+use BidiClass::*;
+
/// 3.3.4 Resolving Weak Types
///
/// <http://www.unicode.org/reports/tr9/#Resolving_Weak_Types>
-#[cfg_attr(feature = "flame_it", flamer::flame)]
+#[cfg_attr(feature = "flame_it", flame)]
pub fn resolve_weak(sequence: &IsolatingRunSequence, processing_classes: &mut [BidiClass]) {
// FIXME (#8): This function applies steps W1-W6 in a single pass. This can produce
// incorrect results in cases where a "later" rule changes the value of `prev_class` seen
@@ -134,7 +135,7 @@ pub fn resolve_weak(sequence: &IsolatingRunSequence, processing_classes: &mut [B
/// 3.3.5 Resolving Neutral Types
///
/// <http://www.unicode.org/reports/tr9/#Resolving_Neutral_Types>
-#[cfg_attr(feature = "flame_it", flamer::flame)]
+#[cfg_attr(feature = "flame_it", flame)]
pub fn resolve_neutral(
sequence: &IsolatingRunSequence,
levels: &[Level],
@@ -199,7 +200,7 @@ pub fn resolve_neutral(
/// Returns the maximum embedding level in the paragraph.
///
/// <http://www.unicode.org/reports/tr9/#Resolving_Implicit_Levels>
-#[cfg_attr(feature = "flame_it", flamer::flame)]
+#[cfg_attr(feature = "flame_it", flame)]
pub fn resolve_levels(original_classes: &[BidiClass], levels: &mut [Level]) -> Level {
let mut max_level = Level::ltr();
@@ -223,8 +224,5 @@ pub fn resolve_levels(original_classes: &[BidiClass], levels: &mut [Level]) -> L
/// <http://www.unicode.org/reports/tr9/#NI>
#[allow(non_snake_case)]
fn is_NI(class: BidiClass) -> bool {
- match class {
- B | S | WS | ON | FSI | LRI | RLI | PDI => true,
- _ => false,
- }
+ matches!(class, B | S | WS | ON | FSI | LRI | RLI | PDI)
}