Skip to content

A derive macro for debugging code with custom attributes supported to enhance debugging output

Notifications You must be signed in to change notification settings

Levi0804/debug-macro

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Custom Debug Macro

Example Usage:

use debug_derive::CustomDebug;

#[derive(CustomDebug)]
pub struct Field {
    name: &'static str,
    #[debug = "0b{:08b}"]
    bitmask: u8,
}

fn main() {
    let f = Field {
        name: "F",
        bitmask: 0b00011100,
    };
    
    let debug = format!("{:?}", f);
    let expected = r#"Field { name: "F", bitmask: 0b00011100 }"#;

    assert_eq!(debug, expected);

    println!("{:?}", debug);
}

About

A derive macro for debugging code with custom attributes supported to enhance debugging output

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages