|
JavaScript 2.0
正式な記述
字句セマンティクス
|
2003-06-30 (Mon)
字句解析器が Unicode 文字の入力ストリームをトークンの並びに変換するのに使うアクションは字句セマンティクスにより記述される。ここでは利便性のために字句文法を再掲する。セマンティクスの表記法も見よ。
この文書には Word RTF 版 [英語] もある。
字句解析の開始記号は次のいずれかである。つまり、直前の入力要素が数値であれば NextInputElementnum
、直前の入力要素が数値でなく / であり、それを正規式として解釈していれば NextInputElementre
、また直前の入力要素が数値でなく / であり、それを除算演算子か除算代入演算子として解釈していれば NextInputElementdiv
である。
上記に加え、文字列から数値への変換の構文セマンティクスに使う StringNumericLiteral
、parseFloat 関数の実装の構文セマンティクスに使う StringDecimalLiteral
という開始記号がある。
«TAB» | «VT» | «FF» | «SP» | «u00A0»«u2000» | «u2001» | «u2002» | «u2003» | «u2004» | «u2005» | «u2006» | «u2007»«u2008» | «u2009» | «u200A» | «u200B»«u3000»\}] WhiteSpace InputElementdiv]
= Lex[InputElementdiv];abstract”, “as”, “break”,
“case”, “catch”, “class”,
“const”, “continue”, “debugger”,
“default”, “delete”, “do”,
“else”, “enum”, “export”,
“extends”, “false”, “finally”,
“for”, “function”, “get”,
“goto”, “if”, “implements”,
“import”, “in”, “instanceof”,
“interface”, “is”, “namespace”,
“native”, “new”, “null”,
“package”, “private”, “protected”,
“public”, “return”, “set”,
“super”, “switch”, “synchronized”,
“this”, “throw”, “throws”,
“transient”, “true”, “try”,
“typeof”, “use”, “var”,
“volatile”, “while”,
“with”} and
not ContainsEscapes[IdentifierName] then!! =! = =%% =&& && & =& =()** =++ ++ =,-- -- =.. . .:: :;<< << < =< === == = =>> => >> > => > >> > > =?[]^^ =^ ^^ ^ ={|| =| || | =}~. Fraction[訳注: 最後の部分の “????” は編集上のミスではない。現時点でセマンティクスの実装は終了しておらず、未確定という意味である]
N a N|
Waldemar Horwat 最終更新: 2003年6月30日 (月) |