MCPcopy Create free account
hub / github.com/AmrDeveloper/GQL / print

Method print

crates/gitql-cli/src/printer/json_printer.rs:11–34  ·  view source on GitHub ↗
(&self, object: &mut GitQLObject)

Source from the content-addressed store, hash-verified

9
10impl BaseOutputPrinter for JSONPrinter {
11 fn print(&self, object: &mut GitQLObject) {
12 let mut elements: Vec<serde_json::Value> = vec![];
13
14 if let Some(group) = object.groups.first() {
15 let titles = &object.titles;
16 for row in &group.rows {
17 let mut object = serde_json::Map::new();
18 for (i, value) in row.values.iter().enumerate() {
19 object.insert(
20 titles[i].to_string(),
21 serde_json::Value::String(value.literal()),
22 );
23 }
24 elements.push(serde_json::Value::Object(object));
25 }
26 }
27
28 if let Ok(json_str) = serde_json::to_string(&serde_json::Value::Array(elements)) {
29 if let Err(error) = writeln!(stdout(), "{json_str}") {
30 eprintln!("{error}");
31 std::process::exit(1);
32 }
33 }
34 }
35}

Callers

nothing calls this directly

Calls 1

literalMethod · 0.45

Tested by

no test coverage detected