"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("./Utility.js");exports.line=1;exports.column=1;exports.length=0;exports.position=0;exports.character=0;exports.characters="";function d(e,c,u,h,l,f,m,p){return{value:e,root:c,parent:u,type:h,props:l,children:f,line:exports.line,column:exports.column,length:m,return:"",siblings:p}}function b(){return exports.character}function k(){return exports.character=exports.position>0?a.charat(exports.characters,--exports.position):0,exports.column--,exports.character===10&&(exports.column=1,exports.line--),exports.character}function r(){return exports.character=exports.position<exports.length?a.charat(exports.characters,exports.position++):0,exports.column++,exports.character===10&&(exports.column=1,exports.line++),exports.character}function t(){return a.charat(exports.characters,exports.position)}function s(){return exports.position}function n(e,c){return a.substr(exports.characters,e,c)}function i(e){switch(e){case 0:case 9:case 10:case 13:case 32:return 5;case 33:case 43:case 44:case 47:case 62:case 64:case 126:case 59:case 123:case 125:return 4;case 58:return 3;case 34:case 39:case 40:case 91:return 2;case 41:case 93:return 1}return 0}function g(e){return exports.line=exports.column=1,exports.length=a.strlen(exports.characters=e),exports.position=0,[]}function w(e){return exports.characters="",e}function v(e){return a.trim(n(exports.position-1,o(e===91?e+2:e===40?e+1:e)))}function x(e){for(;(exports.character=t())&&exports.character<33;)r();return i(e)>2||i(exports.character)>3?"":" "}function S(e,c){for(;--c&&r()&&!(exports.character<48||exports.character>102||exports.character>57&&exports.character<65||exports.character>70&&exports.character<97););return n(e,s()+(c<6&&t()==32&&r()==32))}function o(e){for(;r();)switch(exports.character){case e:return exports.position;case 34:case 39:e!==34&&e!==39&&o(exports.character);break;case 40:e===41&&o(e);break;case 92:r();break}return exports.position}function j(e,c){for(;r()&&e+exports.character!==57;)if(e+exports.character===84&&t()===47)break;return"/*"+n(c,exports.position-1)+"*"+a.from(e===47?e:r())}function q(e){for(;!i(t());)r();return n(e,exports.position)}exports.alloc=g;exports.caret=s;exports.char=b;exports.commenter=j;exports.dealloc=w;exports.delimit=v;exports.delimiter=o;exports.escaping=S;exports.identifier=q;exports.next=r;exports.node=d;exports.peek=t;exports.prev=k;exports.slice=n;exports.token=i;exports.whitespace=x;
