| 61 | For details See: https://chevrotain.io/docs/guide/resolving_lexer_errors.html#CUSTOM_OPTIMIZE`),G=!1;return b},[])}),{emptyGroups:C,patternIdxToConfig:k,charCodeToPatternIdxToConfig:M,hasCustom:i,canBeOptimized:G}}function hm(t,e){let r=[],n=tE(t);r=r.concat(n.errors);let i=rE(n.valid),s=i.valid;return r=r.concat(i.errors),r=r.concat(eE(s)),r=r.concat(uE(s)),r=r.concat(fE(s,e)),r=r.concat(dE(s)),r}function eE(t){let e=[],r=ct(t,n=>tr(n[Qn]));return e=e.concat(iE(r)),e=e.concat(oE(r)),e=e.concat(cE(r)),e=e.concat(lE(r)),e=e.concat(sE(r)),e}function tE(t){let e=ct(t,i=>!q(i,Qn)),r=I(e,i=>({message:"Token Type: ->"+i.name+"<- missing static 'PATTERN' property",type:Le.MISSING_PATTERN,tokenTypes:[i]})),n=wn(t,e);return{errors:r,valid:n}}function rE(t){let e=ct(t,i=>{let s=i[Qn];return!tr(s)&&!mr(s)&&!q(s,"exec")&&!mt(s)}),r=I(e,i=>({message:"Token Type: ->"+i.name+"<- static 'PATTERN' can only be a RegExp, a Function matching the {CustomPatternMatcherFunc} type or an Object matching the {ICustomPattern} interface.",type:Le.INVALID_PATTERN,tokenTypes:[i]})),n=wn(t,e);return{errors:r,valid:n}}var nE=/[^\\][$]/;function iE(t){class e extends xr{constructor(){super(...arguments),this.found=!1}visitEndAnchor(s){this.found=!0}}let r=ct(t,i=>{let s=i.PATTERN;try{let a=Gi(s),o=new e;return o.visit(a),o.found}catch(a){return nE.test(s.source)}});return I(r,i=>({message:`Unexpected RegExp Anchor Error: |
| 63 | See chevrotain.io/docs/guide/resolving_lexer_errors.html#ANCHORS for details.`,type:Le.EOI_ANCHOR_FOUND,tokenTypes:[i]}))}function sE(t){let e=ct(t,n=>n.PATTERN.test(""));return I(e,n=>({message:"Token Type: ->"+n.name+"<- static 'PATTERN' must not match an empty string",type:Le.EMPTY_MATCH_PATTERN,tokenTypes:[n]}))}var aE=/[^\\[][\^]|^\^/;function oE(t){class e extends xr{constructor(){super(...arguments),this.found=!1}visitStartAnchor(s){this.found=!0}}let r=ct(t,i=>{let s=i.PATTERN;try{let a=Gi(s),o=new e;return o.visit(a),o.found}catch(a){return aE.test(s.source)}});return I(r,i=>({message:`Unexpected RegExp Anchor Error: |