use mumu::parser::types::Value;
use mumu::parser::interpreter::Interpreter;
pub fn array_init_bridge(_interp: &mut Interpreter, args: Vec<Value>) -> Result<Value, String> {
if args.len() != 1 {
return Err("array:init expects exactly one argument".to_string());
}
let arr = &args[0];
match arr {
Value::IntArray(xs) if xs.len() > 1 => Ok(Value::IntArray(xs[..xs.len() - 1].to_vec())),
Value::FloatArray(xs) if xs.len() > 1 => Ok(Value::FloatArray(xs[..xs.len() - 1].to_vec())),
Value::StrArray(xs) if xs.len() > 1 => Ok(Value::StrArray(xs[..xs.len() - 1].to_vec())),
Value::BoolArray(xs) if xs.len() > 1 => Ok(Value::BoolArray(xs[..xs.len() - 1].to_vec())),
Value::MixedArray(xs) if xs.len() > 1 => Ok(Value::MixedArray(xs[..xs.len() - 1].to_vec())),
_ => Ok(Value::MixedArray(vec![])),
}
}