Make EnumVariant a DocCommentsOwner

This commit is contained in:
Jeremy A. Kolb 2019-01-23 15:59:19 -05:00
parent bf9cd6ee30
commit 6a6ce2bc95
3 changed files with 4 additions and 2 deletions

View File

@ -632,6 +632,7 @@ impl AstNode for EnumVariant {
impl ast::NameOwner for EnumVariant {}
impl ast::DocCommentsOwner for EnumVariant {}
impl EnumVariant {
pub fn expr(&self) -> Option<&Expr> {
super::child_opt(self)

View File

@ -279,7 +279,7 @@ Grammar(
"DocCommentsOwner"
], options: [["variant_list", "EnumVariantList"]] ),
"EnumVariantList": ( collections: [["variants", "EnumVariant"]] ),
"EnumVariant": ( traits: ["NameOwner"], options: ["Expr"] ),
"EnumVariant": ( traits: ["NameOwner", "DocCommentsOwner"], options: ["Expr"] ),
"TraitDef": ( traits: ["VisibilityOwner", "NameOwner", "AttrsOwner", "DocCommentsOwner"] ),
"Module": (
traits: ["VisibilityOwner", "NameOwner", "AttrsOwner", "DocCommentsOwner" ],

View File

@ -249,7 +249,8 @@ fn n_attached_trivias<'a>(
trivias: impl Iterator<Item = (SyntaxKind, &'a str)>,
) -> usize {
match kind {
CONST_DEF | TYPE_DEF | STRUCT_DEF | ENUM_DEF | FN_DEF | TRAIT_DEF | MODULE => {
CONST_DEF | TYPE_DEF | STRUCT_DEF | ENUM_DEF | ENUM_VARIANT | FN_DEF | TRAIT_DEF
| MODULE => {
let mut res = 0;
for (i, (kind, text)) in trivias.enumerate() {
match kind {