(tag: &str, items: &[impl ToSExpr])
| 54 | } |
| 55 | |
| 56 | fn tagged(tag: &str, items: &[impl ToSExpr]) -> Self { |
| 57 | let mut parts = vec![SExpr::atom(tag)]; |
| 58 | parts.extend(items.iter().map(ToSExpr::to_sexpr)); |
| 59 | SExpr::List(parts) |
| 60 | } |
| 61 | } |
| 62 | |
| 63 | struct Printer<'a, W: Write> { |