]> git.lizzy.rs Git - rust.git/blob - src/test/ui/utf8.rs
Auto merge of #68423 - Centril:rollup-bdjykrv, r=Centril
[rust.git] / src / test / ui / utf8.rs
1 // run-pass
2
3 pub fn main() {
4     let yen: char = '¥'; // 0xa5
5     let c_cedilla: char = 'ç'; // 0xe7
6     let thorn: char = 'þ'; // 0xfe
7     let y_diaeresis: char = 'ÿ'; // 0xff
8     let pi: char = 'Π'; // 0x3a0
9
10     assert_eq!(yen as isize, 0xa5);
11     assert_eq!(c_cedilla as isize, 0xe7);
12     assert_eq!(thorn as isize, 0xfe);
13     assert_eq!(y_diaeresis as isize, 0xff);
14     assert_eq!(pi as isize, 0x3a0);
15
16     assert_eq!(pi as isize, '\u{3a0}' as isize);
17     assert_eq!('\x0a' as isize, '\n' as isize);
18
19     let bhutan: String = "འབྲུག་ཡུལ།".to_string();
20     let japan: String = "日本".to_string();
21     let uzbekistan: String = "Ўзбекистон".to_string();
22     let austria: String = "Österreich".to_string();
23
24     let bhutan_e: String =
25         "\u{f60}\u{f56}\u{fb2}\u{f74}\u{f42}\u{f0b}\u{f61}\u{f74}\u{f63}\u{f0d}".to_string();
26     let japan_e: String = "\u{65e5}\u{672c}".to_string();
27     let uzbekistan_e: String =
28         "\u{40e}\u{437}\u{431}\u{435}\u{43a}\u{438}\u{441}\u{442}\u{43e}\u{43d}".to_string();
29     let austria_e: String = "\u{d6}sterreich".to_string();
30
31     let oo: char = 'Ö';
32     assert_eq!(oo as isize, 0xd6);
33
34     fn check_str_eq(a: String, b: String) {
35         let mut i: isize = 0;
36         for ab in a.bytes() {
37             println!("{}", i);
38             println!("{}", ab);
39             let bb: u8 = b.as_bytes()[i as usize];
40             println!("{}", bb);
41             assert_eq!(ab, bb);
42             i += 1;
43         }
44     }
45
46     check_str_eq(bhutan, bhutan_e);
47     check_str_eq(japan, japan_e);
48     check_str_eq(uzbekistan, uzbekistan_e);
49     check_str_eq(austria, austria_e);
50 }