angular-cn/packages/compiler/test/ml_parser
Pete Bacon Darwin f7c867ebc2 fix(ivy): correctly tokenize escaped characters in templates (#28978)
Previously the start of a character indicated by an escape sequence
was being incorrectly computed by the lexer, which caused tokens
to include the start of the escaped character sequence in the
preceding token. In particular this affected the name extracted
from opening tags if the name was terminated by an escape sequence.
For example, `<t\n>` would have the name `t\` rather than `t`.

This fix refactors the lexer to use a "cursor" object to iterate over
the characters in the template source. There are two cursor implementations,
one expects a simple string, the other expects a string that contains
JavaScript escape sequences that need to be unescaped.

PR Close #28978
2019-02-28 02:44:19 -08:00
..
util test(ivy): update //packages/compiler tests for Ivy (#27301) 2018-11-29 21:31:35 -08:00
BUILD.bazel test(ivy): update //packages/compiler tests for Ivy (#27301) 2018-11-29 21:31:35 -08:00
ast_serializer_spec.ts refactor(compiler): use `options` argument for parsers (#28055) 2019-02-12 20:58:27 -08:00
ast_spec_utils.ts build: update npm dependencies (#19328) 2017-09-22 13:20:52 -07:00
html_parser_spec.ts fix(compiler): markup lexer should not capture quotes in attribute value (#28055) 2019-02-12 20:58:27 -08:00
html_whitespaces_spec.ts build: remove `main()` from specs (#21053) 2017-12-22 13:10:51 -08:00
icu_ast_expander_spec.ts refactor(compiler): use `options` argument for parsers (#28055) 2019-02-12 20:58:27 -08:00
lexer_spec.ts fix(ivy): correctly tokenize escaped characters in templates (#28978) 2019-02-28 02:44:19 -08:00