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 855a541..43067b0 100644 Binary files a/pkg/rudus_bg.wasm and b/pkg/rudus_bg.wasm differ 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_")