--- source: tests/langs/mod.rs expression: inscope_parts --- - n: 35 l: "fn free_func() {\n" m: ^^^^^^^^^^^^^^^^^^ - n: 36 l: " // A free function for testing.\n" m: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - n: 37 l: " let mut test_var = TEST_VAR.load(Ordering::SeqCst);\n" m: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - n: 38 l: " test_var += 1;\n" m: ^^^^^^^^^^^^^^^^^^^^ - n: 39 l: " TEST_VAR.store(test_var, Ordering::SeqCst);\n" m: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - n: 40 l: " println!(\"Global test_var is now {}\", test_var);\n" m: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - n: 41 l: "}\n" m: "^ " - n: 44 l: "fn func_decorator(func: F)\n" m: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - n: 45 l: "where\n" m: ^^^^^^^ - n: 46 l: " F: Fn() + 'static,\n" m: ^^^^^^^^^^^^^^^^^^^^^^^^^ - n: 47 l: "{\n" m: ^^^ - n: 48 l: " // Decorator for free function.\n" m: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - n: 49 l: " fn wrapper(func: F)\n" m: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - n: 50 l: " where\n" m: ^^^^^^^^^^^ - n: 51 l: " F: Fn(),\n" m: ^^^^^^^^^^^^^^^^^^ - n: 52 l: " {\n" m: ^^^^^^^ - n: 53 l: " println!(\"Function decorator called\");\n" m: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - n: 54 l: " func();\n" m: ^^^^^^^^^^^^^^^^^ - n: 55 l: " }\n" m: ^^^^^^^ - n: 56 l: "\n" m: ^^ - n: 57 l: " wrapper(func);\n" m: ^^^^^^^^^^^^^^^^^^^^ - n: 58 l: "}\n" m: "^ " - n: 60 l: "fn decorated_func() {\n" m: ^^^^^^^^^^^^^^^^^^^^^^^ - n: 61 l: " // Function with a decorator.\n" m: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - n: 62 l: " println!(\"Inside decorated function\");\n" m: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - n: 63 l: "}\n" m: "^ " - n: 77 l: " fn new() -> Self {\n" m: " ^^^^^^^^^^^^^^^^^^^^" - n: 78 l: " TestStruct {\n" m: ^^^^^^^^^^^^^^^^^^^^^^ - n: 79 l: " instance_var: String::from(\"hello\"),\n" m: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - n: 80 l: " }\n" m: ^^^^^^^^^^^ - n: 81 l: " }\n" m: "^^^^^ " - n: 88 l: " fn static_decorator(func: F) -> impl Fn()\n" m: " ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" - n: 89 l: " where\n" m: ^^^^^^^^^^^ - n: 90 l: " F: Fn(),\n" m: ^^^^^^^^^^^^^^^^^^ - n: 91 l: " {\n" m: ^^^^^^^ - n: 92 l: " // Decorator for static methods.\n" m: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - n: 93 l: " move || {\n" m: ^^^^^^^^^^^^^^^^^^^ - n: 94 l: " println!(\"Static method decorator called\");\n" m: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - n: 95 l: " func();\n" m: ^^^^^^^^^^^^^^^^^^^^^ - n: 96 l: " }\n" m: ^^^^^^^^^^^ - n: 97 l: " }\n" m: "^^^^^ " - n: 100 l: " fn instance_method(&mut self) {\n" m: " ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" - n: 101 l: " // Instance method.\n" m: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - n: 102 l: " self.instance_var = \"Instance variable\".to_string();\n" m: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - n: 103 l: " println!(\"Instance variable is {}\", self.instance_var);\n" m: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - n: 104 l: " }\n" m: "^^^^^ " - n: 106 l: " fn static_method() {\n" m: " ^^^^^^^^^^^^^^^^^^^^^^" - n: 107 l: " // Static method.\n" m: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ - n: 108 l: " println!(\"Inside static method\");\n" m: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - n: 109 l: " }\n" m: "^^^^^ " - n: 120 l: " fn match_statement(x: TestEnum) {\n" m: " ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" - n: 121 l: " // Function demonstrating match statement.\n" m: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - n: 122 l: " match x {\n" m: ^^^^^^^^^^^^^^^^^^^ - n: 123 l: " TestEnum::VariantOne => println!(\"One\"),\n" m: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - n: 124 l: " TestEnum::VariantTwo => println!(\"Two\"),\n" m: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - n: 125 l: " TestEnum::VariantOther => println!(\"Other\"),\n" m: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - n: 126 l: " }\n" m: ^^^^^^^^^^^ - n: 127 l: " }\n" m: "^^^^^ " - n: 131 l: "fn modify_nonlocal() {\n" m: ^^^^^^^^^^^^^^^^^^^^^^^^ - n: 132 l: " let mut nonlocal_var = \"Initial value\".to_string();\n" m: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - n: 133 l: "\n" m: ^^ - n: 134 l: " {\n" m: ^^^^^^^ - n: 135 l: " let mut inner = || {\n" m: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - n: 136 l: " nonlocal_var = \"Modified value\".to_string();\n" m: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - n: 137 l: " };\n" m: ^^^^^^^^^^^^ - n: 138 l: " inner();\n" m: ^^^^^^^^^^^^^^^^^^ - n: 139 l: " }\n" m: ^^^^^^^ - n: 140 l: " println!(\"Nonlocal variable is {}\", nonlocal_var);\n" m: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - n: 141 l: "}\n" m: "^ " - n: 143 l: "fn inplace_operations() {\n" m: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ - n: 144 l: " // Function demonstrating inplace operators.\n" m: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - n: 145 l: " let mut x = 10;\n" m: ^^^^^^^^^^^^^^^^^^^^^ - n: 146 l: " x += 5;\n" m: ^^^^^^^^^^^^^ - n: 147 l: " x -= 3;\n" m: ^^^^^^^^^^^^^ - n: 148 l: " x *= 2;\n" m: ^^^^^^^^^^^^^ - n: 149 l: " x /= 4;\n" m: ^^^^^^^^^^^^^ - n: 150 l: " println!(\"Inplace operations result: {}\", x);\n" m: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - n: 151 l: "}\n" m: "^ " - n: 154 l: "fn control_flow() {\n" m: ^^^^^^^^^^^^^^^^^^^^^ - n: 155 l: " // Function demonstrating various control flow statements.\n" m: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - n: 156 l: " // if statement\n" m: ^^^^^^^^^^^^^^^^^^^^^ - n: 157 l: " if TEST_VAR.load(Ordering::SeqCst) > 5 {\n" m: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - n: 158 l: " println!(\"test_var is greater than 5\");\n" m: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - n: 159 l: " } else {\n" m: ^^^^^^^^^^^^^^ - n: 160 l: " println!(\"test_var is 5 or less\");\n" m: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - n: 161 l: " }\n" m: ^^^^^^^ - n: 162 l: "\n" m: ^^ - n: 163 l: " // while statement\n" m: ^^^^^^^^^^^^^^^^^^^^^^^^ - n: 164 l: " let mut counter = 0;\n" m: ^^^^^^^^^^^^^^^^^^^^^^^^^^ - n: 165 l: " while counter < 3 {\n" m: ^^^^^^^^^^^^^^^^^^^^^^^^^ - n: 166 l: " println!(\"Counter is {}\", counter);\n" m: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - n: 167 l: " counter += 1;\n" m: ^^^^^^^^^^^^^^^^^^^^^^^ - n: 168 l: " }\n" m: ^^^^^^^ - n: 169 l: "\n" m: ^^ - n: 170 l: " // for statement\n" m: ^^^^^^^^^^^^^^^^^^^^^^ - n: 171 l: " for i in 0..3 {\n" m: ^^^^^^^^^^^^^^^^^^^^^ - n: 172 l: " println!(\"Loop iteration {}\", i);\n" m: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - n: 173 l: " }\n" m: ^^^^^^^ - n: 174 l: "\n" m: ^^ - n: 175 l: " // with statement\n" m: ^^^^^^^^^^^^^^^^^^^^^^^ - n: 176 l: " let file = File::open(file!()).expect(\"Cannot open file\");\n" m: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - n: 177 l: " let reader = BufReader::new(file);\n" m: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - n: 178 l: " if let Some(line) = reader.lines().next() {\n" m: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - n: 179 l: " println!(\"Read from file: {:?}\", line);\n" m: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - n: 180 l: " }\n" m: ^^^^^^^ - n: 181 l: "}\n" m: "^ " - n: 204 l: "fn main() {\n" m: ^^^^^^^^^^^^^ - n: 205 l: " use std::fs::read_to_string;\n" m: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - n: 206 l: "\n" m: ^^ - n: 207 l: " // Lambda expression\n" m: ^^^^^^^^^^^^^^^^^^^^^^^^^^ - n: 208 l: " let square = |x: i32| -> i32 { x * x };\n" m: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - n: 209 l: "\n" m: ^^ - n: 210 l: " // Multiline string\n" m: ^^^^^^^^^^^^^^^^^^^^^^^^^ - n: 211 l: " let multi_line_str = \"\n" m: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - n: 212 l: "This is a\n" m: ^^^^^^^^^^^ - n: 213 l: "multi-line string\n" m: ^^^^^^^^^^^^^^^^^^^ - n: 214 l: "for testing purposes.\n" m: ^^^^^^^^^^^^^^^^^^^^^^^ - n: 215 l: "\";\n" m: ^^^^^ - n: 216 l: "\n" m: ^^ - n: 217 l: " let multiline_f_string = format!(\n" m: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - n: 218 l: " \"This is a\\nmultiline{} string\\nspanning several lines\",\n" m: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - n: 219 l: " \"{f_string}\"\n" m: ^^^^^^^^^^^^^^^^^^^^^^^^ - n: 220 l: " );\n" m: ^^^^^^^^ - n: 221 l: "\n" m: ^^ - n: 222 l: " let raw_string = r\"This is a raw string with no special treatment for \\n\";\n" m: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - n: 223 l: " let raw_multiline_string = r#\"\n" m: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - n: 224 l: "This is a raw string with no special treatment for \\n\n" m: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - n: 225 l: "\"#;\n" m: ^^^^^^ - n: 226 l: " let bytes_string = b\"This is a bytes string\";\n" m: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - n: 227 l: " let raw_f_string = format!(r\"This is a raw f-string with {}\", raw_string);\n" m: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - n: 228 l: "\n" m: ^^ - n: 229 l: " let check = |s: &str| s.ends_with(\"something\");\n" m: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - n: 230 l: "\n" m: ^^ - n: 231 l: " free_func();\n" m: ^^^^^^^^^^^^^^^^^^ - n: 232 l: " func_decorator(decorated_func);\n" m: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - n: 233 l: " let mut instance = TestStruct {\n" m: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - n: 234 l: " instance_var: String::new(),\n" m: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - n: 235 l: " };\n" m: ^^^^^^^^ - n: 236 l: " instance.instance_method();\n" m: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - n: 237 l: " TestStruct::static_decorator(TestStruct::static_method)();\n" m: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - n: 238 l: " println!(\"{}\", square(5));\n" m: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - n: 239 l: " modify_nonlocal();\n" m: ^^^^^^^^^^^^^^^^^^^^^^^^ - n: 240 l: " inplace_operations();\n" m: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ - n: 241 l: " control_flow();\n" m: ^^^^^^^^^^^^^^^^^^^^^ - n: 242 l: " TestEnum::match_statement(TestEnum::VariantOne);\n" m: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - n: 243 l: "}\n" m: "^ " - n: 248 l: "fn function_with_attributes() {}\n" m: "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ " - n: 255 l: " fn some_test() {\n" m: " ^^^^^^^^^^^^^^^^^^" - n: 256 l: " assert_eq!(3, 3);\n" m: ^^^^^^^^^^^^^^^^^^^^^^^^^^^ - n: 257 l: " }\n" m: "^^^^^ " - n: 261 l: " fn test_with_rstest(#[case] i: u64) {\n" m: " ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" - n: 262 l: " assert_eq!(1337, 1337);\n" m: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - n: 263 l: " }\n" m: "^^^^^ " - n: 315 l: " fn convert(&self) -> U {\n" m: " ^^^^^^^^^^^^^^^^^^^^^^^^^^" - n: 316 l: " U::from(self.as_ref().to_owned())\n" m: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - n: 317 l: " }\n" m: "^^^^^ " - n: 339 l: " fn function_with_unsafe_block() {\n" m: " ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" - n: 340 l: " unsafe {\n" m: ^^^^^^^^^^^^^^^^^^ - n: 341 l: " // Unsafe code here\n" m: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - n: 342 l: " }\n" m: ^^^^^^^^^^^ - n: 343 l: " }\n" m: "^^^^^ "