Skip to content

Commit f61dcd0

Browse files
committed
Add support for class-property-specifiers
1 parent 12bd6f7 commit f61dcd0

File tree

2 files changed

+10
-4
lines changed

2 files changed

+10
-4
lines changed

grammar.js

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -227,14 +227,20 @@ module.exports = grammar(C, {
227227
field('name', $._class_name),
228228
seq(
229229
optional(field('name', $._class_name)),
230-
optional($.virtual_specifier),
230+
optional($.class_property_specifier),
231231
optional($.base_class_clause),
232232
field('body', $.field_declaration_list),
233233
),
234234
),
235235
optional($.attribute_specifier),
236236
)),
237237

238+
class_property_specifier: $ => choice(
239+
'final',
240+
'trivially_relocatable_if_eligible',
241+
'replaceable_if_eligible',
242+
),
243+
238244
class_specifier: $ => seq(
239245
'class',
240246
$._class_declaration,

test/corpus/declarations.txt

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -651,14 +651,14 @@ struct D final {};
651651
(translation_unit
652652
(class_specifier
653653
(type_identifier)
654-
(virtual_specifier)
654+
(class_property_specifier)
655655
(base_class_clause
656656
(access_specifier)
657657
(type_identifier))
658658
(field_declaration_list))
659659
(class_specifier
660660
(type_identifier)
661-
(virtual_specifier)
661+
(class_property_specifier)
662662
(field_declaration_list))
663663
(struct_specifier
664664
(type_identifier)
@@ -937,7 +937,7 @@ class A final : [[deprecated]] public B {};
937937
(field_declaration_list))
938938
(class_specifier
939939
(type_identifier)
940-
(virtual_specifier)
940+
(class_property_specifier)
941941
(base_class_clause
942942
(attribute_declaration
943943
(attribute

0 commit comments

Comments
 (0)