; functions (function_signature_item) @function.around (function_item body: (_ "{" (_)* @function.inside "}" )) @function.around ; classes (struct_item body: (_ ["{" "("]? [(_) ","?]* @class.inside ["}" ")"]? )) @class.around (enum_item body: (_ "{" [(_) ","?]* @class.inside "}" )) @class.around (union_item body: (_ "{" [(_) ","?]* @class.inside "}" )) @class.around (trait_item body: (_ "{" [(_) ","?]* @class.inside "}" )) @class.around (impl_item body: (_ "{" [(_) ","?]* @class.inside "}" )) @class.around (mod_item body: (_ "{" [(_) ","?]* @class.inside "}" )) @class.around ; comments (line_comment)+ @comment.around (block_comment) @comment.around