f315c35a77
Implement new gdb/lldb pretty-printers Reopened #60826 This PR replaces current gdb and lldb pretty-printers with new ones that were originally written for [IntelliJ Rust](https://github.com/intellij-rust/intellij-rust/tree/master/prettyPrinters). The current state of lldb pretty-printers is poor, because [they don't use synthetic children](https://github.com/rust-lang/rust/issues/55586#issuecomment-436610063). When I started to reimplement lldb pretty-printers with synthetic children support, I've found current version strange and hard to support. I think `debugger_pretty_printers_common.py` is overkill, so I got rid of it. The new pretty-printers have to support all types supported by current pretty-printers, and also support `Rc`, `Arc`, `Cell`, `Ref`, `RefCell`, `RefMut`, `HashMap`, `HashSet`. Fixes #56252 |
||
---|---|---|
.. | ||
bootstrap | ||
build_helper | ||
ci | ||
doc | ||
etc | ||
liballoc | ||
libcore | ||
libpanic_abort | ||
libpanic_unwind | ||
libproc_macro | ||
libprofiler_builtins | ||
librustc_apfloat | ||
librustc_arena | ||
librustc_ast | ||
librustc_ast_lowering | ||
librustc_ast_passes | ||
librustc_ast_pretty | ||
librustc_attr | ||
librustc_builtin_macros | ||
librustc_codegen_llvm | ||
librustc_codegen_ssa | ||
librustc_data_structures | ||
librustc_driver | ||
librustc_error_codes | ||
librustc_errors | ||
librustc_expand | ||
librustc_feature | ||
librustc_fs_util | ||
librustc_graphviz | ||
librustc_hir | ||
librustc_hir_pretty | ||
librustc_incremental | ||
librustc_index | ||
librustc_infer | ||
librustc_interface | ||
librustc_lexer | ||
librustc_lint | ||
librustc_llvm | ||
librustc_macros | ||
librustc_metadata | ||
librustc_middle | ||
librustc_mir | ||
librustc_mir_build | ||
librustc_parse | ||
librustc_parse_format | ||
librustc_passes | ||
librustc_plugin_impl | ||
librustc_privacy | ||
librustc_query_system | ||
librustc_resolve | ||
librustc_save_analysis | ||
librustc_serialize | ||
librustc_session | ||
librustc_span | ||
librustc_symbol_mangling | ||
librustc_target | ||
librustc_trait_selection | ||
librustc_traits | ||
librustc_ty | ||
librustc_typeck | ||
librustdoc | ||
libstd | ||
libterm | ||
libtest | ||
libunwind | ||
llvm-project@02e0d7fa55 | ||
rtstartup | ||
rustc | ||
rustllvm | ||
stdarch@45340c0e2f | ||
test | ||
tools | ||
README.md | ||
stage0.txt |
This directory contains the source code of the rust project, including:
rustc
and its testslibstd
- Various submodules for tools, like rustdoc, rls, etc.
For more information on how various parts of the compiler work, see the rustc dev guide.