Annex A (informative) Grammar summary [gram] (original) (raw)

A.3 Lexical conventions [gram.lex]

n-char:
any member of the translation character set except the U+007d right curly bracket or new-line character

h-char:
any member of the translation character set except new-line and U+003e greater-than sign

q-char:
any member of the translation character set except new-line and U+0022 quotation mark

operator-or-punctuator: one of
{ } [ ] ( )
<% %> <: :> ; : ...
? :: . .* -> ->* ~
! + - * / % ^ & |
= += -= *= /= %= ^= &= |=
== != < > <= >= <=> && ||
<< >> <<= >>= ++ -- ,
and or xor not bitand bitor compl
and_eq or_eq xor_eq not_eq

nondigit: one of
a b c d e f g h i j k l m
n o p q r s t u v w x y z
A B C D E F G H I J K L M
N O P Q R S T U V W X Y Z _

digit: one of
0 1 2 3 4 5 6 7 8 9

keyword:
any identifier listed in Table 5
import-keyword
module-keyword
export-keyword

basic-c-char:
any member of the translation character set except the U+0027 apostrophe,
U+005c reverse solidus, or new-line character

basic-s-char:
any member of the translation character set except the U+0022 quotation mark,
U+005c reverse solidus, or new-line character

r-char:
any member of the translation character set, except a U+0029 right parenthesis followed by
the initial d-char-sequence (which may be empty) followed by a U+0022 quotation mark

d-char:
any member of the basic character set except:
U+0020 space, U+0028 left parenthesis, U+0029 right parenthesis, U+005c reverse solidus,
U+0009 character tabulation, U+000b line tabulation, U+000c form feed, and new-line