Sha256: 185456ad253957fc0c9e904ff8a1135397ac991c29fa3c60f75d8d81f7463022

Contents?: true

Size: 1.84 KB

Versions: 31

Compression:

Stored size: 1.84 KB

Contents

use debugger_test::debugger_test;
use smallvec::{smallvec, SmallVec};

#[inline(never)]
fn __break() {}

#[debugger_test(
    debugger = "cdb",
    commands = r#"
.nvlist
dx sv

g

dx sv

g

dx sv
"#,
    expected_statements = r#"
sv               : { len=0x2 is_inline=true } [Type: smallvec::SmallVec<array$<i32,4> >]
    [<Raw View>]     [Type: smallvec::SmallVec<array$<i32,4> >]
    [capacity]       : 4
    [len]            : 0x2 [Type: unsigned __int64]
    [0]              : 1 [Type: int]
    [1]              : 2 [Type: int]

sv               : { len=0x5 is_inline=false } [Type: smallvec::SmallVec<array$<i32,4> >]
    [<Raw View>]     [Type: smallvec::SmallVec<array$<i32,4> >]
    [capacity]       : 0x8 [Type: unsigned __int64]
    [len]            : 0x5 [Type: unsigned __int64]
    [0]              : 5 [Type: int]
    [1]              : 2 [Type: int]
    [2]              : 3 [Type: int]
    [3]              : 4 [Type: int]
    [4]              : 5 [Type: int]

sv               : { len=0x5 is_inline=false } [Type: smallvec::SmallVec<array$<i32,4> >]
    [<Raw View>]     [Type: smallvec::SmallVec<array$<i32,4> >]
    [capacity]       : 0x8 [Type: unsigned __int64]
    [len]            : 0x5 [Type: unsigned __int64]
    [0]              : 2 [Type: int]
    [1]              : 3 [Type: int]
    [2]              : 4 [Type: int]
    [3]              : 5 [Type: int]
    [4]              : 5 [Type: int]
"#
)]
#[inline(never)]
fn test_debugger_visualizer() {
    // This SmallVec can hold up to 4 items on the stack:
    let mut sv: SmallVec<[i32; 4]> = smallvec![1, 2];
    __break();

    // Overfill the SmallVec to move its contents to the heap
    for i in 3..6 {
        sv.push(i);
    }

    // Update the contents of the first value of the SmallVec.
    sv[0] = sv[1] + sv[2];
    __break();

    // Sort the SmallVec in place.
    sv.sort();
    __break();
}

Version data entries

31 entries across 31 versions & 1 rubygems

Version Path
wasmtime-30.0.2 ./ext/cargo-vendor/smallvec-1.14.0/tests/debugger_visualizer.rs
wasmtime-29.0.0 ./ext/cargo-vendor/smallvec-1.13.2/tests/debugger_visualizer.rs
wasmtime-28.0.0 ./ext/cargo-vendor/smallvec-1.13.2/tests/debugger_visualizer.rs
wasmtime-27.0.0 ./ext/cargo-vendor/smallvec-1.13.2/tests/debugger_visualizer.rs
wasmtime-26.0.0 ./ext/cargo-vendor/smallvec-1.13.2/tests/debugger_visualizer.rs
wasmtime-25.0.2 ./ext/cargo-vendor/smallvec-1.13.2/tests/debugger_visualizer.rs
wasmtime-25.0.1 ./ext/cargo-vendor/smallvec-1.13.2/tests/debugger_visualizer.rs
wasmtime-25.0.0 ./ext/cargo-vendor/smallvec-1.13.2/tests/debugger_visualizer.rs
wasmtime-24.0.0 ./ext/cargo-vendor/smallvec-1.13.2/tests/debugger_visualizer.rs
wasmtime-23.0.2 ./ext/cargo-vendor/smallvec-1.11.2/tests/debugger_visualizer.rs
wasmtime-22.0.0 ./ext/cargo-vendor/smallvec-1.11.2/tests/debugger_visualizer.rs
wasmtime-21.0.1 ./ext/cargo-vendor/smallvec-1.11.2/tests/debugger_visualizer.rs
wasmtime-20.0.2 ./ext/cargo-vendor/smallvec-1.11.2/tests/debugger_visualizer.rs
wasmtime-20.0.0 ./ext/cargo-vendor/smallvec-1.11.2/tests/debugger_visualizer.rs
wasmtime-18.0.3 ./ext/cargo-vendor/smallvec-1.11.2/tests/debugger_visualizer.rs
wasmtime-17.0.1 ./ext/cargo-vendor/smallvec-1.11.2/tests/debugger_visualizer.rs
wasmtime-17.0.0 ./ext/cargo-vendor/smallvec-1.11.2/tests/debugger_visualizer.rs
wasmtime-16.0.0 ./ext/cargo-vendor/smallvec-1.11.2/tests/debugger_visualizer.rs
wasmtime-15.0.1 ./ext/cargo-vendor/smallvec-1.11.2/tests/debugger_visualizer.rs
wasmtime-15.0.0 ./ext/cargo-vendor/smallvec-1.11.2/tests/debugger_visualizer.rs