From e4d9dcd11053a4c0d42627df7429463b9e3f6df2 Mon Sep 17 00:00:00 2001 From: Scott Richmond Date: Wed, 2 Jul 2025 19:44:12 -0400 Subject: [PATCH] make an attempt at fixing string escaping --- pkg/rudus.js | 2 +- pkg/rudus_bg.wasm | 4 ++-- src/lexer.rs | 9 +++++---- 3 files changed, 8 insertions(+), 7 deletions(-) diff --git a/pkg/rudus.js b/pkg/rudus.js index 284525a..0c725ac 100644 --- a/pkg/rudus.js +++ b/pkg/rudus.js @@ -425,7 +425,7 @@ function __wbg_get_imports() { _assertBoolean(ret); return ret; }; - imports.wbg.__wbindgen_closure_wrapper7779 = function() { return logError(function (arg0, arg1, arg2) { + imports.wbg.__wbindgen_closure_wrapper7777 = function() { return logError(function (arg0, arg1, arg2) { const ret = makeMutClosure(arg0, arg1, 347, __wbg_adapter_22); return ret; }, arguments) }; diff --git a/pkg/rudus_bg.wasm b/pkg/rudus_bg.wasm index b11cb46..693bec8 100644 --- a/pkg/rudus_bg.wasm +++ b/pkg/rudus_bg.wasm @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:3ab783845b85c139cf98dd3e5373be1dfd69a703bc6be923271642ec088ce75e -size 16115704 +oid sha256:d09bcf86441f0337a8570e05c84decef001690c1dc5d6439a83cd8b771798631 +size 16114766 diff --git a/src/lexer.rs b/src/lexer.rs index d89ea1d..9d2ce40 100644 --- a/src/lexer.rs +++ b/src/lexer.rs @@ -68,10 +68,11 @@ pub fn lexer( let keyword = just(':').ignore_then(word).map(Token::Keyword); - let string = just('"') - .ignore_then(none_of("\"").repeated().to_slice()) - .then_ignore(just('"')) - .map(Token::String); + let string = none_of("\\\"") + .repeated() + .to_slice() + .map(Token::String) + .delimited_by(just('"'), just('"')); // todo: hard code these as type constructors let punctuation = one_of(",=[]{}()>;\n_")