Simple Struct Descriptor

Crates.io Crates.io License Build Status Coverage Status

Easy pretty print your Rust struct into single element or table

Example

```rust use descriptor::{objectdescribetostring, tabledescribetostring, Descriptor};

[derive(Descriptor)]

struct User { name: String, age: i32, address: Address, }

[derive(Descriptor)]

struct Address { street: String, town: String, }

fn main() { let user1 = User { name: "Adrien".tostring(), age: 32, address: Address { street: "Main street".tostring(), town: "NY".tostring() } }; let user2 = User { name: "Corentin".tostring(), age: 40, address: Address { street: "10 rue de la paix".tostring(), town: "Paris".tostring() } }; let description = objectdescribeto_string(&user1).unwrap();

assert_eq!(r#"
 Name:    Adrien
 Age:     32
 Address:
   Street: Main street
   Town:   NY
 "#, description);

let table = table_describe_to_string(&vec![user1, user2]).unwrap();

assert_eq!(r#"
 NAME     AGE ADDRESS.STREET    ADDRESS.TOWN
 Adrien   32  Main street       NY
 Corentin 40  10 rue de la paix Paris
 "#, format!("\n{}", table));

} ```