mirror of
https://github.com/rust-lang/rust.git
synced 2026-05-03 17:35:28 +03:00
35 lines
998 B
Rust
35 lines
998 B
Rust
//! Tests various forms of raw string literals
|
|
|
|
//@ run-pass
|
|
|
|
// ignore-tidy-tab: Raw strings deliberately contain tabs
|
|
// ignore-tidy-linelength: Long pattern string for vim syntax test
|
|
|
|
pub fn main() {
|
|
assert_eq!(r"abc", "abc");
|
|
|
|
assert_eq!(r#"abc"#, "abc");
|
|
|
|
assert_eq!(r"###", "###");
|
|
|
|
assert_eq!(r"\", "\\");
|
|
|
|
assert_eq!(r#"\""#, "\\\"");
|
|
|
|
assert_eq!(r#"#"\n""#, "#\"\\n\"");
|
|
|
|
assert_eq!(r##"a"#"b"##, "a\"#\"b");
|
|
|
|
// from rust.vim
|
|
assert_eq!(
|
|
r#""%\(\d\+\$\)\=[-+' #0*]*\(\d*\|\*\|\*\d\+\$\)\(\.\(\d*\|\*\|\*\d\+\$\)\)\=\([hlLjzt]\|ll\|hh\)\=\([aAbdiuoxXDOUfFeEgGcCsSpn?]\|\[\^\=.[^]]*\]\)""#,
|
|
"\"%\\(\\d\\+\\$\\)\\=[-+' #0*]*\\(\\d*\\|\\*\\|\\*\\d\\+\\$\\)\\(\\.\\(\\d*\\|\\*\\|\\*\\d\\+\\$\\)\\)\\=\\([hlLjzt]\\|ll\\|hh\\)\\=\\([aAbdiuoxXDOUfFeEgGcCsSpn?]\\|\\[\\^\\=.[^]]*\\]\\)\""
|
|
);
|
|
|
|
assert_eq!(
|
|
r"newline:'
|
|
', tab:' ', unicode:'●', null:' |