diff options
Diffstat (limited to 'crates/ra_syntax/src/grammar.ron')
-rw-r--r-- | crates/ra_syntax/src/grammar.ron | 33 |
1 files changed, 24 insertions, 9 deletions
diff --git a/crates/ra_syntax/src/grammar.ron b/crates/ra_syntax/src/grammar.ron index c7acbbd6c..a3bfc74a7 100644 --- a/crates/ra_syntax/src/grammar.ron +++ b/crates/ra_syntax/src/grammar.ron | |||
@@ -271,7 +271,7 @@ Grammar( | |||
271 | ] | 271 | ] |
272 | ), | 272 | ), |
273 | "NamedFieldDefList": (collections: [["fields", "NamedFieldDef"]]), | 273 | "NamedFieldDefList": (collections: [["fields", "NamedFieldDef"]]), |
274 | "NamedFieldDef": ( traits: ["VisibilityOwner", "NameOwner", "AttrsOwner", "DocCommentsOwner"], options: ["TypeRef"] ), | 274 | "NamedFieldDef": ( traits: ["VisibilityOwner", "NameOwner", "AttrsOwner", "DocCommentsOwner", "TypeAscriptionOwner"], options: ["TypeRef"] ), |
275 | "PosFieldDefList": (collections: [["fields", "PosFieldDef"]]), | 275 | "PosFieldDefList": (collections: [["fields", "PosFieldDef"]]), |
276 | "PosFieldDef": ( traits: ["VisibilityOwner", "AttrsOwner"], options: ["TypeRef"]), | 276 | "PosFieldDef": ( traits: ["VisibilityOwner", "AttrsOwner"], options: ["TypeRef"]), |
277 | "EnumDef": ( traits: [ | 277 | "EnumDef": ( traits: [ |
@@ -298,7 +298,8 @@ Grammar( | |||
298 | "NameOwner", | 298 | "NameOwner", |
299 | "TypeParamsOwner", | 299 | "TypeParamsOwner", |
300 | "AttrsOwner", | 300 | "AttrsOwner", |
301 | "DocCommentsOwner" | 301 | "DocCommentsOwner", |
302 | "TypeAscriptionOwner", | ||
302 | ], | 303 | ], |
303 | options: ["TypeRef"] | 304 | options: ["TypeRef"] |
304 | ), | 305 | ), |
@@ -308,7 +309,8 @@ Grammar( | |||
308 | "NameOwner", | 309 | "NameOwner", |
309 | "TypeParamsOwner", | 310 | "TypeParamsOwner", |
310 | "AttrsOwner", | 311 | "AttrsOwner", |
311 | "DocCommentsOwner" | 312 | "DocCommentsOwner", |
313 | "TypeAscriptionOwner", | ||
312 | ], | 314 | ], |
313 | options: ["TypeRef"] | 315 | options: ["TypeRef"] |
314 | ), | 316 | ), |
@@ -569,11 +571,16 @@ Grammar( | |||
569 | "ExprStmt": ( | 571 | "ExprStmt": ( |
570 | options: [ ["expr", "Expr"] ] | 572 | options: [ ["expr", "Expr"] ] |
571 | ), | 573 | ), |
572 | "LetStmt": ( options: [ | 574 | "LetStmt": ( |
573 | ["pat", "Pat"], | 575 | options: [ |
574 | ["type_ref", "TypeRef"], | 576 | ["pat", "Pat"], |
575 | ["initializer", "Expr"], | 577 | ["type_ref", "TypeRef"], |
576 | ]), | 578 | ["initializer", "Expr"], |
579 | ], | ||
580 | traits: [ | ||
581 | "TypeAscriptionOwner", | ||
582 | ] | ||
583 | ), | ||
577 | "Condition": ( | 584 | "Condition": ( |
578 | options: [ "Pat", "Expr" ] | 585 | options: [ "Pat", "Expr" ] |
579 | ), | 586 | ), |
@@ -595,10 +602,18 @@ Grammar( | |||
595 | ["params", "Param"] | 602 | ["params", "Param"] |
596 | ] | 603 | ] |
597 | ), | 604 | ), |
598 | "SelfParam": (options: ["TypeRef", "SelfKw"]), | 605 | "SelfParam": ( |
606 | options: ["TypeRef", "SelfKw"], | ||
607 | traits: [ | ||
608 | "TypeAscriptionOwner", | ||
609 | ] | ||
610 | ), | ||
599 | "SelfKw": (), | 611 | "SelfKw": (), |
600 | "Param": ( | 612 | "Param": ( |
601 | options: [ "Pat", "TypeRef" ], | 613 | options: [ "Pat", "TypeRef" ], |
614 | traits: [ | ||
615 | "TypeAscriptionOwner", | ||
616 | ] | ||
602 | ), | 617 | ), |
603 | "UseItem": ( | 618 | "UseItem": ( |
604 | traits: ["AttrsOwner"], | 619 | traits: ["AttrsOwner"], |