use super::funejson::Value; use super::todo_item::Todo; use super::todo_item_validate_todo::{todos_from_value, todos_to_value}; /// Every done todo removed, the rest untouched and in order. pub fn clear_completed(todos: &[Todo]) -> Vec { todos.iter().filter(|t| !t.done).cloned().collect() } pub fn fune_vector(args: &[Value]) -> Value { todos_to_value(&clear_completed(&todos_from_value(&args[0]))) }