aboutsummaryrefslogtreecommitdiff
path: root/src/libexpr/nix.sdf
diff options
context:
space:
mode:
Diffstat (limited to 'src/libexpr/nix.sdf')
-rw-r--r--src/libexpr/nix.sdf15
1 files changed, 5 insertions, 10 deletions
diff --git a/src/libexpr/nix.sdf b/src/libexpr/nix.sdf
index 19e9bd1e9..e60311e73 100644
--- a/src/libexpr/nix.sdf
+++ b/src/libexpr/nix.sdf
@@ -14,15 +14,11 @@ imports Nix-Exprs Nix-Layout
module Nix-Exprs
imports Nix-Lexicals
exports
- sorts Expr Formal Bind Binds ExprList
+ sorts Expr Formal Bind ExprList
context-free start-symbols Expr
context-free syntax
- Id -> Expr {cons("Var")}
- Int -> Expr {cons("Int")}
- Str -> Expr {cons("Str")}
- Uri -> Expr {cons("Uri")}
- Path -> Expr {cons("Path")}
+ Id | Int | Str | Uri | Path -> Expr {cons("Var")}
"(" Expr ")" -> Expr {bracket}
@@ -37,11 +33,10 @@ exports
"with" Expr ";" Expr -> Expr {cons("With")}
- "rec" "{" Binds "}" -> Expr {cons("Rec")}
- "let" "{" Binds "}" -> Expr {cons("LetRec")}
- "{" Binds "}" -> Expr {cons("Attrs")}
+ "rec" "{" Bind* "}" -> Expr {cons("Rec")}
+ "let" "{" Bind* "}" -> Expr {cons("LetRec")}
+ "{" Bind* "}" -> Expr {cons("Attrs")}
- Bind* -> Binds
Id "=" Expr ";" -> Bind {cons("Bind")}
"inherit" ("(" Expr ")")? Id* ";" -> Bind {cons("Inherit")}