Skip to content

Commit ba0a8ee

Browse files
committed
Cleanup keywords list
1 parent e9d1c67 commit ba0a8ee

File tree

2 files changed

+25
-27
lines changed

2 files changed

+25
-27
lines changed

community-rust-frontend/src/main/java/org/sonar/rust/RustGrammar.java

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -623,9 +623,9 @@ private static void functionsItem(LexerlessGrammarBuilder b) {
623623

624624
b.rule(SHORTHAND_SELF).is(
625625
b.optional(b.firstOf(b.sequence(RustPunctuator.AND, LIFETIME, SPC), RustPunctuator.AND)),
626-
b.optional(RustKeyword.KW_MUT, SPC), RustKeyword.KW_SELFVALUE);
626+
b.optional(RustKeyword.KW_MUT, SPC), RustKeyword.KW_SELF_VALUE);
627627

628-
b.rule(TYPED_SELF).is(b.optional(RustKeyword.KW_MUT, SPC), RustKeyword.KW_SELFVALUE, SPC,
628+
b.rule(TYPED_SELF).is(b.optional(RustKeyword.KW_MUT, SPC), RustKeyword.KW_SELF_VALUE, SPC,
629629
RustPunctuator.COLON, SPC, TYPE);
630630

631631
}
@@ -757,7 +757,7 @@ private static void assocItem(LexerlessGrammarBuilder b) {
757757
private static void visibilityItem(LexerlessGrammarBuilder b) {
758758
b.rule(VISIBILITY).is(b.firstOf(
759759
b.sequence(RustKeyword.KW_PUB, SPC, "(", SPC, RustKeyword.KW_CRATE, SPC, ")"),
760-
b.sequence(RustKeyword.KW_PUB, SPC, "(", SPC, RustKeyword.KW_SELFVALUE, SPC, ")"),
760+
b.sequence(RustKeyword.KW_PUB, SPC, "(", SPC, RustKeyword.KW_SELF_VALUE, SPC, ")"),
761761
b.sequence(RustKeyword.KW_PUB, SPC, "(", SPC, RustKeyword.KW_SUPER, SPC, ")"),
762762
b.sequence(RustKeyword.KW_PUB, SPC, "(", SPC, RustKeyword.KW_IN, SIMPLE_PATH, SPC, ")"),
763763
RustKeyword.KW_PUB
@@ -768,7 +768,7 @@ private static void visibilityItem(LexerlessGrammarBuilder b) {
768768
private static void externcrates(LexerlessGrammarBuilder b) {
769769
b.rule(EXTERN_CRATE).is(
770770
RustKeyword.KW_EXTERN, SPC, RustKeyword.KW_CRATE, SPC, CRATE_REF, SPC, b.optional(SPC, AS_CLAUSE, SPC), RustPunctuator.SEMI);
771-
b.rule(CRATE_REF).is(b.firstOf(RustKeyword.KW_SELFVALUE, IDENTIFIER));
771+
b.rule(CRATE_REF).is(b.firstOf(RustKeyword.KW_SELF_VALUE, IDENTIFIER));
772772
b.rule(AS_CLAUSE).is(RustKeyword.KW_AS, SPC, b.firstOf(RustPunctuator.UNDERSCORE, IDENTIFIER));
773773

774774
}
@@ -1799,7 +1799,7 @@ public static void lexicalpath(LexerlessGrammarBuilder b) {
17991799
b.zeroOrMore(b.sequence(RustPunctuator.PATHSEP, SIMPLE_PATH_SEGMENT)));
18001800
b.rule(SIMPLE_PATH_SEGMENT).is(b.firstOf(
18011801
b.sequence(RustKeyword.KW_SUPER, b.nextNot(IDENTIFIER)),
1802-
RustKeyword.KW_SELFVALUE, b.regexp("^crate$"), b.regexp(DOLLAR_CRATE_REGEX), IDENTIFIER));
1802+
RustKeyword.KW_SELF_VALUE, b.regexp("^crate$"), b.regexp(DOLLAR_CRATE_REGEX), IDENTIFIER));
18031803

18041804
b.rule(PATH_IN_EXPRESSION).is(
18051805
b.optional(RustPunctuator.PATHSEP),

community-rust-frontend/src/main/java/org/sonar/rust/api/RustKeyword.java

Lines changed: 20 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -26,60 +26,58 @@
2626
See https://doc.rust-lang.org/reference/keywords.html
2727
*/
2828
public enum RustKeyword implements GrammarRuleKey {
29+
KW_ABSTRACT("abstract"), // reserved keyword.
2930
KW_AS("as"),
31+
KW_ASYNC("async"), // added beginning in the 2018 edition.
32+
KW_AWAIT("await"), // added beginning in the 2018 edition.
33+
KW_BECOME("become"), // reserved keyword.
34+
KW_BOX("box"), // reserved keyword.
3035
KW_BREAK("break"),
3136
KW_CONST("const"),
3237
KW_CONTINUE("continue"),
3338
KW_CRATE("crate"),
39+
KW_DO("do"), // reserved keyword.
40+
KW_DYN("dyn"), // added beginning in the 2018 edition.
3441
KW_ELSE("else"),
3542
KW_ENUM("enum"),
3643
KW_EXTERN("extern"),
3744
KW_FALSE("false"),
45+
KW_FINAL("final"), // reserved keyword.
3846
KW_FN("fn"),
3947
KW_FOR("for"),
4048
KW_IF("if"),
4149
KW_IMPL("impl"),
4250
KW_IN("in"),
4351
KW_LET("let"),
4452
KW_LOOP("loop"),
53+
KW_MACRO("macro"), // reserved keyword.
4554
KW_MATCH("match"),
4655
KW_MOD("mod"),
4756
KW_MOVE("move"),
4857
KW_MUT("mut"),
58+
KW_OVERRIDE("override"), // reserved keyword.
59+
KW_PRIV("priv"), // reserved keyword.
4960
KW_PUB("pub"),
5061
KW_REF("ref"),
5162
KW_RETURN("return"),
52-
KW_SELFVALUE("self"),
53-
KW_SELFTYPE("Self"),
54-
KW_STATIC("static"),
63+
KW_SELF_VALUE("self"),
64+
KW_SELF_TYPE("Self"),
65+
KW_STATIC("static"), // weak
5566
KW_STRUCT("struct"),
5667
KW_SUPER("super"),
5768
KW_TRAIT("trait"),
5869
KW_TRUE("true"),
70+
KW_TRY("try"), // reserver keyword
5971
KW_TYPE("type"),
72+
KW_TYPEOF("typeof"), // reserved keyword.
73+
KW_UNION("union"), // weak
6074
KW_UNSAFE("unsafe"),
75+
KW_UNSIZED("unsized"), // reserved keyword
6176
KW_USE("use"),
77+
KW_VIRTUAL("virtual"), // reserved keyword
6278
KW_WHERE("where"),
6379
KW_WHILE("while"),
64-
KW_ASYNC("async"),
65-
KW_AWAIT("await"),
66-
KW_DYN("dyn"),
67-
/* Reserved keywords */
68-
KW_ABSTRACT("abstract"),
69-
KW_BECOME("become"),
70-
KW_BOX("box"),
71-
KW_DO(" do"),
72-
KW_FINAL("final"),
73-
KW_MACRO("macro"),
74-
KW_OVERRIDE(" override"),
75-
KW_PRIV("priv"),
76-
KW_TYPEOF("typeof"),
77-
KW_UNSIZED("unsized"),
78-
KW_VIRTUAL("virtual"),
79-
KW_YIELD("yield"),
80-
/* Weak keywords */
81-
KW_UNION("union"),
82-
KW_STATICLIFETIME("'static");
80+
KW_YIELD("yield"); // reserved keyword
8381

8482
private final String value;
8583

0 commit comments

Comments
 (0)