UglifyJS/test/mocha
Anthony Van de Gejuchte 0af42d1831 Template fixes
* Fixes #1147: template strings not obeying -b ascii_only true
* Allow evaluation of template expressions by adding optimizers and
  walkers
* Make sure tagged templates are never changed
* Remove template tokenizer in parser, add template tokenizer in
  tokenizer. It is using a brace counter to track brace position of
  templates
* Add tokens `template_head` and `template_substitution` but parsing
  tokens stays mostly the same
* Do not output strings anymore in AST_TemplateString, instead use
  AST_TemplateSegment
* Fix parsing tagged templates, allowing multiple templates behind
  as spec allows this

These changes don't influence tagged templates because raw content
may influence code execution, however they are safe to do in normal
templates:
* Allow basic string concatenation of templates where possible
* Allow custom character escape style similar to strings, except in
  tagged templates

Note that expressions are still compressed in tagged templates.

Optional things that may be improved later:
* Custom quote style for templates if it doesn't have expressions.
  Making it obey the quote_style option if this is the case.
2016-07-17 00:36:42 +02:00
..
arguments.js Make arguments test slightly more strict 2016-01-15 00:04:05 +01:00
arrow.js Restrict yield outside generators in strict mode 2016-06-19 21:03:36 +02:00
builtins.js Add Symbol to builtins 2016-05-24 17:57:18 +02:00
class.js Restrict yield outside generators in strict mode 2016-06-19 21:03:36 +02:00
cli.js Introduce a test that tests the --self build 2016-07-01 09:46:05 +02:00
comment_before_constant.js Retain comments before AST_Constants during mangle. 2016-05-04 20:11:45 +02:00
comment-filter.js Add some tests for comment-filters through api 2016-01-19 19:14:19 +01:00
comment.js Improve multi-line comment parsing 2016-07-12 00:08:35 +02:00
directives.js Keep master in sync with harmony 2016-06-20 18:42:17 +02:00
expression.js Add exponentiation operator 2016-06-22 12:23:37 +02:00
function.js Restrict yield outside generators in strict mode 2016-06-19 21:03:36 +02:00
getter-setter.js Normalize error messages 2016-06-19 21:08:34 +02:00
huge-number-of-comments.js Parse comments without recursion to avoid RangeError. 2016-04-16 02:02:47 -04:00
let.js Attempt to increase timeout for mocha let test. 2016-03-15 11:44:09 -04:00
line-endings.js Various LineTerminator changes 2016-06-30 22:12:50 +02:00
minify-file-map.js Allow input files to be map (url->filename) 2016-06-30 22:23:59 +02:00
minify.js Respect quote style in object literals 2016-06-19 21:13:31 +02:00
new.js Throw error if new.target is like new.foo 2016-06-25 19:32:53 +02:00
object.js Improve yield support and restrict usage of strict 2016-06-09 22:22:15 +02:00
spidermonkey.js Don't convert all strings to directives from moz-ast 2016-07-03 12:36:57 +02:00
string-literal.js Various LineTerminator changes 2016-06-30 22:12:50 +02:00
template-string.js Template fixes 2016-07-17 00:36:42 +02:00
unicode.js Add reserved words to list unescapable keywords 2016-06-30 22:47:44 +02:00
with.js Fix uses_with/uses_eval/directives state in block scope 2016-07-01 15:43:17 +02:00
yield.js Restrict yield outside generators in strict mode 2016-06-19 21:03:36 +02:00