From a1d47695a2af5afa466c21ad812a1a8212780293 Mon Sep 17 00:00:00 2001 From: Laurenz Date: Thu, 23 Feb 2023 12:15:38 +0100 Subject: Switch to ecow --- src/model/eval.rs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'src/model/eval.rs') diff --git a/src/model/eval.rs b/src/model/eval.rs index 6e118f8a..7d48b598 100644 --- a/src/model/eval.rs +++ b/src/model/eval.rs @@ -5,6 +5,7 @@ use std::mem; use std::path::{Path, PathBuf}; use comemo::{Track, Tracked, TrackedMut}; +use ecow::EcoVec; use unicode_segmentation::UnicodeSegmentation; use super::{ @@ -797,7 +798,7 @@ impl Eval for ast::Array { fn eval(&self, vm: &mut Vm) -> SourceResult { let items = self.items(); - let mut vec = Vec::with_capacity(items.size_hint().0); + let mut vec = EcoVec::with_capacity(items.size_hint().0); for item in items { match item { ast::ArrayItem::Pos(expr) => vec.push(expr.eval(vm)?), -- cgit v1.2.3 From 457ce954366f3a81989fee788c85a5b20a96ce96 Mon Sep 17 00:00:00 2001 From: Laurenz Date: Thu, 23 Feb 2023 14:36:40 +0100 Subject: More EcoVec usage Frame unfortunately can't use it because splice is missing. --- src/model/eval.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src/model/eval.rs') diff --git a/src/model/eval.rs b/src/model/eval.rs index 7d48b598..225c5e7a 100644 --- a/src/model/eval.rs +++ b/src/model/eval.rs @@ -1033,7 +1033,7 @@ impl Eval for ast::Args { type Output = Args; fn eval(&self, vm: &mut Vm) -> SourceResult { - let mut items = Vec::new(); + let mut items = EcoVec::new(); for arg in self.items() { let span = arg.span(); -- cgit v1.2.3