From fa46dd181d3fc37d43847aa253176c88d3d1e640 Mon Sep 17 00:00:00 2001 From: Josh Goebel Date: Wed, 2 Dec 2020 14:49:14 -0500 Subject: [PATCH] fix(reasonml) fix poly backtracking issue - fix typo/bug with using `s` vs `\s` (string vs regex mistake) - simply `[pattern]?[pattern]?` to just `[pattern]{0,2}` - fix ambiguous `\s*` poly issues --- src/languages/reasonml.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/languages/reasonml.js b/src/languages/reasonml.js index b67c568712..648d621cb0 100644 --- a/src/languages/reasonml.js +++ b/src/languages/reasonml.js @@ -23,8 +23,8 @@ export default function(hljs) { const RE_MODULE_IDENT = '`?[A-Z$_][0-9a-zA-Z$_]*'; const RE_PARAM_TYPEPARAM = '\'?[a-z$_][0-9a-z$_]*'; - const RE_PARAM_TYPE = '\s*:\s*[a-z$_][0-9a-z$_]*(\(\s*(' + RE_PARAM_TYPEPARAM + '\s*(,' + RE_PARAM_TYPEPARAM + ')*)?\s*\))?'; - const RE_PARAM = RE_IDENT + '(' + RE_PARAM_TYPE + ')?(' + RE_PARAM_TYPE + ')?'; + const RE_PARAM_TYPE = '\\s*:\\s*[a-z$_][0-9a-z$_]*(\\(\\s*(' + RE_PARAM_TYPEPARAM + '\\s*(,' + RE_PARAM_TYPEPARAM + '\\s*)*)?\\))?'; + const RE_PARAM = RE_IDENT + '(' + RE_PARAM_TYPE + '){0,2}'; const RE_OPERATOR = "(" + orReValues([ '||', '++',