use crate::traits::{ArgumentHandle, CalcValue};
use formualizer_common::{ExcelError, ExcelErrorKind, LiteralValue};
fn scalar_text_value(arg: &ArgumentHandle<'_, '_>) -> Result<LiteralValue, ExcelError> {
Ok(match arg.value_for_text()? {
CalcValue::Scalar(value) => value,
CalcValue::Range(view) => view.get_cell(0, 0),
CalcValue::Callable(_) => LiteralValue::Error(
ExcelError::new(ExcelErrorKind::Calc).with_message("LAMBDA value must be invoked"),
),
})
}
mod array_text; mod byte; mod char_code_rept; mod extended; mod find_search_exact; mod len_left_right; mod mid_sub_replace; mod trim_case_concat; mod value_text;
#[cfg(test)]
mod text_tests;
pub use find_search_exact::*;
pub use len_left_right::*;
pub use mid_sub_replace::*;
#[cfg(test)]
pub use trim_case_concat::*;
#[cfg(test)]
pub use value_text::*;
pub fn register_builtins() {
array_text::register_builtins();
byte::register_builtins();
char_code_rept::register_builtins();
extended::register_builtins();
len_left_right::register_builtins();
mid_sub_replace::register_builtins();
trim_case_concat::register_builtins();
find_search_exact::register_builtins();
value_text::register_builtins();
}