Attribute AST node.
EBNF grammar:
attribute:
attribute-name "[" attribute-arguments "]"
attribute-name:
type-name
attribute-arguments:
"(" ( positional-argument-list )? ")"
"(" positional-argument-list "," named-argument-list ")"
"(" named-argument-list ")"