rustviz

所属分类:collect
开发工具:Rust
文件大小:0KB
下载次数:0
上传日期:2023-07-07 17:36:02
上 传 者sh-1993
说明:  鲁斯特维兹,,
(rustviz,,)

文件列表:
.DS_Store (6148, 2023-11-20)
.vscode/ (0, 2023-11-20)
.vscode/settings.json (59, 2023-11-20)
output (0, 2023-11-20)
print/ (0, 2023-11-20)
print/.DS_Store (8196, 2023-11-20)
print/Cargo.lock (34311, 2023-11-20)
print/Cargo.toml (1181, 2023-11-20)
print/Makefile (516, 2023-11-20)
print/aquascope/ (0, 2023-11-20)
print/aquascope/Cargo.lock (9799, 2023-11-20)
print/aquascope/Cargo.toml (1176, 2023-11-20)
print/aquascope/src/ (0, 2023-11-20)
print/aquascope/src/analysis/ (0, 2023-11-20)
print/aquascope/src/analysis/boundaries/ (0, 2023-11-20)
print/aquascope/src/analysis/boundaries/mod.rs (27378, 2023-11-20)
print/aquascope/src/analysis/boundaries/path_visitor.rs (7663, 2023-11-20)
print/aquascope/src/analysis/find_bindings.rs (1027, 2023-11-20)
print/aquascope/src/analysis/ir_mapper/ (0, 2023-11-20)
print/aquascope/src/analysis/ir_mapper/body_graph.rs (6896, 2023-11-20)
print/aquascope/src/analysis/ir_mapper/mir_locations.rs (1567, 2023-11-20)
print/aquascope/src/analysis/ir_mapper/mod.rs (10042, 2023-11-20)
print/aquascope/src/analysis/ir_mapper/post_dominators.rs (4632, 2023-11-20)
print/aquascope/src/analysis/mod.rs (15643, 2023-11-20)
print/aquascope/src/analysis/permissions/ (0, 2023-11-20)
print/aquascope/src/analysis/permissions/context.rs (16730, 2023-11-20)
print/aquascope/src/analysis/permissions/flow.rs (15433, 2023-11-20)
print/aquascope/src/analysis/permissions/mod.rs (5420, 2023-11-20)
print/aquascope/src/analysis/permissions/output.rs (18443, 2023-11-20)
print/aquascope/src/analysis/permissions/utils.rs (7481, 2023-11-20)
print/aquascope/src/analysis/scrape_hir.rs (1163, 2023-11-20)
print/aquascope/src/analysis/stepper/ (0, 2023-11-20)
print/aquascope/src/analysis/stepper/hir_steps.rs (35345, 2023-11-20)
print/aquascope/src/analysis/stepper/mod.rs (10086, 2023-11-20)
print/aquascope/src/analysis/stepper/segmented_mir.rs (31799, 2023-11-20)
print/aquascope/src/analysis/stepper/table_builder.rs (13269, 2023-11-20)
print/aquascope/src/bin/ (0, 2023-11-20)
... ...

# rustviz_draft * Usage: * cd print * cargo install --path . * cd test-crate * touch src/lib.rs * cargo print-all-items > ../../output * Issues: * Our primary goal is to support the basic examples in the rustviz tutorial. However, as there are much more possible syntax that will appear in a snippet of rust code, you might find some of them interesting which haven't been analyzed. Feel free to bring up new issues. ## Installation ```sh cargo install mdbook-aquascope --locked --version 0.3.0 rustup toolchain install nightly-2023-08-25 -c rust-src rustc-dev llvm-tools-preview miri cargo +nightly-2023-08-25 install aquascope_front --git https://github.com/cognitive-engineering-lab/aquascope --tag v0.3.0 --locked cargo +nightly-2023-08-25 miri setup ``` If you run into an error like this: ```sh error[E0658]: use of unstable library feature 'is_terminal' --> /home/fanbao/.cargo/registry/src/index.crates.io-6f17d22bba15001f/anstream-0.6.4/src/stream.rs:119:9 | 119 | std::io::IsTerminal::is_terminal(self) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | = note: see issue #98070 for more information = help: add `#![feature(is_terminal)]` to the crate attributes to enable For more information about this error, try `rustc --explain E0658`. error: could not compile `anstream` (lib) due to 5 previous errors ``` go to the directory `/home/fanbao/.cargo/registry/src/index.crates.io-6f17d22bba15001f/anstream-0.6.4/src/`. find the main file, typically named lib.rs, and add `#![feature(is_terminal)]` at the top. ## Progress | Event | State | | ------------------------------ | ------------------------------------------------------------ | | `Bind(a)` | Done: rhs is a lit | | `Copy(a->b)` | ... | | `Move(a->b)` | Done:
In `Let` and `Assign`: lhs is a path, rhs is function/path/`String::from`.
Function call: arguments with ownership
Ongoing: rhs is binary(+-), method call -Chenglin
Todo: function return(cur method: path that can be directly visited) | | `StaticBorrow(a->b)` | Done: lhs is a path, rhs `&` | | `MutableBorrow(a->b)` | Done: lhs is a path, rhs `&mut` | | `StaticDie(a->b)` | Done: life time record the last time the variable occur
Todo: `->b` who is b? | | `MutableDie(a->b)` | ... | | `PassByStaticReference(a->b)` | Done: function argument with only read permission required or `&` or `println` | | `PassByMutableReference(a->b)` | Done: function argument with only write and read permission required or `&` | | `GoOutOfScope(a)` | Done: function ends
Todo: (nested) block | | `InitRefParam(a)` | Done: parameter whose type is not reference
In `fn visit_param` | | `InitOwnerParam(a)` | ... |

近期下载者

相关文件


收藏者