diff --git a/src/cmd/apply.rs b/src/cmd/apply.rs index b78f8323e..9c9031071 100644 --- a/src/cmd/apply.rs +++ b/src/cmd/apply.rs @@ -382,7 +382,9 @@ use crate::{ config::{Config, Delimiter}, regex_oncelock, select::SelectColumns, - util, CliResult, + util, + util::replace_column_value, + CliResult, }; #[derive(Clone, EnumString)] @@ -483,19 +485,6 @@ enum ApplySubCmd { CalcConv, } -#[inline] -fn replace_column_value( - record: &csv::StringRecord, - column_index: usize, - new_value: &str, -) -> csv::StringRecord { - record - .into_iter() - .enumerate() - .map(|(i, v)| if i == column_index { new_value } else { v }) - .collect() -} - pub fn run(argv: &[&str]) -> CliResult<()> { let args: Args = util::get_args(USAGE, argv)?; let rconfig = Config::new(&args.arg_input) diff --git a/src/cmd/applydp.rs b/src/cmd/applydp.rs index 107cba8f1..90356b873 100644 --- a/src/cmd/applydp.rs +++ b/src/cmd/applydp.rs @@ -259,7 +259,9 @@ use crate::{ config::{Config, Delimiter}, regex_oncelock, select::SelectColumns, - util, CliResult, + util, + util::replace_column_value, + CliResult, }; #[derive(Clone, EnumString)] @@ -316,19 +318,6 @@ static ROUND_PLACES: OnceLock = OnceLock::new(); // default number of decimal places to round to const DEFAULT_ROUND_PLACES: u32 = 3; -#[inline] -fn replace_column_value( - record: &csv::StringRecord, - column_index: usize, - new_value: &str, -) -> csv::StringRecord { - record - .into_iter() - .enumerate() - .map(|(i, v)| if i == column_index { new_value } else { v }) - .collect() -} - pub fn run(argv: &[&str]) -> CliResult<()> { let args: Args = util::get_args(USAGE, argv)?; let rconfig = Config::new(&args.arg_input) diff --git a/src/cmd/explode.rs b/src/cmd/explode.rs index 0ece9f370..566fe6929 100644 --- a/src/cmd/explode.rs +++ b/src/cmd/explode.rs @@ -36,7 +36,9 @@ use serde::Deserialize; use crate::{ config::{Config, Delimiter}, select::SelectColumns, - util, CliResult, + util, + util::replace_column_value, + CliResult, }; #[derive(Deserialize)] struct Args { @@ -49,18 +51,6 @@ struct Args { flag_delimiter: Option, } -pub fn replace_column_value( - record: &csv::StringRecord, - column_index: usize, - new_value: &str, -) -> csv::StringRecord { - record - .into_iter() - .enumerate() - .map(|(i, v)| if i == column_index { new_value } else { v }) - .collect() -} - pub fn run(argv: &[&str]) -> CliResult<()> { let args: Args = util::get_args(USAGE, argv)?; let rconfig = Config::new(&args.arg_input) diff --git a/src/cmd/geocode.rs b/src/cmd/geocode.rs index 270e83460..31a5f3be0 100644 --- a/src/cmd/geocode.rs +++ b/src/cmd/geocode.rs @@ -393,7 +393,9 @@ use crate::{ config::{Config, Delimiter}, regex_oncelock, select::SelectColumns, - util, CliResult, + util, + util::replace_column_value, + CliResult, }; #[derive(Deserialize)] @@ -594,19 +596,6 @@ impl From for CliError { } } -#[inline] -fn replace_column_value( - record: &csv::StringRecord, - column_index: usize, - new_value: &str, -) -> csv::StringRecord { - record - .into_iter() - .enumerate() - .map(|(i, v)| if i == column_index { new_value } else { v }) - .collect() -} - pub fn run(argv: &[&str]) -> CliResult<()> { let mut args: Args = util::get_args(USAGE, argv)?; diff --git a/src/cmd/pseudo.rs b/src/cmd/pseudo.rs index bea9f838e..e84c0f764 100644 --- a/src/cmd/pseudo.rs +++ b/src/cmd/pseudo.rs @@ -23,7 +23,9 @@ use serde::Deserialize; use crate::{ config::{Config, Delimiter}, select::SelectColumns, - util, CliResult, + util, + util::replace_column_value, + CliResult, }; #[derive(Deserialize)] @@ -35,18 +37,6 @@ struct Args { flag_delimiter: Option, } -pub fn replace_column_value( - record: &csv::StringRecord, - column_index: usize, - new_value: &str, -) -> csv::StringRecord { - record - .into_iter() - .enumerate() - .map(|(i, v)| if i == column_index { new_value } else { v }) - .collect() -} - type Values = AHashMap; pub fn run(argv: &[&str]) -> CliResult<()> {