mirror of
https://github.com/dart-lang/sdk
synced 2024-09-22 09:11:40 +00:00
Support r"xxx" raw strings
Review URL: https://chromiumcodereview.appspot.com//10914213 git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@12225 260f80e4-7a28-3924-810f-c04153c831b5
This commit is contained in:
parent
3317817025
commit
8f5eea3291
|
@ -831,6 +831,16 @@ void Scanner::Scan() {
|
|||
ScanLiteralString(true);
|
||||
}
|
||||
break;
|
||||
|
||||
case 'r':
|
||||
if ((LookaheadChar(1) == '"') || (LookaheadChar(1) == '\'')) {
|
||||
ReadChar();
|
||||
ScanLiteralString(true);
|
||||
} else {
|
||||
ScanIdent();
|
||||
}
|
||||
break;
|
||||
|
||||
case '"':
|
||||
case '\'':
|
||||
ScanLiteralString(false);
|
||||
|
|
|
@ -4,35 +4,35 @@
|
|||
|
||||
class RawStringTest {
|
||||
static testMain() {
|
||||
Expect.equals("abcd", @"abcd");
|
||||
Expect.equals("", @"");
|
||||
Expect.equals("", @'');
|
||||
Expect.equals("", @"""""");
|
||||
Expect.equals("", @'''''');
|
||||
Expect.equals("''''", @"''''");
|
||||
Expect.equals('""""', @'""""');
|
||||
Expect.equals("1\n2\n3", @"""1
|
||||
Expect.equals("abcd", r"abcd");
|
||||
Expect.equals("", r"");
|
||||
Expect.equals("", r'');
|
||||
Expect.equals("", r"""""");
|
||||
Expect.equals("", r'''''');
|
||||
Expect.equals("''''", r"''''");
|
||||
Expect.equals('""""', r'""""');
|
||||
Expect.equals("1\n2\n3", r"""1
|
||||
2
|
||||
3""");
|
||||
Expect.equals("1\n2\n3", @'''1
|
||||
Expect.equals("1\n2\n3", r'''1
|
||||
2
|
||||
3''');
|
||||
Expect.equals("1", @"""
|
||||
Expect.equals("1", r"""
|
||||
1""");
|
||||
Expect.equals("1", @'''
|
||||
Expect.equals("1", r'''
|
||||
1''');
|
||||
Expect.equals("'", @"'");
|
||||
Expect.equals('"', @'"');
|
||||
Expect.equals("1", @"1");
|
||||
Expect.equals("1", @"1");
|
||||
Expect.equals("\$", @"$");
|
||||
Expect.equals("\\", @"\");
|
||||
Expect.equals("\\", @'\');
|
||||
Expect.equals("\${12}", @"${12}");
|
||||
Expect.equals("'", r"'");
|
||||
Expect.equals('"', r'"');
|
||||
Expect.equals("1", r"1");
|
||||
Expect.equals("1", r"1");
|
||||
Expect.equals("\$", r"$");
|
||||
Expect.equals("\\", r"\");
|
||||
Expect.equals("\\", r'\');
|
||||
Expect.equals("\${12}", r"${12}");
|
||||
Expect.equals("\\a\\b\\c\\d\\e\\f\\g\\h\\i\\j\\k\\l\\m",
|
||||
@"\a\b\c\d\e\f\g\h\i\j\k\l\m");
|
||||
r"\a\b\c\d\e\f\g\h\i\j\k\l\m");
|
||||
Expect.equals("\\n\\o\\p\\q\\r\\s\\t\\u\\v\\w\\x\\y\\z",
|
||||
@"\n\o\p\q\r\s\t\u\v\w\x\y\z");
|
||||
r"\n\o\p\q\r\s\t\u\v\w\x\y\z");
|
||||
}
|
||||
}
|
||||
main() {
|
||||
|
|
Loading…
Reference in a new issue