From 2300428ee29fa86a976562d5d06f29542cce24b3 Mon Sep 17 00:00:00 2001 From: stratact <stratact1@gmail.com> Date: Thu, 21 Jun 2018 11:22:31 -0700 Subject: [PATCH] Remove support for index array insertions and have it error for not supporting multi-dimensional arrays yet --- examples/array_assignments.ion | 16 ---------------- examples/array_assignments.out | 4 ---- src/lib/shell/assignments.rs | 18 +++--------------- 3 files changed, 3 insertions(+), 35 deletions(-) diff --git a/examples/array_assignments.ion b/examples/array_assignments.ion index 632ffcab..15e6d67c 100644 --- a/examples/array_assignments.ion +++ b/examples/array_assignments.ion @@ -6,19 +6,3 @@ let array[$value] = 5 echo @array let array[2]:int = 6 echo @array - -let FOO = [4 5 6] -let FOO[0] = [1 2 3] -echo @FOO - -let FOO = [4 5 6] -let FOO[1] = [1 2 3] -echo @FOO - -let FOO = [4 5 6] -let FOO[2] = [1 2 3] -echo @FOO - -let FOO = [4 5 6] -let FOO[3] = [1 2 3] -echo @FOO diff --git a/examples/array_assignments.out b/examples/array_assignments.out index 58914b3d..be78b833 100644 --- a/examples/array_assignments.out +++ b/examples/array_assignments.out @@ -1,7 +1,3 @@ 4 2 3 4 5 3 4 5 6 -1 2 3 4 5 6 -4 1 2 3 5 6 -4 5 1 2 3 6 -4 5 6 1 2 3 diff --git a/src/lib/shell/assignments.rs b/src/lib/shell/assignments.rs index 735dc4f7..13508b56 100644 --- a/src/lib/shell/assignments.rs +++ b/src/lib/shell/assignments.rs @@ -263,21 +263,9 @@ impl VariableStore for Shell { Ok(Action::UpdateArray(key, _, _)) => { match collected.remove(key.name) { Some(ReturnValue::Vector(values)) => { - if let Primitive::Indexed(ref index, _) = key.kind { - match parse_index(index, &self) { - Ok(index_num) => { - if let Some(mut array) = self.variables.get_array(key.name) { - for (i, value) in values.into_iter().enumerate() { - array.insert(index_num + i, value); - } - self.variables.set_array(key.name, array); - } - } - Err(why) => { - eprintln!("{}", why); - return FAILURE; - } - }; + if let Primitive::Indexed(_, _) = key.kind { + eprintln!("ion: multi-dimensional arrays are not yet supported"); + return FAILURE; } else { self.variables.set_array(key.name, values); } -- GitLab