From 6308e5411951140fbf59887449e4f402ab7c2d57 Mon Sep 17 00:00:00 2001 From: Stephen Chung Date: Thu, 26 Mar 2020 10:55:50 +0800 Subject: [PATCH] Simplify. --- src/builtin.rs | 14 ++++---------- 1 file changed, 4 insertions(+), 10 deletions(-) diff --git a/src/builtin.rs b/src/builtin.rs index 66c8ec5a..96aab8c2 100644 --- a/src/builtin.rs +++ b/src/builtin.rs @@ -621,10 +621,6 @@ impl Engine<'_> { }); } - fn range(from: T, to: T) -> Range { - from..to - } - reg_iterator::(self); self.register_fn("range", |i1: INT, i2: INT| (i1..i2)); @@ -632,15 +628,15 @@ impl Engine<'_> { #[cfg(not(feature = "only_i64"))] { macro_rules! reg_range { - ($self:expr, $x:expr, $op:expr, $( $y:ty ),*) => ( + ($self:expr, $x:expr, $( $y:ty ),*) => ( $( reg_iterator::<$y>(self); - $self.register_fn($x, $op as fn(x: $y, y: $y)->Range<$y>); + $self.register_fn($x, (|x: $y, y: $y| x..y) as fn(x: $y, y: $y)->Range<$y>); )* ) } - reg_range!(self, "range", range, i8, u8, i16, u16, i32, i64, u32, u64); + reg_range!(self, "range", i8, u8, i16, u16, i32, i64, u32, u64); } } } @@ -889,9 +885,7 @@ impl Engine<'_> { let trimmed = s.trim(); if trimmed.len() < s.len() { - let chars: Vec<_> = trimmed.chars().collect(); - s.clear(); - chars.iter().for_each(|&ch| s.push(ch)); + *s = trimmed.to_string(); } }); }