[−][src]Macro sise::sise_expr
Macro to define trees of nodes with a lighter syntax.
Example
use sise::sise_expr; // atom let value1 = sise::Node::Atom(String::from("atom")); let value2 = sise_expr!("atom"); assert_eq!(value1, value2); // () let value1 = sise::Node::List(vec![]); let value2 = sise_expr!([]); assert_eq!(value1, value2); // (atom) let value1 = sise::Node::List(vec![ sise::Node::Atom(String::from("atom")) ]); let value2 = sise_expr!(["atom"]); assert_eq!(value1, value2); // (atom (1 2 3) (a b c)) let value1 = sise::Node::List(vec![ sise::Node::Atom(String::from("atom")), sise::Node::List(vec![ sise::Node::Atom(String::from("1")), sise::Node::Atom(String::from("2")), sise::Node::Atom(String::from("3")), ]), sise::Node::List(vec![ sise::Node::Atom(String::from("a")), sise::Node::Atom(String::from("b")), sise::Node::Atom(String::from("c")), ]), ]); let value2 = sise_expr!(["atom", ["1", "2", "3"], ["a", "b", "c"]]); assert_eq!(value1, value2);