From 9521f3e3fb73f600e6691188a65e19eda6cd317e Mon Sep 17 00:00:00 2001
From: Joel Natividad <1980690+jqnatividad@users.noreply.github.com>
Date: Wed, 29 Nov 2023 03:35:27 -0500
Subject: [PATCH] `excel` & `joinp`: use atoi_simd

---
 src/cmd/excel.rs | 2 +-
 src/cmd/joinp.rs | 4 ++--
 2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/src/cmd/excel.rs b/src/cmd/excel.rs
index 3996ca347..d1dcb4380 100644
--- a/src/cmd/excel.rs
+++ b/src/cmd/excel.rs
@@ -447,7 +447,7 @@ pub fn run(argv: &[&str]) -> CliResult<()> {
         args.flag_sheet
     } else {
         // otherwise, if --sheet is a number, its a zero-based index, fetch it
-        if let Ok(sheet_index) = args.flag_sheet.parse::<i32>() {
+        if let Ok(sheet_index) = atoi_simd::parse::<i32>(args.flag_sheet.as_bytes()) {
             if sheet_index >= 0 {
                 if let Some(sheet_name) = sheet_names.get(sheet_index as usize) {
                     sheet_name.to_string()
diff --git a/src/cmd/joinp.rs b/src/cmd/joinp.rs
index b9153915e..2289b15cf 100644
--- a/src/cmd/joinp.rs
+++ b/src/cmd/joinp.rs
@@ -292,9 +292,9 @@ pub fn run(argv: &[&str]) -> CliResult<()> {
 
             if strategy == AsofStrategy::Nearest {
                 if let Some(ref tolerance) = args.flag_tolerance {
-                    // If the tolerance is an integer, it is tolerance number of rows.
+                    // If the tolerance is a positive integer, it is tolerance number of rows.
                     // Otherwise, it is a tolerance date language spec.
-                    if let Ok(numeric_tolerance) = tolerance.parse::<i64>() {
+                    if let Ok(numeric_tolerance) = atoi_simd::parse_pos(tolerance.as_bytes()) {
                         asof_options.tolerance = Some(AnyValue::Int64(numeric_tolerance));
                     } else {
                         asof_options.tolerance_str = Some(tolerance.into());