From 6a0e4ad6560e0cddf63af363e8978fa0bba89aeb Mon Sep 17 00:00:00 2001 From: Yuheng Chen Date: Thu, 10 Nov 2016 15:31:07 +0800 Subject: [PATCH] always quote empty string --- parser/src/emitter.rs | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/parser/src/emitter.rs b/parser/src/emitter.rs index 390bf53..6354c86 100644 --- a/parser/src/emitter.rs +++ b/parser/src/emitter.rs @@ -259,10 +259,14 @@ fn need_quotes(string: &str) -> bool { ':' | '{' | '}' | '[' | ']' | ',' | '&' | '*' | '#' | '?' | '|' | '-' | '<' | '>' | '=' | '!' | '%' | '@' | '`' | '\\' | '\0' ... '\x06' | '\t' | '\n' | '\r' | '\x0e' ... '\x1a' | '\x1c' ... '\x1f' => true, _ => false, } - }) || - string == "true" || string == "false" || string == "null" || string == "~" || - string.parse::().is_ok() || - string.parse::().is_ok() + }) + || string == "true" + || string == "false" + || string == "null" + || string == "~" + || string == "" + || string.parse::().is_ok() + || string.parse::().is_ok() } #[cfg(test)] @@ -346,6 +350,7 @@ a7: 你好 boolean: "true" boolean2: "false" date: "2014-12-31" +empty_string: "" exp: "12e7" field: ":" field2: "{"