From 4b4ffb71fddbadc1d22e86bd1dfb2ddd69b8a6a1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kat=20March=C3=A1n?= Date: Sun, 13 Dec 2020 17:28:24 -0800 Subject: [PATCH] 0 is an integer (thanks, tef!) --- README.md | 2 +- src/parser.rs | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index da91f85..8b05586 100644 --- a/README.md +++ b/README.md @@ -127,7 +127,7 @@ number := decimal | hex | octal | binary decimal := integer ('.' [0-9]+)? exponent? exponent := ('e' | 'E') integer -integer := sign? [1-9] [0-9_]* +integer := sign? [0-9] [0-9_]* sign := '+' | '-' hex := '0x' [0-9a-fA-F] [0-9a-fA-F_]* diff --git a/src/parser.rs b/src/parser.rs index 280b149..66c1fea 100644 --- a/src/parser.rs +++ b/src/parser.rs @@ -297,6 +297,7 @@ mod tests { #[test] fn test_integer() { + assert_eq!(integer("0"), Ok(("", 0))); assert_eq!(integer("0123456789"), Ok(("", 123456789))); assert_eq!(integer("0123_456_789"), Ok(("", 123456789))); assert_eq!(integer("0123_456_789_"), Ok(("", 123456789)));