From 7e72c2a5157b47712708c1152e4eef19bce38e1e Mon Sep 17 00:00:00 2001 From: Emery Hemingway Date: Fri, 28 Oct 2022 13:41:03 -0500 Subject: [PATCH] =?UTF-8?q?Parser:=20fix=20escaping=20in=20#"=E2=80=A6"?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/preserves/pegs.nim | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/preserves/pegs.nim b/src/preserves/pegs.nim index 2afdbe1..bfdc527 100644 --- a/src/preserves/pegs.nim +++ b/src/preserves/pegs.nim @@ -40,7 +40,7 @@ grammar "Preserves": exp <- 'e' * ?('-'|'+') * +Digit flt <- int * ((frac * exp) | frac | exp) - String <- '"' * *(escaped | (utf8.any - '"')) * '"' + String <- '"' * *(escape * escaped | (utf8.any - '"')) * '"' ByteString <- charByteString | hexByteString | b64ByteString charByteString <- '#' * >('"' * >(*binchar) * '"') @@ -67,7 +67,7 @@ grammar "Preserves": unescaped <- utf8.any - escaped unicodeEscaped <- 'u' * Xdigit[4] - escaped <- '\\' * ({'{', '"', '|', '\\', 'b', 'f', 'n', 'r', 't'} | unicodeEscaped) + escaped <- {'{', '"', '|', '\\', 'b', 'f', 'n', 'r', 't'} | unicodeEscaped escape <- '\\' ws <- *(' ' | '\t' | '\r' | '\n' | ',')