aboutsummaryrefslogtreecommitdiff
path: root/src/lisp/parse.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/lisp/parse.rs')
-rw-r--r--src/lisp/parse.rs53
1 files changed, 27 insertions, 26 deletions
diff --git a/src/lisp/parse.rs b/src/lisp/parse.rs
index 7cca434..6a8de9f 100644
--- a/src/lisp/parse.rs
+++ b/src/lisp/parse.rs
@@ -210,32 +210,33 @@ mod tests {
210 } 210 }
211 211
212 #[test] 212 #[test]
213 // fn parse_lisp_expr() { 213 fn parse_lisp_expr() {
214 // assert_eq!( 214 assert_eq!(
215 // parse("1.5").unwrap(), 215 parse("1.5").unwrap(),
216 // LispExpr::Number(LispNumber::Float(1.5)) 216 LispExpr::Number(LispNumber::Float(1.5))
217 // ); 217 );
218 218
219 // assert_eq!( 219 assert_eq!(
220 // parse(r#""hello""#).unwrap(), 220 parse(r#""hello""#).unwrap(),
221 // LispExpr::StringLit(r#""hello""#.into()) 221 LispExpr::StringLit("hello".into())
222 // ); 222 );
223 223
224 // assert_eq!(parse("foo").unwrap(), LispExpr::Ident("foo".into())); 224 assert_eq!(parse("foo").unwrap(), LispExpr::Ident("foo".into()));
225 225
226 // let items = (1..=5) 226 let items = (1..=5)
227 // .map(LispNumber::Integer) 227 .map(LispNumber::Integer)
228 // .map(LispExpr::Number) 228 .map(LispExpr::Number)
229 // .collect::<Vec<_>>(); 229 .collect::<Vec<_>>();
230 // assert_eq!(parse("(1 2 3 4 5)").unwrap(), LispExpr::List(items)); 230 assert_eq!(parse("(1 2 3 4 5)").unwrap(), LispExpr::List(items));
231 231
232 // let foo = LispExpr::Ident("foo".into()); 232 let foo = LispExpr::Ident("foo".into());
233 // let bar = LispExpr::Comma(Box::new(LispExpr::Ident("bar".into())), 1); 233 let bar = LispExpr::Comma(Box::new(LispExpr::Ident("bar".into())), 1);
234 // assert_eq!( 234 assert_eq!(
235 // parse("`(foo ,bar)").unwrap(), 235 parse("`(foo ,bar)").unwrap(),
236 // LispExpr::Quasiquote(Box::new(LispExpr::List(vec![foo, bar])), 1) 236 LispExpr::Quasiquote(Box::new(LispExpr::List(vec![foo, bar])), 1)
237 // ) 237 )
238 // } 238 }
239
239 #[should_panic] 240 #[should_panic]
240 #[test] 241 #[test]
241 fn unbalanced_comma() { 242 fn unbalanced_comma() {