]> git.lizzy.rs Git - rust.git/commitdiff
Auto merge of #72357 - ortem:new-dbg-pretty-printers, r=pnkfelix
authorbors <bors@rust-lang.org>
Mon, 15 Jun 2020 15:21:45 +0000 (15:21 +0000)
committerbors <bors@rust-lang.org>
Mon, 15 Jun 2020 15:21:45 +0000 (15:21 +0000)
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


No differences found