From 1fa5b2ffbc0f1dd3cfc45adff0329e1bdd46c131 Mon Sep 17 00:00:00 2001 From: Aleksey Kladov Date: Wed, 8 Aug 2018 20:25:35 +0300 Subject: smol strings --- src/yellow/green.rs | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'src/yellow') diff --git a/src/yellow/green.rs b/src/yellow/green.rs index 3ade46f45..26df76af6 100644 --- a/src/yellow/green.rs +++ b/src/yellow/green.rs @@ -1,5 +1,6 @@ use std::sync::Arc; use { + smol_str::SmolStr, SyntaxKind::{self, *}, TextUnit, }; @@ -116,7 +117,7 @@ pub(crate) enum GreenLeaf { }, Token { kind: SyntaxKind, - text: Option>, + text: Option, }, } @@ -137,7 +138,7 @@ impl GreenLeaf { debug_assert_eq!(t, text); None } - None => Some(text.to_owned().into_boxed_str().into()), + None => Some(SmolStr::new(text)), }; GreenLeaf::Token { kind, text } } @@ -159,7 +160,7 @@ impl GreenLeaf { } GreenLeaf::Token { kind, text } => match text { None => kind.static_text().unwrap(), - Some(t) => t, + Some(t) => t.as_str(), }, } } -- cgit v1.2.3