From 8dac1144b1bf3dfd6aa25694534b1ac764204c1b Mon Sep 17 00:00:00 2001 From: Phodal Huang Date: Thu, 27 Aug 2020 13:02:21 +0800 Subject: [PATCH] feat: change behavior for demo code --- scie-grammar/.gitignore | 1 + scie-grammar/src/grammar/grammar/mod.rs | 9 +++++---- 2 files changed, 6 insertions(+), 4 deletions(-) create mode 100644 scie-grammar/.gitignore diff --git a/scie-grammar/.gitignore b/scie-grammar/.gitignore new file mode 100644 index 0000000..052aad0 --- /dev/null +++ b/scie-grammar/.gitignore @@ -0,0 +1 @@ +program.json diff --git a/scie-grammar/src/grammar/grammar/mod.rs b/scie-grammar/src/grammar/grammar/mod.rs index a0b055c..3e70ad9 100644 --- a/scie-grammar/src/grammar/grammar/mod.rs +++ b/scie-grammar/src/grammar/grammar/mod.rs @@ -119,9 +119,6 @@ impl Grammar { RuleFactory::get_compiled_rule_id(based.clone(), self, repository); } - let j = serde_json::to_string(&self.rule_id2desc).unwrap(); - println!("{}", serde_json::to_string_pretty(&j).unwrap()); - let mut is_first_line: bool = false; if let None = prev_state { is_first_line = true @@ -212,7 +209,7 @@ impl IRuleRegistry for Grammar { #[cfg(test)] mod tests { use std::fs::File; - use std::io::Read; + use std::io::{Read, Write}; use std::path::Path; use crate::grammar::grammar::Grammar; @@ -240,5 +237,9 @@ int main() { for line in c_code.lines() { grammar.tokenize_line(String::from(line), None) } + + let j = serde_json::to_string(&grammar.rule_id2desc).unwrap(); + let mut file = File::create("program.json").unwrap(); + file.write_all(j.as_bytes()); } } -- GitLab