diff options
| author | Ryo Yoshida <low.ryoshida@gmail.com> | 2023-03-04 00:23:56 +0900 |
|---|---|---|
| committer | Ryo Yoshida <low.ryoshida@gmail.com> | 2023-03-04 00:23:56 +0900 |
| commit | 2e7d2c2d045e2a66a4e309cbb71a3264004f8678 (patch) | |
| tree | c8da7ff5cbc0b2ca0def352fb807213212d49097 /crates/parser | |
| parent | 9b441b9c67531481c7c18cd09b2397c0591ae63f (diff) | |
| download | rust-2e7d2c2d045e2a66a4e309cbb71a3264004f8678.tar.gz rust-2e7d2c2d045e2a66a4e309cbb71a3264004f8678.zip | |
Parse trait alias as a distinct AST type
Diffstat (limited to 'crates/parser')
4 files changed, 5 insertions, 4 deletions
diff --git a/crates/parser/src/grammar/items/traits.rs b/crates/parser/src/grammar/items/traits.rs index c982e2d564c..a8a1ccb15e6 100644 --- a/crates/parser/src/grammar/items/traits.rs +++ b/crates/parser/src/grammar/items/traits.rs @@ -20,7 +20,7 @@ pub(super) fn trait_(p: &mut Parser<'_>, m: Marker) { // trait Z<U> = where Self: T<U>; generic_params::opt_where_clause(p); p.expect(T![;]); - m.complete(p, TRAIT); + m.complete(p, TRAIT_ALIAS); return; } diff --git a/crates/parser/src/syntax_kind/generated.rs b/crates/parser/src/syntax_kind/generated.rs index 52b3fc23d59..cd87b304a2f 100644 --- a/crates/parser/src/syntax_kind/generated.rs +++ b/crates/parser/src/syntax_kind/generated.rs @@ -135,6 +135,7 @@ pub enum SyntaxKind { STATIC, CONST, TRAIT, + TRAIT_ALIAS, IMPL, TYPE_ALIAS, MACRO_CALL, diff --git a/crates/parser/test_data/parser/inline/ok/0151_trait_alias.rast b/crates/parser/test_data/parser/inline/ok/0151_trait_alias.rast index 2ef66484ae4..c45f8708980 100644 --- a/crates/parser/test_data/parser/inline/ok/0151_trait_alias.rast +++ b/crates/parser/test_data/parser/inline/ok/0151_trait_alias.rast @@ -1,5 +1,5 @@ SOURCE_FILE - TRAIT + TRAIT_ALIAS TRAIT_KW "trait" WHITESPACE " " NAME diff --git a/crates/parser/test_data/parser/inline/ok/0177_trait_alias_where_clause.rast b/crates/parser/test_data/parser/inline/ok/0177_trait_alias_where_clause.rast index 4443d9d1426..8f678247731 100644 --- a/crates/parser/test_data/parser/inline/ok/0177_trait_alias_where_clause.rast +++ b/crates/parser/test_data/parser/inline/ok/0177_trait_alias_where_clause.rast @@ -1,5 +1,5 @@ SOURCE_FILE - TRAIT + TRAIT_ALIAS TRAIT_KW "trait" WHITESPACE " " NAME @@ -50,7 +50,7 @@ SOURCE_FILE IDENT "Copy" SEMICOLON ";" WHITESPACE "\n" - TRAIT + TRAIT_ALIAS TRAIT_KW "trait" WHITESPACE " " NAME |
