B
Size: a a a
B
SS
B
B
VS
EG
&string[if bounds[0] == 0 { bounds[0] } else { bounds[0] + 1 }..bounds[1]]
EG
struct Line<'a> {
offset: usize,
content: &'a str
}
p
EG
EG
EG
0 : индексы всех ньюлайнов : string.len()
, взял .windows(2)
и сказал, что каждая строчка идёт от первого элемента тупла до последнегоEG
EG
G
EG
G
EG
>>> def f(): g()
...
>>> def g(): h()
...
>>> def h(): e()
...
>>> f()
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "<stdin>", line 1, in f
File "<stdin>", line 1, in g
File "<stdin>", line 1, in h
NameError: name 'e' is not defined
>>>
p
EG
panic!()
прямо в мейне:thread 'main' panicked at 'panik', test.rs:2:5
stack backtrace:
0: backtrace::backtrace::libunwind::trace
at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.40/src/backtrace/libunwind.rs:88
1: backtrace::backtrace::trace_unsynchronized
at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.40/src/backtrace/mod.rs:66
2: std::sys_common::backtrace::_print_fmt
at src/libstd/sys_common/backtrace.rs:84
3: <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt
at src/libstd/sys_common/backtrace.rs:61
4: core::fmt::write
at src/libcore/fmt/mod.rs:1025
5: std::io::Write::write_fmt
at src/libstd/io/mod.rs:1426
6: std::sys_common::backtrace::_print
at src/libstd/sys_common/backtrace.rs:65
7: std::sys_common::backtrace::print
at src/libstd/sys_common/backtrace.rs:50
8: std::panicking::default_hook::{{closure}}
at src/libstd/panicking.rs:193
9: std::panicking::default_hook
at src/libstd/panicking.rs:210
10: std::panicking::rust_panic_with_hook
at src/libstd/panicking.rs:471
11: std::panicking::begin_panic
12: test::main
13: std::rt::lang_start::{{closure}}
G
>>> def f(): g()
...
>>> def g(): h()
...
>>> def h(): e()
...
>>> f()
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "<stdin>", line 1, in f
File "<stdin>", line 1, in g
File "<stdin>", line 1, in h
NameError: name 'e' is not defined
>>>