diff --git a/nixd/lib/Syntax/Parser/Parser.y b/nixd/lib/Syntax/Parser/Parser.y index 7cb55e37d..0df1445e1 100644 --- a/nixd/lib/Syntax/Parser/Parser.y +++ b/nixd/lib/Syntax/Parser/Parser.y @@ -113,7 +113,7 @@ expr_function }, yylloc, *Data); } | expr_if - ; + expr_if @@ -125,7 +125,7 @@ expr_if }, yylloc, *Data); } | expr_op - ; + expr_op : '!' expr_op %prec NOT { @@ -160,7 +160,7 @@ expr_op }, yylloc, *Data); } | expr_app - ; + expr_app : expr_app expr_select { @@ -173,14 +173,14 @@ expr_app .Args = {} }, yylloc, *Data); } - ; + expr_select : expr_simple '.' attrpath | expr_simple '.' attrpath OR_KW expr_select | expr_simple OR_KW | expr_simple - ; + expr_simple @@ -198,35 +198,35 @@ expr_simple | REC '{' binds '}' | '{' binds '}' | '[' expr_list ']' - ; + string_parts : STR | string_parts_interpolated | - ; + string_parts_interpolated : string_parts_interpolated STR | string_parts_interpolated DOLLAR_CURLY expr '}' | DOLLAR_CURLY expr '}' | STR DOLLAR_CURLY expr '}' - ; + path_start : PATH | HPATH - ; + ind_string_parts : ind_string_parts IND_STR | ind_string_parts DOLLAR_CURLY expr '}' | - ; + identifier : ID - ; + binds @@ -234,47 +234,47 @@ binds | binds INHERIT attrs ';' | binds INHERIT '(' expr ')' attrs ';' | - ; + attrs : attrs attr | attrs string_attr | - ; + attrpath : attrpath '.' attr | attrpath '.' string_attr | attr | string_attr - ; + attr : identifier | OR_KW - ; + string_attr : '"' string_parts '"' | DOLLAR_CURLY expr '}' - ; + expr_list : expr_list expr_select | - ; + formals : formal ',' formals | formal | | ELLIPSIS - ; + formal : identifier | identifier '?' expr - ; + %%