fixing the parsing signature

No need for function to take a vector, instead it'll just generate one
from the value itself and then that'll be appended to the list of slides
This commit is contained in:
Chris Cochrun 2024-11-20 14:25:22 -06:00
parent 53ba0385f5
commit 30e6ce40b5
2 changed files with 3 additions and 6 deletions

View file

@ -2,7 +2,7 @@ use crisp::types::{Symbol, Value};
use crate::Slide;
pub fn parse_lisp(value: Value, vector: Vec<Slide>) -> Vec<Slide> {
pub fn parse_lisp(value: Value) -> Vec<Slide> {
match &value {
Value::List(vec) => match &vec[0] {
Value::Symbol(Symbol(s)) if s == "slide" => {
@ -40,8 +40,7 @@ mod test {
Value::List(value) => {
let mut slide_vec = vec![];
for value in value {
let inner_vector = vec![];
let mut vec = parse_lisp(value, inner_vector);
let mut vec = parse_lisp(value);
slide_vec.append(&mut vec);
}
assert_eq!(slide_vec, test_vec)

View file

@ -155,9 +155,7 @@ impl cosmic::Application for App {
match lisp {
Value::List(vec) => {
for value in vec {
let inner_vector = vec![];
let mut inner_vector =
parse_lisp(value, inner_vector);
let mut inner_vector = parse_lisp(value);
slide_vector.append(&mut inner_vector);
}
}