2011/6/15 Axel Rauschmayer <a...@rauschma.de>: > Quick feedback: I haven’t seen SVE (substitution value expression?) defined > anywhere and can’t find a description of using ${{var}} as syntactic sugar > for "{var:${var}}".
SVE is defined in http://wiki.ecmascript.org/doku.php?id=harmony:quasis#substitution_body_syntax reproduced below: SVE Production Result QuasiLiteral :: QuasiTag`LiteralPortion QuasiLiteralTail SVE(QuasiLiteralTail) QuasiLiteralTail :: Substitution LiteralPortion QuasiLiteralTail array-concat(single-element-array(SVE(Substitution)), SVE(QuasiLiteralTail)) QuasiLiteralTail :: ` an empty array Substitution :: $Identifier PrimaryExpression : Identifier Substitution :: ${SubstitutionModifier Identifier} PrimaryExpression SubstitutionBody :: Identifier IdentifierPathTail MemberExpression : str-concat(SV(Identifier), SV(IdentifierPathTail)) IdentifierPathTail :: .IdentifierName IdentifierPathTail str-concat(“.”, SV(IdentifierName), SV(IdentifierPathTail)) IdentifierPathTail :: ε the empty string, ““ The SVE of a substitution is an expression that is evaluated in the scope in which the quasiliteral appears. The SVE of the quasi literal is the array of the SVE for each substitution. E.g. the SVE of quasitag`literalPortion0 $x literalPortion1 $y.z literalPortion2` is [x, y.z]. _______________________________________________ es-discuss mailing list es-discuss@mozilla.org https://mail.mozilla.org/listinfo/es-discuss