error on whitespaces / newlines :(
This commit is contained in:
		
					parent
					
						
							
								47cad9fb16
							
						
					
				
			
			
				commit
				
					
						3de0631341
					
				
			
		
					 1 changed files with 14 additions and 12 deletions
				
			
		|  | @ -64,19 +64,21 @@ where | ||||||
| 
 | 
 | ||||||
|         add_sub |         add_sub | ||||||
|     }); |     }); | ||||||
|  |     let decl = recursive(|decl| { | ||||||
|  |         let r#var = just(Token::Var) | ||||||
|  |             .ignore_then(ident) | ||||||
|  |             .then_ignore(just(Token::Assign)) | ||||||
|  |             .then(expr.clone()) | ||||||
|  |             .then_ignore(just(Token::NewLine).or_not()) | ||||||
|  |             .then(decl) | ||||||
|  |             .map(|(name, rhs)| Expr::Assignment { | ||||||
|  |                 target: Box::new(Expr::Ident(name.0)), 
 | ||||||
|  |                 value: Box::new(rhs), 
 | ||||||
|  |             }); | ||||||
|  |         r#var.or(expr)   
 | ||||||
|  |     }); | ||||||
| 
 | 
 | ||||||
|     let var = just(Token::Var) |     decl.then_ignore(end()) | ||||||
|         .ignore_then(ident) |  | ||||||
|         .then_ignore(just(Token::Assign)) |  | ||||||
|         .then(expr.clone()) |  | ||||||
|         .then_ignore(just(Token::NewLine).or_not()) |  | ||||||
|         .map(|(name, rhs)| Expr::Assignment { |  | ||||||
|             target: Box::new(Expr::Ident(name)), 
 |  | ||||||
|             value: Box::new(rhs), 
 |  | ||||||
|         }); |  | ||||||
|     
 |  | ||||||
| 
 |  | ||||||
|     var.or(expr) |  | ||||||
|   
 |   
 | ||||||
| 
 | 
 | ||||||
| } | } | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue