Add function expr parsing

* Introduce new `fn` keyword
* Function example is added to examples/expr.not

Signed-off-by: Alek Ratzloff <alekratz@gmail.com>
This commit is contained in:
2020-09-18 16:39:06 -07:00
parent 337be88849
commit f0032afe12
7 changed files with 95 additions and 9 deletions

View File

@@ -21,6 +21,7 @@ pub trait Visit {
fn visit_call_expr(&mut self, expr: &CallExpr) -> Self::Out;
fn visit_index_expr(&mut self, expr: &IndexExpr) -> Self::Out;
fn visit_access_expr(&mut self, expr: &AccessExpr) -> Self::Out;
fn visit_fun_expr(&mut self, expr: &FunExpr) -> Self::Out;
fn visit_atom(&mut self, atom: &Atom) -> Self::Out;
}
@@ -37,6 +38,7 @@ copy/paste of default_accepts
fn visit_call_expr(&mut self, expr: &CallExpr) -> Self::Out { DefaultAccept::default_accept(expr, self); }
fn visit_index_expr(&mut self, expr: &IndexExpr) -> Self::Out { DefaultAccept::default_accept(expr, self); }
fn visit_access_expr(&mut self, expr: &AccessExpr) -> Self::Out { DefaultAccept::default_accept(expr, self); }
fn visit_fun_expr(&mut self, expr: &FunExpr) -> Self::Out { DefaultAccept::default_accept(expr, self); }
fn visit_atom(&mut self, atom: &Atom) -> Self::Out { DefaultAccept(atom, self); }
*/