Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(62)

Side by Side Diff: docs/language/dartLangSpec.tex

Issue 2304923002: Allow surrogates in string literals. (Closed)
Patch Set: Include analyzer and spec changes. Created 4 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 \documentclass{article} 1 \documentclass{article}
2 \usepackage{epsfig} 2 \usepackage{epsfig}
3 \usepackage{color} 3 \usepackage{color}
4 \usepackage{dart} 4 \usepackage{dart}
5 \usepackage{bnf} 5 \usepackage{bnf}
6 \usepackage{hyperref} 6 \usepackage{hyperref}
7 \usepackage{lmodern} 7 \usepackage{lmodern}
8 \newcommand{\code}[1]{{\sf #1}} 8 \newcommand{\code}[1]{{\sf #1}}
9 \title{Dart Programming Language Specification \\ 9 \title{Dart Programming Language Specification \\
10 {4th edition draft}\\ 10 {4th edition draft}\\
(...skipping 2772 matching lines...) Expand 10 before | Expand all | Expand 10 after
2783 \item $\backslash$n for newline, equivalent to $\backslash$x0A. 2783 \item $\backslash$n for newline, equivalent to $\backslash$x0A.
2784 \item $\backslash$r for carriage return, equivalent to $\backslash$x0D. 2784 \item $\backslash$r for carriage return, equivalent to $\backslash$x0D.
2785 \item $\backslash$f for form feed, equivalent to $\backslash$x0C. 2785 \item $\backslash$f for form feed, equivalent to $\backslash$x0C.
2786 \item $\backslash$b for backspace, equivalent to $\backslash$x08. 2786 \item $\backslash$b for backspace, equivalent to $\backslash$x08.
2787 \item $\backslash$t for tab, equivalent to $\backslash$x09. 2787 \item $\backslash$t for tab, equivalent to $\backslash$x09.
2788 \item $\backslash$v for vertical tab, equivalent to $\backslash$x0B 2788 \item $\backslash$v for vertical tab, equivalent to $\backslash$x0B
2789 \item $\backslash$x $HEX\_DIGIT_1$ $HEX\_DIGIT_2$, equivalent to 2789 \item $\backslash$x $HEX\_DIGIT_1$ $HEX\_DIGIT_2$, equivalent to
2790 2790
2791 $\backslash$u\{$HEX\_DIGIT_1$ $HEX\_DIGIT_2$\}. 2791 $\backslash$u\{$HEX\_DIGIT_1$ $HEX\_DIGIT_2$\}.
2792 \item $\backslash$u $HEX\_DIGIT_1$ $HEX\_DIGIT_2$ $HEX\_DIGIT_3$ $HEX\_DIGIT_4$, equivalent to $\backslash$u\{$HEX\_DIGIT_1$ $HEX\_DIGIT_2$ $HEX\_DIGIT_3$ $HEX\ _DIGIT_4$\}. 2792 \item $\backslash$u $HEX\_DIGIT_1$ $HEX\_DIGIT_2$ $HEX\_DIGIT_3$ $HEX\_DIGIT_4$, equivalent to $\backslash$u\{$HEX\_DIGIT_1$ $HEX\_DIGIT_2$ $HEX\_DIGIT_3$ $HEX\ _DIGIT_4$\}.
2793 \item $\backslash$u\{$HEX\_DIGIT\_SEQUENCE$\} is the unicode scalar value repres ented by the $HEX\_DIGIT\_SEQUENCE$. It is a compile-time error if the value of the $HEX\_DIGIT\_SEQUENCE$ is not a valid unicode scalar value. 2793 \item $\backslash$u\{$HEX\_DIGIT\_SEQUENCE$\} is the Unicode code point represen ted by the $HEX\_DIGIT\_SEQUENCE$.
floitsch 2016/09/15 15:09:19 It might only be the unicode code unit, since we n
Lasse Reichstein Nielsen 2016/09/15 15:50:37 The term "code unit" presumes an encoding form (e.
2794 \item \$ indicating the beginning of an interpolated expression. 2794 \item \$ indicating the beginning of an interpolated expression.
2795 \item Otherwise, $\backslash k$ indicates the character $k$ for any $k$ not in $ \{n, r, f, b, t, v, x, u\}$. 2795 \item Otherwise, $\backslash k$ indicates the character $k$ for any $k$ not in $ \{n, r, f, b, t, v, x, u\}$.
2796 \end{itemize} 2796 \end{itemize}
2797 2797
2798 \LMHash{} 2798 \LMHash{}
2799 Any string may be prefixed with the character `r', indicating that it is a {\em raw string}, in which case no escapes or interpolations are recognized. 2799 Any string may be prefixed with the character `r', indicating that it is a {\em raw string}, in which case no escapes or interpolations are recognized.
2800 2800
2801 \LMHash{} 2801 \LMHash{}
2802 It is a compile-time error if a non-raw string literal contains a character sequ ence of the form $\backslash$x that is not followed by a sequence of two hexadec imal digits. It is a compile-time error if a non-raw string literal contains a character sequence of the form $\backslash$u that is not followed by either a se quence of four hexadecimal digits, or by curly brace delimited sequence of hexad ecimal digits. 2802 It is a compile-time error if a non-raw string literal contains a character sequ ence of the form $\backslash$x that is not followed by a sequence of two hexadec imal digits. It is a compile-time error if a non-raw string literal contains a character sequence of the form $\backslash$u that is not followed by either a se quence of four hexadecimal digits, or by curly brace delimited sequence of hexad ecimal digits.
2803 2803
(...skipping 5093 matching lines...) Expand 10 before | Expand all | Expand 10 after
7897 7897
7898 The invariant that each normative paragraph is associated with a line 7898 The invariant that each normative paragraph is associated with a line
7899 containing the text \LMHash{} should be maintained. Extra occurrences 7899 containing the text \LMHash{} should be maintained. Extra occurrences
7900 of \LMHash{} can be added if needed, e.g., in order to make 7900 of \LMHash{} can be added if needed, e.g., in order to make
7901 individual \item{}s in itemized lists addressable. Each \LM.. command 7901 individual \item{}s in itemized lists addressable. Each \LM.. command
7902 must occur on a separate line. \LMHash{} must occur immediately 7902 must occur on a separate line. \LMHash{} must occur immediately
7903 before the associated paragraph, and \LMLabel must occur immediately 7903 before the associated paragraph, and \LMLabel must occur immediately
7904 after the associated \section{}, \subsection{} etc. 7904 after the associated \section{}, \subsection{} etc.
7905 7905
7906 ---------------------------------------------------------------------- 7906 ----------------------------------------------------------------------
OLDNEW
« no previous file with comments | « no previous file | pkg/analyzer/lib/src/generated/parser.dart » ('j') | pkg/analyzer/lib/src/generated/parser.dart » ('J')

Powered by Google App Engine
This is Rietveld 408576698