diff options
Diffstat (limited to 'doc/manual/nix-lang-ref.xml')
-rw-r--r-- | doc/manual/nix-lang-ref.xml | 182 |
1 files changed, 0 insertions, 182 deletions
diff --git a/doc/manual/nix-lang-ref.xml b/doc/manual/nix-lang-ref.xml deleted file mode 100644 index 86273ac3d0..0000000000 --- a/doc/manual/nix-lang-ref.xml +++ /dev/null @@ -1,182 +0,0 @@ -<appendix> - <title>Nix Language Reference</title> - - <sect1> - <title>Grammar</title> - - <productionset> - <title>Expressions</title> - - <production id="nix.expr"> - <lhs>Expr</lhs> - <rhs> - <nonterminal def="#nix.expr_function" /> - </rhs> - </production> - - <production id="nix.expr_function"> - <lhs>ExprFunction</lhs> - <rhs> - '{' <nonterminal def="#nix.formals" /> '}' ':' <nonterminal def="#nix.expr_function" /> - <sbr />| - <nonterminal def="#nix.expr_assert" /> - </rhs> - </production> - - <production id="nix.expr_assert"> - <lhs>ExprAssert</lhs> - <rhs> - 'assert' <nonterminal def="#nix.expr" /> ';' <nonterminal def="#nix.expr_assert" /> - <sbr />| - <nonterminal def="#nix.expr_if" /> - </rhs> - </production> - - <production id="nix.expr_if"> - <lhs>ExprIf</lhs> - <rhs> - 'if' <nonterminal def="#nix.expr" /> 'then' <nonterminal def="#nix.expr" /> - 'else' <nonterminal def="#nix.expr" /> - <sbr />| - <nonterminal def="#nix.expr_op" /> - </rhs> - </production> - - <production id="nix.expr_op"> - <lhs>ExprOp</lhs> - <rhs> - '!' <nonterminal def="#nix.expr_op" /> - <sbr />| - <nonterminal def="#nix.expr_op" /> '==' <nonterminal def="#nix.expr_op" /> - <sbr />| - <nonterminal def="#nix.expr_op" /> '!=' <nonterminal def="#nix.expr_op" /> - <sbr />| - <nonterminal def="#nix.expr_op" /> '&&' <nonterminal def="#nix.expr_op" /> - <sbr />| - <nonterminal def="#nix.expr_op" /> '||' <nonterminal def="#nix.expr_op" /> - <sbr />| - <nonterminal def="#nix.expr_op" /> '->' <nonterminal def="#nix.expr_op" /> - <sbr />| - <nonterminal def="#nix.expr_op" /> '//' <nonterminal def="#nix.expr_op" /> - <sbr />| - <nonterminal def="#nix.expr_op" /> '~' <nonterminal def="#nix.expr_op" /> - <sbr />| - <nonterminal def="#nix.expr_op" /> '?' <nonterminal def="#nix.id" /> - <sbr />| - <nonterminal def="#nix.expr_app" /> - </rhs> - </production> - - <production id="nix.expr_app"> - <lhs>ExprApp</lhs> - <rhs> - <nonterminal def="#nix.expr_app" /> '.' <nonterminal def="#nix.expr_select" /> - <sbr />| - <nonterminal def="#nix.expr_select" /> - </rhs> - </production> - - <production id="nix.expr_select"> - <lhs>ExprSelect</lhs> - <rhs> - <nonterminal def="#nix.expr_select" /> <nonterminal def="#nix.id" /> - <sbr />| - <nonterminal def="#nix.expr_simple" /> - </rhs> - </production> - - <production id="nix.expr_simple"> - <lhs>ExprSimple</lhs> - <rhs> - <nonterminal def="#nix.id" /> | - <nonterminal def="#nix.int" /> | - <nonterminal def="#nix.str" /> | - <nonterminal def="#nix.path" /> | - <nonterminal def="#nix.uri" /> - <sbr />| - 'true' | 'false' | 'null' - <sbr />| - '(' <nonterminal def="#nix.expr" /> ')' - <sbr />| - '{' <nonterminal def="#nix.bind" />* '}' - <sbr />| - 'let' '{' <nonterminal def="#nix.bind" />* '}' - <sbr />| - 'rec' '{' <nonterminal def="#nix.bind" />* '}' - <sbr />| - '[' <nonterminal def="#nix.expr_select" />* ']' - </rhs> - </production> - - <production id="nix.bind"> - <lhs>Bind</lhs> - <rhs> - <nonterminal def="#nix.id" /> '=' <nonterminal def="#nix.expr" /> ';' - <sbr />| - 'inherit' ('(' <nonterminal def="#nix.expr" /> ')')? <nonterminal def="#nix.id" />* ';' - </rhs> - </production> - - <production id="nix.formals"> - <lhs>Formals</lhs> - <rhs> - <nonterminal def="#nix.formal" /> ',' <nonterminal def="#nix.formals" /> - | <nonterminal def="#nix.formal" /> - </rhs> - </production> - - <production id="nix.formal"> - <lhs>Formal</lhs> - <rhs> - <nonterminal def="#nix.id" /> - <sbr />| - <nonterminal def="#nix.id" /> '?' <nonterminal def="#nix.expr" /> - </rhs> - </production> - - </productionset> - - <productionset> - <title>Terminals</title> - - <production id="nix.id"> - <lhs>Id</lhs> - <rhs>[a-zA-Z\_][a-zA-Z0-9\_\']*</rhs> - </production> - - <production id="nix.int"> - <lhs>Int</lhs> - <rhs>[0-9]+</rhs> - </production> - - <production id="nix.str"> - <lhs>Str</lhs> - <rhs>\"[^\n\"]*\"</rhs> - </production> - - <production id="nix.path"> - <lhs>Path</lhs> - <rhs>[a-zA-Z0-9\.\_\-\+]*(\/[a-zA-Z0-9\.\_\-\+]+)+</rhs> - </production> - - <production id="nix.uri"> - <lhs>Uri</lhs> - <rhs>[a-zA-Z][a-zA-Z0-9\+\-\.]*\:[a-zA-Z0-9\%\/\?\:\@\&\=\+\$\,\-\_\.\!\~\*\']+</rhs> - </production> - - <production id="nix.ws"> - <lhs>Whitespace</lhs> - <rhs> - [ \t\n]+ - <sbr />| - \#[^\n]* - <sbr />| - \/\*(.|\n)*\*\/ - </rhs> - </production> - - </productionset> - - </sect1> - -</appendix> |