firedbg-rust-debugger 1.74.1

FireDBG Debugger Engine for Rust
Documentation
struct Wrapper<T>(T);

struct RefWrapper<'a, T>(&'a T);

fn borrow<T: ?Sized>(v: &T) -> &T {
    &v
}

fn slice<T>(v: &[T], s: usize, e: usize) -> &[T] {
    &v[s..e]
}

fn u8() -> [u8; 10] {
    [1,2,3,4,5,6,7,8,9,10]
}

fn i8() -> [i8; 1] {
    [1]
}

fn u16() -> [u16; 6] {
    [1,2,3,4,5,6]
}

fn i16() -> [i16; 1] {
    [1]
}

fn u32() -> [u32; 4] {
    [1,2,3,4]
}

fn i32() -> [i32; 1] {
    [1]
}

fn u64() -> [u64; 3] {
    [1,2,3]
}

fn i64() -> [i64; 1] {
    [1]
}

fn u128() -> [u128; 3] {
    [1,2,3]
}

fn i128() -> [i128; 1] {
    [1]
}

fn f32() -> [f32; 3] {
    [1.0,2.0,3.0]
}

fn f64() -> [f64; 1] {
    [1.0]
}

fn usize() -> [usize; 3] {
    [1,2,3]
}

fn isize() -> [isize; 1] {
    [1]
}

fn str() -> [&'static str; 3] {
    ["1","2","3"]
}

fn wrapped() -> Wrapper<[u8; 9]> {
    Wrapper([9,8,7,6,5,4,3,2,1])
}

fn wrapped_ref(v: &[u8; 9]) -> RefWrapper<[u8; 9]> {
    RefWrapper(v)
}

fn multi() -> [[u8; 3]; 3] {
    [[1,2,3],[4,5,6],[7,8,9]]
}

fn multi_w() -> Wrapper<[[u8; 3]; 3]> {
    Wrapper([[9,8,7],[6,5,4],[3,2,1]])
}

fn multi_ref_w(v: &[[u8; 3]; 3]) -> RefWrapper<[[u8; 3]; 3]> {
    RefWrapper(v)
}

fn main() {
    let _u8 = u8(); borrow(&_u8); borrow(&_u8[1.._u8.len()-1]);
    let _i8 = i8(); borrow(&_i8); borrow(&_i8[..]);
    let _u16 = u16(); borrow(&_u16); borrow(&_u16[.._u16.len()-1]);
    let _i16 = i16(); borrow(&_i16); borrow(&_i16[1..]);
    let _u32 = u32(); borrow(&_u32); borrow(&_u32[2..=2]);
    let _i32 = i32(); borrow(&_i32); borrow(&_i32[1..]);
    let _u64 = u64(); borrow(&_u64); borrow(&_u64[1..]);
    let _i64 = i64(); borrow(&_i64); borrow(&_i64[1..]);
    let _u128 = u128(); borrow(&_u128); borrow(&_u128[1..]);
    let _i128 = i128(); borrow(&_i128); borrow(&_i128[1..]);
    let _f32 = f32(); borrow(&_f32); borrow(&_f32[1..]);
    let _f64 = f64(); borrow(&_f64); borrow(&_f64[1..]);
    let _usize = usize(); borrow(&_usize); borrow(&_usize[1..]);
    let _isize = isize(); borrow(&_isize); borrow(&_isize[1..]);
    let _str = str(); borrow(&_str); borrow(&_str[1..]);
    let _wrapped = wrapped(); borrow(&_wrapped);
    let _wrapped_ref = wrapped_ref(&_wrapped.0);
    let _multi = multi(); borrow(&_multi);
    let _multi_w = multi_w(); borrow(&_multi_w);
    let _multi_ref_w = multi_ref_w(&_multi_w.0);
    let _vec = vec![1,2,3,4,5,6,7,8];
    borrow(&_vec[1..2]);
    slice(&_vec, 1, 2);
    slice(&_u8, 0, 0);
}