Attributes
Attributes are in the sequence of meta-data followed by modifiers. A parser shall disambiguate expressions into attributes as applicable.
Syntax
-
Attributes :
-
Attribute AttributeLineBreakRestriction
AttributeCombination AttributeLineBreakRestriction
-
AttributeCombination :
-
Attribute AttributeLineBreakRestriction Attributes
-
BlockAttributes :
-
Metadata
BlockAttributes Metadata
-
AttributeLineBreakRestriction :
-
no line break if the previous and offending tokens match an IdentifierName
-
Attribute :
-
Metadata
UserAttribute
ReservedNamespace
final
native
static
abstract
override
-
UserAttribute :
-
Identifier
UserAttribute . IdentifierName
-
Metadata :
-
MetadataPreRestriction [ MetadataForm ]]
MetadataPreRestriction [ MetadataForm MetadataTrailingComma ]
-
MetadataPreRestriction :
-
if the Metadata is in the beginning of Attributes or if the Metadata appears before an IdentifierName in Attributes
-
MetadataTrailingComma :
-
comma , if the Metadata is the first occurrence in Attributes or BlockAttributes
-
MetadataForm :
-
MetadataName
MetadataName ()
MetadataName ( MetadataEntryList )
-
MetadataName :
-
Identifier
Identifier :: IdentifierName
-
MetadataEntryList :
-
MetadataEntry
MetadataEntryList , MetadataEntry
-
MetadataEntry :
-
MetadataName
StringLiteral
MetadataName = StringLiteral