[−][src]Crate partialdebug
Derive Debug for types where not all fields implement Debug.
This relies on specialization and thus requires nightly.
Non Exhaustive
Requires the debug_non_exhaustive
feature.
Only available for structs with named fields.
#![feature(debug_non_exhaustive)] use partialdebug::non_exhaustive::PartialDebug; #[derive(PartialDebug)] struct Dog { legs: usize, eyes: usize, dna: DNA, } assert_eq!(format!("{:?}", Dog::new()), "Dog { legs: 4, eyes: 2, .. }");
Placeholder with Type Info
use partialdebug::placeholder::PartialDebug; #[derive(PartialDebug)] struct Dog { legs: usize, eyes: usize, dna: DNA, } assert_eq!(format!("{:?}", Dog::new()), "Dog { legs: 4, eyes: 2, dna: DNA }");
Placeholder with Custom Text
use partialdebug::placeholder::PartialDebug; #[derive(PartialDebug)] #[debug_placeholder = "Unknown"] struct Dog { legs: usize, eyes: usize, dna: DNA, } assert_eq!(format!("{:?}", Dog::new()), "Dog { legs: 4, eyes: 2, dna: Unknown }");
Modules
non_exhaustive | The non exhaustive version of |
placeholder | The placeholder version of |
Structs
Placeholder | Placeholder struct for types that do not implement Debug |
Traits
AsDebug | Specialized trait used to distinguish between types that implement Debug and one's that don't. |