It uses tabled
as a rendering backend.
Add the library to a dependency list.
[dependencies]
json_to_table = "0.6"
The main and only function you shall use to build a table is json_to_table
.
Example | Result |
---|---|
use json_to_table::json_to_table;
use serde_json::json;
fn main() {
let value = json!(
[
{
"name": "Aleix Melon",
"id": "E00245",
"role": ["Dev", "DBA"],
"age": 23,
"doj": "11-12-2019",
"married": false,
"address": {
"street": "32, Laham St.",
"city": "Innsbruck",
"country": "Austria"
},
"referred-by": "E0012"
},
]
);
let table = json_to_table(&value).to_string();
println!("{}", table)
} |
|
You can also build a table in a squash mode.
Example | Result |
---|---|
use json_to_table::json_to_table;
use serde_json::json;
fn main() {
let value = json!(
[
{
"name": "Aleix Melon",
"id": "E00245",
"role": ["Dev", "DBA"],
"age": 23,
"doj": "11-12-2019",
"married": false,
"address": {
"street": "32, Laham St.",
"city": "Innsbruck",
"country": "Austria"
},
"referred-by": "E0012"
},
]
);
let table = json_to_table(&value).collapse().to_string();
println!("{}", table)
} |
|
You can chose how to build an Array
and Object
via Orientation
.
Example | Result |
---|---|
use json_to_table::{json_to_table, Orientation};
use serde_json::json;
fn main() {
let value = json!(
[
{
"name": "Aleix Melon",
"role": ["Dev", "DBA"],
"age": 23,
"referred-by": "E0012"
},
{
"name": "Aleix Melon",
"role": ["DBA"],
"age": 24,
"referred-by": "E0012"
},
]
);
let table = json_to_table(&value)
.object_orientation(Orientation::Row)
.to_string();
println!("{}", table)
} |
|