tree-sitter-yaml/docs/assets/web-tree-sitter-0.19.3/tree-sitter.js
2021-04-18 14:25:59 +08:00

2 lines
49 KiB
JavaScript

var Module=void 0!==Module?Module:{};!function(e,t){"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?module.exports=t():window.TreeSitter=t()}(0,function(){var e,t={};for(e in Module)Module.hasOwnProperty(e)&&(t[e]=Module[e]);var n,r,s=[],o="./this.program",_=function(e,t){throw t},a=!1,u=!1;a="object"==typeof window,u="function"==typeof importScripts,n="object"==typeof process&&"object"==typeof process.versions&&"string"==typeof process.versions.node,r=!a&&!n&&!u;var i,l,d,c,m,f="";n?(f=u?require("path").dirname(f)+"/":__dirname+"/",i=function(e,t){return c||(c=require("fs")),m||(m=require("path")),e=m.normalize(e),c.readFileSync(e,t?null:"utf8")},d=function(e){var t=i(e,!0);return t.buffer||(t=new Uint8Array(t)),N(t.buffer),t},process.argv.length>1&&(o=process.argv[1].replace(/\\/g,"/")),s=process.argv.slice(2),"undefined"!=typeof module&&(module.exports=Module),_=function(e){process.exit(e)},Module.inspect=function(){return"[Emscripten Module object]"}):r?("undefined"!=typeof read&&(i=function(e){return read(e)}),d=function(e){var t;return"function"==typeof readbuffer?new Uint8Array(readbuffer(e)):(N("object"==typeof(t=read(e,"binary"))),t)},"undefined"!=typeof scriptArgs?s=scriptArgs:void 0!==arguments&&(s=arguments),"function"==typeof quit&&(_=function(e){quit(e)}),"undefined"!=typeof print&&("undefined"==typeof console&&(console={}),console.log=print,console.warn=console.error="undefined"!=typeof printErr?printErr:print)):(a||u)&&(u?f=self.location.href:"undefined"!=typeof document&&document.currentScript&&(f=document.currentScript.src),f=0!==f.indexOf("blob:")?f.substr(0,f.lastIndexOf("/")+1):"",i=function(e){var t=new XMLHttpRequest;return t.open("GET",e,!1),t.send(null),t.responseText},u&&(d=function(e){var t=new XMLHttpRequest;return t.open("GET",e,!1),t.responseType="arraybuffer",t.send(null),new Uint8Array(t.response)}),l=function(e,t,n){var r=new XMLHttpRequest;r.open("GET",e,!0),r.responseType="arraybuffer",r.onload=function(){200==r.status||0==r.status&&r.response?t(r.response):n()},r.onerror=n,r.send(null)});Module.print||console.log.bind(console);var p=Module.printErr||console.warn.bind(console);for(e in t)t.hasOwnProperty(e)&&(Module[e]=t[e]);t=null,Module.arguments&&(s=Module.arguments),Module.thisProgram&&(o=Module.thisProgram),Module.quit&&(_=Module.quit);var h=16;var g,w=[];function M(e,t){if(!g){g=new WeakMap;for(var n=0;n<H.length;n++){var r=H.get(n);r&&g.set(r,n)}}if(g.has(e))return g.get(e);var s=function(){if(w.length)return w.pop();try{H.grow(1)}catch(e){if(!(e instanceof RangeError))throw e;throw"Unable to grow wasm table. Set ALLOW_TABLE_GROWTH."}return H.length-1}();try{H.set(s,e)}catch(n){if(!(n instanceof TypeError))throw n;var o=function(e,t){if("function"==typeof WebAssembly.Function){for(var n={i:"i32",j:"i64",f:"f32",d:"f64"},r={parameters:[],results:"v"==t[0]?[]:[n[t[0]]]},s=1;s<t.length;++s)r.parameters.push(n[t[s]]);return new WebAssembly.Function(r,e)}var o=[1,0,1,96],_=t.slice(0,1),a=t.slice(1),u={i:127,j:126,f:125,d:124};for(o.push(a.length),s=0;s<a.length;++s)o.push(u[a[s]]);"v"==_?o.push(0):o=o.concat([1,u[_]]),o[1]=o.length-2;var i=new Uint8Array([0,97,115,109,1,0,0,0].concat(o,[2,7,1,1,101,1,102,0,0,7,5,1,1,102,0,0])),l=new WebAssembly.Module(i);return new WebAssembly.Instance(l,{e:{f:e}}).exports.f}(e,t);H.set(s,o)}return g.set(e,s),s}var y,b=function(e){e},E=Module.dynamicLibraries||[];Module.wasmBinary&&(y=Module.wasmBinary);var v,I=Module.noExitRuntime||!0;function S(e,t,n,r){switch("*"===(n=n||"i8").charAt(n.length-1)&&(n="i32"),n){case"i1":case"i8":C[e>>0]=t;break;case"i16":q[e>>1]=t;break;case"i32":T[e>>2]=t;break;case"i64":ce=[t>>>0,(de=t,+Math.abs(de)>=1?de>0?(0|Math.min(+Math.floor(de/4294967296),4294967295))>>>0:~~+Math.ceil((de-+(~~de>>>0))/4294967296)>>>0:0)],T[e>>2]=ce[0],T[e+4>>2]=ce[1];break;case"float":W[e>>2]=t;break;case"double":Z[e>>3]=t;break;default:se("invalid type for setValue: "+n)}}function A(e,t,n){switch("*"===(t=t||"i8").charAt(t.length-1)&&(t="i32"),t){case"i1":case"i8":return C[e>>0];case"i16":return q[e>>1];case"i32":case"i64":return T[e>>2];case"float":return W[e>>2];case"double":return Z[e>>3];default:se("invalid type for getValue: "+t)}return null}"object"!=typeof WebAssembly&&se("no native wasm support detected");var x=!1;function N(e,t){e||se("Assertion failed: "+t)}var P=1;var k,C,R,q,T,W,Z,F="undefined"!=typeof TextDecoder?new TextDecoder("utf8"):void 0;function L(e,t,n){for(var r=t+n,s=t;e[s]&&!(s>=r);)++s;if(s-t>16&&e.subarray&&F)return F.decode(e.subarray(t,s));for(var o="";t<s;){var _=e[t++];if(128&_){var a=63&e[t++];if(192!=(224&_)){var u=63&e[t++];if((_=224==(240&_)?(15&_)<<12|a<<6|u:(7&_)<<18|a<<12|u<<6|63&e[t++])<65536)o+=String.fromCharCode(_);else{var i=_-65536;o+=String.fromCharCode(55296|i>>10,56320|1023&i)}}else o+=String.fromCharCode((31&_)<<6|a)}else o+=String.fromCharCode(_)}return o}function O(e,t){return e?L(R,e,t):""}function $(e,t,n,r){if(!(r>0))return 0;for(var s=n,o=n+r-1,_=0;_<e.length;++_){var a=e.charCodeAt(_);if(a>=55296&&a<=57343)a=65536+((1023&a)<<10)|1023&e.charCodeAt(++_);if(a<=127){if(n>=o)break;t[n++]=a}else if(a<=2047){if(n+1>=o)break;t[n++]=192|a>>6,t[n++]=128|63&a}else if(a<=65535){if(n+2>=o)break;t[n++]=224|a>>12,t[n++]=128|a>>6&63,t[n++]=128|63&a}else{if(n+3>=o)break;t[n++]=240|a>>18,t[n++]=128|a>>12&63,t[n++]=128|a>>6&63,t[n++]=128|63&a}}return t[n]=0,n-s}function U(e,t,n){return $(e,R,t,n)}function D(e){for(var t=0,n=0;n<e.length;++n){var r=e.charCodeAt(n);r>=55296&&r<=57343&&(r=65536+((1023&r)<<10)|1023&e.charCodeAt(++n)),r<=127?++t:t+=r<=2047?2:r<=65535?3:4}return t}function j(e){var t=D(e)+1,n=je(t);return $(e,C,n,t),n}function z(e){k=e,Module.HEAP8=C=new Int8Array(e),Module.HEAP16=q=new Int16Array(e),Module.HEAP32=T=new Int32Array(e),Module.HEAPU8=R=new Uint8Array(e),Module.HEAPU16=new Uint16Array(e),Module.HEAPU32=new Uint32Array(e),Module.HEAPF32=W=new Float32Array(e),Module.HEAPF64=Z=new Float64Array(e)}var G=new WebAssembly.Global({value:"i32",mutable:!0},5250816);Module.___heap_base=5250816;var B=Module.INITIAL_MEMORY||33554432;(v=Module.wasmMemory?Module.wasmMemory:new WebAssembly.Memory({initial:B/65536,maximum:32768}))&&(k=v.buffer),B=k.byteLength,z(k);var H=new WebAssembly.Table({initial:13,element:"anyfunc"}),K=[],V=[],X=[],Q=[],Y=!1;var J=0,ee=null,te=null;function ne(e){J++,Module.monitorRunDependencies&&Module.monitorRunDependencies(J)}function re(e){if(J--,Module.monitorRunDependencies&&Module.monitorRunDependencies(J),0==J&&(null!==ee&&(clearInterval(ee),ee=null),te)){var t=te;te=null,t()}}function se(e){throw Module.onAbort&&Module.onAbort(e),p(e+=""),x=!0,1,e="abort("+e+"). Build with -s ASSERTIONS=1 for more info.",new WebAssembly.RuntimeError(e)}function oe(e,t){return String.prototype.startsWith?e.startsWith(t):0===e.indexOf(t)}Module.preloadedImages={},Module.preloadedAudios={},Module.preloadedWasm={};var _e="data:application/octet-stream;base64,";function ae(e){return oe(e,_e)}var ue="file://";function ie(e){return oe(e,ue)}var le,de,ce,me="tree-sitter.wasm";function fe(e){try{if(e==me&&y)return new Uint8Array(y);if(d)return d(e);throw"both async and sync fetching of the wasm failed"}catch(e){se(e)}}ae(me)||(le=me,me=Module.locateFile?Module.locateFile(le,f):f+le);var pe={},he={get:function(e,t){return pe[t]||(pe[t]=new WebAssembly.Global({value:"i32",mutable:!0})),pe[t]}};function ge(e){for(;e.length>0;){var t=e.shift();if("function"!=typeof t){var n=t.func;"number"==typeof n?void 0===t.arg?H.get(n)():H.get(n)(t.arg):n(void 0===t.arg?null:t.arg)}else t(Module)}}function we(e){var t=0;function n(){for(var n=0,r=1;;){var s=e[t++];if(n+=(127&s)*r,r*=128,!(128&s))break}return n}if(e instanceof WebAssembly.Module){var r=WebAssembly.Module.customSections(e,"dylink");N(0!=r.length,"need dylink section"),e=new Int8Array(r[0])}else{N(1836278016==new Uint32Array(new Uint8Array(e.subarray(0,24)).buffer)[0],"need to see wasm magic number"),N(0===e[8],"need the dylink section to be first"),t=9,n(),N(6===e[t]),N(e[++t]==="d".charCodeAt(0)),N(e[++t]==="y".charCodeAt(0)),N(e[++t]==="l".charCodeAt(0)),N(e[++t]==="i".charCodeAt(0)),N(e[++t]==="n".charCodeAt(0)),N(e[++t]==="k".charCodeAt(0)),t++}var s={};s.memorySize=n(),s.memoryAlign=n(),s.tableSize=n(),s.tableAlign=n();var o=n();s.neededDynlibs=[];for(var _=0;_<o;++_){var a=n(),u=e.subarray(t,t+a);t+=a;var i=L(u,0);s.neededDynlibs.push(i)}return s}var Me=0;function ye(){return I||Me>0}var be,Ee={nextHandle:1,loadedLibs:{},loadedLibNames:{}};function ve(e){return-1!=["__cpp_exception","__wasm_apply_data_relocs","__dso_handle","__set_stack_limits"].indexOf(e)}function Ie(e,t){var n={};for(var r in e){var s=e[r];"object"==typeof s&&(s=s.value),"number"==typeof s&&(s+=t),n[r]=s}return function(e){for(var t in e)if(!ve(t)){var n=!1,r=e[t];0==t.indexOf("orig$")&&(t=t.split("$")[1],n=!0),pe[t]||(pe[t]=new WebAssembly.Global({value:"i32",mutable:!0})),(n||0==pe[t].value)&&("function"==typeof r?pe[t].value=M(r):"number"==typeof r?pe[t].value=r:p("unhandled export type for `"+t+"`: "+typeof r))}}(n),n}function Se(e){return 0==e.indexOf("dynCall_")||-1!=["setTempRet0","getTempRet0","stackAlloc","stackSave","stackRestore"].indexOf(e)?e:"_"+e}function Ae(e,t){var n,r;return t&&(n=Module.asm["orig$"+e]),n||(n=Module.asm[e]),!n&&t&&(n=Module["_orig$"+e]),n||(n=Module[Se(e)]),n||0!=e.indexOf("invoke_")||(r=e.split("_")[1],n=function(){var e=Ue();try{return dynCall(r,arguments[0],Array.prototype.slice.call(arguments,1))}catch(t){if(De(e),t!==t+0&&"longjmp"!==t)throw t;_setThrew(1,0)}}),n}function xe(e,t){var n=we(e);function r(){var r=Math.pow(2,n.memoryAlign);r=Math.max(r,h);var s,o,_,a=(s=function(e){if(Y)return Oe(e);var t=Module.___heap_base,n=t+e+15&-16;return Module.___heap_base=n,pe.__heap_base.value=n,t}(n.memorySize+r),(o=r)||(o=h),Math.ceil(s/o)*o),u=Le,i=H.length;H.grow(n.tableSize);for(var l=a;l<a+n.memorySize;l++)C[l]=0;for(l=i;l<i+n.tableSize;l++)H.set(l,null);for(var d in Module)d in u||(u[d]=Module[d]);var c=new Proxy(u,{get:function(e,t){switch(t){case"__memory_base":return a;case"__table_base":return i}return t in e?e[t]:e[t]=function(){return n||(n=function(e){var t=Ae(e,!1);return t||(t=_[e]),t}(t)),n.apply(null,arguments)};var n}}),m={"GOT.mem":new Proxy(Le,he),"GOT.func":new Proxy(Le,he),env:c,wasi_snapshot_preview1:c};function f(e){for(var r=0;r<n.tableSize;r++){var s=H.get(i+r);s&&g.set(s,i+r)}_=Ie(e.exports,a),t.allowUndefined||ke();var o=_.__post_instantiate;return o&&(Y?o():V.push(o)),_}if(t.loadAsync){if(e instanceof WebAssembly.Module){var p=new WebAssembly.Instance(e,m);return Promise.resolve(f(p))}return WebAssembly.instantiate(e,m).then(function(e){return f(e.instance)})}var w=e instanceof WebAssembly.Module?e:new WebAssembly.Module(e);return f(p=new WebAssembly.Instance(w,m))}return t.loadAsync?n.neededDynlibs.reduce(function(e,n){return e.then(function(){return Pe(n,t)})},Promise.resolve()).then(function(){return r()}):(n.neededDynlibs.forEach(function(e){Pe(e,t)}),r())}function Ne(e,t){for(var n in e)if(e.hasOwnProperty(n)){var r=Se(n);Module.hasOwnProperty(r)||(Module[r]=e[n])}}function Pe(e,t){"__main__"!=e||Ee.loadedLibNames[e]||(Ee.loadedLibs[-1]={refcount:1/0,name:"__main__",module:Module.asm,global:!0},Ee.loadedLibNames.__main__=-1),t=t||{global:!0,nodelete:!0};var n,r=Ee.loadedLibNames[e];if(r)return n=Ee.loadedLibs[r],t.global&&!n.global&&(n.global=!0,"loading"!==n.module&&Ne(n.module)),t.nodelete&&n.refcount!==1/0&&(n.refcount=1/0),n.refcount++,t.loadAsync?Promise.resolve(r):r;function s(e){if(t.fs){var n=t.fs.readFile(e,{encoding:"binary"});return n instanceof Uint8Array||(n=new Uint8Array(n)),t.loadAsync?Promise.resolve(n):n}return t.loadAsync?(r=e,fetch(r,{credentials:"same-origin"}).then(function(e){if(!e.ok)throw"failed to load binary file at '"+r+"'";return e.arrayBuffer()}).then(function(e){return new Uint8Array(e)})):d(e);var r}function o(){if(void 0!==Module.preloadedWasm&&void 0!==Module.preloadedWasm[e]){var n=Module.preloadedWasm[e];return t.loadAsync?Promise.resolve(n):n}return t.loadAsync?s(e).then(function(e){return xe(e,t)}):xe(s(e),t)}function _(e){n.global&&Ne(e),n.module=e}return r=Ee.nextHandle++,n={refcount:t.nodelete?1/0:1,name:e,module:"loading",global:t.global},Ee.loadedLibNames[e]=r,Ee.loadedLibs[r]=n,t.loadAsync?o().then(function(e){return _(e),r}):(_(o()),r)}function ke(){for(var e in pe)if(0==pe[e].value){var t=Ae(e,!0);"function"==typeof t?pe[e].value=M(t,t.sig):"number"==typeof t?pe[e].value=t:N(!1,"bad export type for `"+e+"`: "+typeof t)}}function Ce(){se()}Module._abort=Ce,Ce.sig="v",be=n?function(){var e=process.hrtime();return 1e3*e[0]+e[1]/1e6}:"undefined"!=typeof dateNow?dateNow:function(){return performance.now()};var Re=!0;function qe(e,t){var n,r;if(0===e)n=Date.now();else{if(1!==e&&4!==e||!Re)return r=28,T[$e()>>2]=r,-1;n=be()}return T[t>>2]=n/1e3|0,T[t+4>>2]=n%1e3*1e3*1e3|0,0}function Te(e){try{return v.grow(e-k.byteLength+65535>>>16),z(v.buffer),1}catch(e){}}function We(e){He(e)}function Ze(e){b(0|e)}qe.sig="iii",We.sig="vi",Ze.sig="vi";var Fe,Le={__indirect_function_table:H,__memory_base:1024,__stack_pointer:G,__table_base:1,abort:Ce,clock_gettime:qe,emscripten_memcpy_big:function(e,t,n){R.copyWithin(e,t,t+n)},emscripten_resize_heap:function(e){var t,n,r=R.length;if((e>>>=0)>2147483648)return!1;for(var s=1;s<=4;s*=2){var o=r*(1+.2/s);if(o=Math.min(o,e+100663296),Te(Math.min(2147483648,((t=Math.max(e,o))%(n=65536)>0&&(t+=n-t%n),t))))return!0}return!1},exit:We,memory:v,setTempRet0:Ze,tree_sitter_log_callback:function(e,t){if(lt){const n=O(t);lt(n,0!==e)}},tree_sitter_parse_callback:function(e,t,n,r,s){var o=it(t,{row:n,column:r});"string"==typeof o?(S(s,o.length,"i32"),function(e,t,n){if(void 0===n&&(n=2147483647),n<2)return 0;for(var r=(n-=2)<2*e.length?n/2:e.length,s=0;s<r;++s){var o=e.charCodeAt(s);q[t>>1]=o,t+=2}q[t>>1]=0}(o,e,10240)):S(s,0,"i32")}},Oe=(function(){var e={env:Le,wasi_snapshot_preview1:Le,"GOT.mem":new Proxy(Le,he),"GOT.func":new Proxy(Le,he)};function t(e,t){var n=e.exports;n=Ie(n,1024),Module.asm=n;var r,s=we(t);s.neededDynlibs&&(E=s.neededDynlibs.concat(E)),r=Module.asm.__wasm_call_ctors,V.unshift(r),re()}function n(e){t(e.instance,e.module)}function r(t){return function(){if(!y&&(a||u)){if("function"==typeof fetch&&!ie(me))return fetch(me,{credentials:"same-origin"}).then(function(e){if(!e.ok)throw"failed to load wasm binary file at '"+me+"'";return e.arrayBuffer()}).catch(function(){return fe(me)});if(l)return new Promise(function(e,t){l(me,function(t){e(new Uint8Array(t))},t)})}return Promise.resolve().then(function(){return fe(me)})}().then(function(t){return WebAssembly.instantiate(t,e)}).then(t,function(e){p("failed to asynchronously prepare wasm: "+e),se(e)})}if(ne(),Module.instantiateWasm)try{return Module.instantiateWasm(e,t)}catch(e){return p("Module.instantiateWasm callback failed with error: "+e),!1}y||"function"!=typeof WebAssembly.instantiateStreaming||ae(me)||ie(me)||"function"!=typeof fetch?r(n):fetch(me,{credentials:"same-origin"}).then(function(t){return WebAssembly.instantiateStreaming(t,e).then(n,function(e){return p("wasm streaming compile failed: "+e),p("falling back to ArrayBuffer instantiation"),r(n)})})}(),Module.___wasm_call_ctors=function(){return(Module.___wasm_call_ctors=Module.asm.__wasm_call_ctors).apply(null,arguments)},Module._malloc=function(){return(Oe=Module._malloc=Module.asm.malloc).apply(null,arguments)}),$e=(Module._ts_language_symbol_count=function(){return(Module._ts_language_symbol_count=Module.asm.ts_language_symbol_count).apply(null,arguments)},Module._ts_language_version=function(){return(Module._ts_language_version=Module.asm.ts_language_version).apply(null,arguments)},Module._ts_language_field_count=function(){return(Module._ts_language_field_count=Module.asm.ts_language_field_count).apply(null,arguments)},Module._ts_language_symbol_name=function(){return(Module._ts_language_symbol_name=Module.asm.ts_language_symbol_name).apply(null,arguments)},Module._ts_language_symbol_for_name=function(){return(Module._ts_language_symbol_for_name=Module.asm.ts_language_symbol_for_name).apply(null,arguments)},Module._ts_language_symbol_type=function(){return(Module._ts_language_symbol_type=Module.asm.ts_language_symbol_type).apply(null,arguments)},Module._ts_language_field_name_for_id=function(){return(Module._ts_language_field_name_for_id=Module.asm.ts_language_field_name_for_id).apply(null,arguments)},Module._memcpy=function(){return(Module._memcpy=Module.asm.memcpy).apply(null,arguments)},Module._free=function(){return(Module._free=Module.asm.free).apply(null,arguments)},Module._calloc=function(){return(Module._calloc=Module.asm.calloc).apply(null,arguments)},Module._ts_parser_delete=function(){return(Module._ts_parser_delete=Module.asm.ts_parser_delete).apply(null,arguments)},Module._ts_parser_set_language=function(){return(Module._ts_parser_set_language=Module.asm.ts_parser_set_language).apply(null,arguments)},Module._ts_parser_timeout_micros=function(){return(Module._ts_parser_timeout_micros=Module.asm.ts_parser_timeout_micros).apply(null,arguments)},Module._ts_parser_set_timeout_micros=function(){return(Module._ts_parser_set_timeout_micros=Module.asm.ts_parser_set_timeout_micros).apply(null,arguments)},Module._memcmp=function(){return(Module._memcmp=Module.asm.memcmp).apply(null,arguments)},Module._ts_query_new=function(){return(Module._ts_query_new=Module.asm.ts_query_new).apply(null,arguments)},Module._ts_query_delete=function(){return(Module._ts_query_delete=Module.asm.ts_query_delete).apply(null,arguments)},Module._iswspace=function(){return(Module._iswspace=Module.asm.iswspace).apply(null,arguments)},Module._iswalnum=function(){return(Module._iswalnum=Module.asm.iswalnum).apply(null,arguments)},Module._ts_query_pattern_count=function(){return(Module._ts_query_pattern_count=Module.asm.ts_query_pattern_count).apply(null,arguments)},Module._ts_query_capture_count=function(){return(Module._ts_query_capture_count=Module.asm.ts_query_capture_count).apply(null,arguments)},Module._ts_query_string_count=function(){return(Module._ts_query_string_count=Module.asm.ts_query_string_count).apply(null,arguments)},Module._ts_query_capture_name_for_id=function(){return(Module._ts_query_capture_name_for_id=Module.asm.ts_query_capture_name_for_id).apply(null,arguments)},Module._ts_query_string_value_for_id=function(){return(Module._ts_query_string_value_for_id=Module.asm.ts_query_string_value_for_id).apply(null,arguments)},Module._ts_query_predicates_for_pattern=function(){return(Module._ts_query_predicates_for_pattern=Module.asm.ts_query_predicates_for_pattern).apply(null,arguments)},Module._ts_tree_copy=function(){return(Module._ts_tree_copy=Module.asm.ts_tree_copy).apply(null,arguments)},Module._ts_tree_delete=function(){return(Module._ts_tree_delete=Module.asm.ts_tree_delete).apply(null,arguments)},Module._ts_init=function(){return(Module._ts_init=Module.asm.ts_init).apply(null,arguments)},Module._ts_parser_new_wasm=function(){return(Module._ts_parser_new_wasm=Module.asm.ts_parser_new_wasm).apply(null,arguments)},Module._ts_parser_enable_logger_wasm=function(){return(Module._ts_parser_enable_logger_wasm=Module.asm.ts_parser_enable_logger_wasm).apply(null,arguments)},Module._ts_parser_parse_wasm=function(){return(Module._ts_parser_parse_wasm=Module.asm.ts_parser_parse_wasm).apply(null,arguments)},Module._ts_language_type_is_named_wasm=function(){return(Module._ts_language_type_is_named_wasm=Module.asm.ts_language_type_is_named_wasm).apply(null,arguments)},Module._ts_language_type_is_visible_wasm=function(){return(Module._ts_language_type_is_visible_wasm=Module.asm.ts_language_type_is_visible_wasm).apply(null,arguments)},Module._ts_tree_root_node_wasm=function(){return(Module._ts_tree_root_node_wasm=Module.asm.ts_tree_root_node_wasm).apply(null,arguments)},Module._ts_tree_edit_wasm=function(){return(Module._ts_tree_edit_wasm=Module.asm.ts_tree_edit_wasm).apply(null,arguments)},Module._ts_tree_get_changed_ranges_wasm=function(){return(Module._ts_tree_get_changed_ranges_wasm=Module.asm.ts_tree_get_changed_ranges_wasm).apply(null,arguments)},Module._ts_tree_cursor_new_wasm=function(){return(Module._ts_tree_cursor_new_wasm=Module.asm.ts_tree_cursor_new_wasm).apply(null,arguments)},Module._ts_tree_cursor_delete_wasm=function(){return(Module._ts_tree_cursor_delete_wasm=Module.asm.ts_tree_cursor_delete_wasm).apply(null,arguments)},Module._ts_tree_cursor_reset_wasm=function(){return(Module._ts_tree_cursor_reset_wasm=Module.asm.ts_tree_cursor_reset_wasm).apply(null,arguments)},Module._ts_tree_cursor_goto_first_child_wasm=function(){return(Module._ts_tree_cursor_goto_first_child_wasm=Module.asm.ts_tree_cursor_goto_first_child_wasm).apply(null,arguments)},Module._ts_tree_cursor_goto_next_sibling_wasm=function(){return(Module._ts_tree_cursor_goto_next_sibling_wasm=Module.asm.ts_tree_cursor_goto_next_sibling_wasm).apply(null,arguments)},Module._ts_tree_cursor_goto_parent_wasm=function(){return(Module._ts_tree_cursor_goto_parent_wasm=Module.asm.ts_tree_cursor_goto_parent_wasm).apply(null,arguments)},Module._ts_tree_cursor_current_node_type_id_wasm=function(){return(Module._ts_tree_cursor_current_node_type_id_wasm=Module.asm.ts_tree_cursor_current_node_type_id_wasm).apply(null,arguments)},Module._ts_tree_cursor_current_node_is_named_wasm=function(){return(Module._ts_tree_cursor_current_node_is_named_wasm=Module.asm.ts_tree_cursor_current_node_is_named_wasm).apply(null,arguments)},Module._ts_tree_cursor_current_node_is_missing_wasm=function(){return(Module._ts_tree_cursor_current_node_is_missing_wasm=Module.asm.ts_tree_cursor_current_node_is_missing_wasm).apply(null,arguments)},Module._ts_tree_cursor_current_node_id_wasm=function(){return(Module._ts_tree_cursor_current_node_id_wasm=Module.asm.ts_tree_cursor_current_node_id_wasm).apply(null,arguments)},Module._ts_tree_cursor_start_position_wasm=function(){return(Module._ts_tree_cursor_start_position_wasm=Module.asm.ts_tree_cursor_start_position_wasm).apply(null,arguments)},Module._ts_tree_cursor_end_position_wasm=function(){return(Module._ts_tree_cursor_end_position_wasm=Module.asm.ts_tree_cursor_end_position_wasm).apply(null,arguments)},Module._ts_tree_cursor_start_index_wasm=function(){return(Module._ts_tree_cursor_start_index_wasm=Module.asm.ts_tree_cursor_start_index_wasm).apply(null,arguments)},Module._ts_tree_cursor_end_index_wasm=function(){return(Module._ts_tree_cursor_end_index_wasm=Module.asm.ts_tree_cursor_end_index_wasm).apply(null,arguments)},Module._ts_tree_cursor_current_field_id_wasm=function(){return(Module._ts_tree_cursor_current_field_id_wasm=Module.asm.ts_tree_cursor_current_field_id_wasm).apply(null,arguments)},Module._ts_tree_cursor_current_node_wasm=function(){return(Module._ts_tree_cursor_current_node_wasm=Module.asm.ts_tree_cursor_current_node_wasm).apply(null,arguments)},Module._ts_node_symbol_wasm=function(){return(Module._ts_node_symbol_wasm=Module.asm.ts_node_symbol_wasm).apply(null,arguments)},Module._ts_node_child_count_wasm=function(){return(Module._ts_node_child_count_wasm=Module.asm.ts_node_child_count_wasm).apply(null,arguments)},Module._ts_node_named_child_count_wasm=function(){return(Module._ts_node_named_child_count_wasm=Module.asm.ts_node_named_child_count_wasm).apply(null,arguments)},Module._ts_node_child_wasm=function(){return(Module._ts_node_child_wasm=Module.asm.ts_node_child_wasm).apply(null,arguments)},Module._ts_node_named_child_wasm=function(){return(Module._ts_node_named_child_wasm=Module.asm.ts_node_named_child_wasm).apply(null,arguments)},Module._ts_node_child_by_field_id_wasm=function(){return(Module._ts_node_child_by_field_id_wasm=Module.asm.ts_node_child_by_field_id_wasm).apply(null,arguments)},Module._ts_node_next_sibling_wasm=function(){return(Module._ts_node_next_sibling_wasm=Module.asm.ts_node_next_sibling_wasm).apply(null,arguments)},Module._ts_node_prev_sibling_wasm=function(){return(Module._ts_node_prev_sibling_wasm=Module.asm.ts_node_prev_sibling_wasm).apply(null,arguments)},Module._ts_node_next_named_sibling_wasm=function(){return(Module._ts_node_next_named_sibling_wasm=Module.asm.ts_node_next_named_sibling_wasm).apply(null,arguments)},Module._ts_node_prev_named_sibling_wasm=function(){return(Module._ts_node_prev_named_sibling_wasm=Module.asm.ts_node_prev_named_sibling_wasm).apply(null,arguments)},Module._ts_node_parent_wasm=function(){return(Module._ts_node_parent_wasm=Module.asm.ts_node_parent_wasm).apply(null,arguments)},Module._ts_node_descendant_for_index_wasm=function(){return(Module._ts_node_descendant_for_index_wasm=Module.asm.ts_node_descendant_for_index_wasm).apply(null,arguments)},Module._ts_node_named_descendant_for_index_wasm=function(){return(Module._ts_node_named_descendant_for_index_wasm=Module.asm.ts_node_named_descendant_for_index_wasm).apply(null,arguments)},Module._ts_node_descendant_for_position_wasm=function(){return(Module._ts_node_descendant_for_position_wasm=Module.asm.ts_node_descendant_for_position_wasm).apply(null,arguments)},Module._ts_node_named_descendant_for_position_wasm=function(){return(Module._ts_node_named_descendant_for_position_wasm=Module.asm.ts_node_named_descendant_for_position_wasm).apply(null,arguments)},Module._ts_node_start_point_wasm=function(){return(Module._ts_node_start_point_wasm=Module.asm.ts_node_start_point_wasm).apply(null,arguments)},Module._ts_node_end_point_wasm=function(){return(Module._ts_node_end_point_wasm=Module.asm.ts_node_end_point_wasm).apply(null,arguments)},Module._ts_node_start_index_wasm=function(){return(Module._ts_node_start_index_wasm=Module.asm.ts_node_start_index_wasm).apply(null,arguments)},Module._ts_node_end_index_wasm=function(){return(Module._ts_node_end_index_wasm=Module.asm.ts_node_end_index_wasm).apply(null,arguments)},Module._ts_node_to_string_wasm=function(){return(Module._ts_node_to_string_wasm=Module.asm.ts_node_to_string_wasm).apply(null,arguments)},Module._ts_node_children_wasm=function(){return(Module._ts_node_children_wasm=Module.asm.ts_node_children_wasm).apply(null,arguments)},Module._ts_node_named_children_wasm=function(){return(Module._ts_node_named_children_wasm=Module.asm.ts_node_named_children_wasm).apply(null,arguments)},Module._ts_node_descendants_of_type_wasm=function(){return(Module._ts_node_descendants_of_type_wasm=Module.asm.ts_node_descendants_of_type_wasm).apply(null,arguments)},Module._ts_node_is_named_wasm=function(){return(Module._ts_node_is_named_wasm=Module.asm.ts_node_is_named_wasm).apply(null,arguments)},Module._ts_node_has_changes_wasm=function(){return(Module._ts_node_has_changes_wasm=Module.asm.ts_node_has_changes_wasm).apply(null,arguments)},Module._ts_node_has_error_wasm=function(){return(Module._ts_node_has_error_wasm=Module.asm.ts_node_has_error_wasm).apply(null,arguments)},Module._ts_node_is_missing_wasm=function(){return(Module._ts_node_is_missing_wasm=Module.asm.ts_node_is_missing_wasm).apply(null,arguments)},Module._ts_query_matches_wasm=function(){return(Module._ts_query_matches_wasm=Module.asm.ts_query_matches_wasm).apply(null,arguments)},Module._ts_query_captures_wasm=function(){return(Module._ts_query_captures_wasm=Module.asm.ts_query_captures_wasm).apply(null,arguments)},Module._iswdigit=function(){return(Module._iswdigit=Module.asm.iswdigit).apply(null,arguments)},Module._iswalpha=function(){return(Module._iswalpha=Module.asm.iswalpha).apply(null,arguments)},Module._iswlower=function(){return(Module._iswlower=Module.asm.iswlower).apply(null,arguments)},Module._towupper=function(){return(Module._towupper=Module.asm.towupper).apply(null,arguments)},Module.___errno_location=function(){return($e=Module.___errno_location=Module.asm.__errno_location).apply(null,arguments)}),Ue=(Module._memchr=function(){return(Module._memchr=Module.asm.memchr).apply(null,arguments)},Module._strlen=function(){return(Module._strlen=Module.asm.strlen).apply(null,arguments)},Module.stackSave=function(){return(Ue=Module.stackSave=Module.asm.stackSave).apply(null,arguments)}),De=Module.stackRestore=function(){return(De=Module.stackRestore=Module.asm.stackRestore).apply(null,arguments)},je=Module.stackAlloc=function(){return(je=Module.stackAlloc=Module.asm.stackAlloc).apply(null,arguments)};Module.__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcm=function(){return(Module.__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcm=Module.asm._ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6__initEPKcm).apply(null,arguments)},Module.__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED2Ev=function(){return(Module.__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED2Ev=Module.asm._ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEED2Ev).apply(null,arguments)},Module.__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__grow_byEmmmmmm=function(){return(Module.__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__grow_byEmmmmmm=Module.asm._ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9__grow_byEmmmmmm).apply(null,arguments)},Module.__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7reserveEm=function(){return(Module.__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7reserveEm=Module.asm._ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7reserveEm).apply(null,arguments)},Module.__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9push_backEc=function(){return(Module.__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9push_backEc=Module.asm._ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE9push_backEc).apply(null,arguments)},Module.__ZNKSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE4copyEPcmm=function(){return(Module.__ZNKSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE4copyEPcmm=Module.asm._ZNKSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE4copyEPcmm).apply(null,arguments)},Module.__ZNSt3__212basic_stringIwNS_11char_traitsIwEENS_9allocatorIwEEED2Ev=function(){return(Module.__ZNSt3__212basic_stringIwNS_11char_traitsIwEENS_9allocatorIwEEED2Ev=Module.asm._ZNSt3__212basic_stringIwNS_11char_traitsIwEENS_9allocatorIwEEED2Ev).apply(null,arguments)},Module.__ZNSt3__212basic_stringIwNS_11char_traitsIwEENS_9allocatorIwEEE9push_backEw=function(){return(Module.__ZNSt3__212basic_stringIwNS_11char_traitsIwEENS_9allocatorIwEEE9push_backEw=Module.asm._ZNSt3__212basic_stringIwNS_11char_traitsIwEENS_9allocatorIwEEE9push_backEw).apply(null,arguments)},Module.__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC1ERKS5_=function(){return(Module.__ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC1ERKS5_=Module.asm._ZNSt3__212basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEEC1ERKS5_).apply(null,arguments)},Module.__ZNKSt3__220__vector_base_commonILb1EE20__throw_length_errorEv=function(){return(Module.__ZNKSt3__220__vector_base_commonILb1EE20__throw_length_errorEv=Module.asm._ZNKSt3__220__vector_base_commonILb1EE20__throw_length_errorEv).apply(null,arguments)},Module.__Znwm=function(){return(Module.__Znwm=Module.asm._Znwm).apply(null,arguments)},Module.__ZdlPv=function(){return(Module.__ZdlPv=Module.asm._ZdlPv).apply(null,arguments)},Module._orig$ts_parser_timeout_micros=function(){return(Module._orig$ts_parser_timeout_micros=Module.asm.orig$ts_parser_timeout_micros).apply(null,arguments)},Module._orig$ts_parser_set_timeout_micros=function(){return(Module._orig$ts_parser_set_timeout_micros=Module.asm.orig$ts_parser_set_timeout_micros).apply(null,arguments)},Module._TRANSFER_BUFFER=7296,Module.___cxa_new_handler=7928;function ze(e){this.name="ExitStatus",this.message="Program terminated with exit("+e+")",this.status=e}Module.allocate=function(e,t){var n;return n=t==P?je(e.length):Oe(e.length),e.subarray||e.slice?R.set(e,n):R.set(new Uint8Array(e),n),n};te=function e(){Fe||Be(),Fe||(te=e)};var Ge=!1;function Be(e){function t(){Fe||(Fe=!0,Module.calledRun=!0,x||(Y=!0,ge(V),ge(X),Module.onRuntimeInitialized&&Module.onRuntimeInitialized(),Ke&&function(e){var t=Module._main;if(t){var n=(e=e||[]).length+1,r=je(4*(n+1));T[r>>2]=j(o);for(var s=1;s<n;s++)T[(r>>2)+s]=j(e[s-1]);T[(r>>2)+n]=0;try{He(t(n,r),!0)}catch(e){if(e instanceof ze)return;if("unwind"==e)return;var a=e;e&&"object"==typeof e&&e.stack&&(a=[e,e.stack]),p("exception thrown: "+a),_(1,e)}finally{!0}}}(e),function(){if(Module.postRun)for("function"==typeof Module.postRun&&(Module.postRun=[Module.postRun]);Module.postRun.length;)e=Module.postRun.shift(),Q.unshift(e);var e;ge(Q)}()))}e=e||s,J>0||!Ge&&(function(){if(E.length){if(!d)return ne(),void E.reduce(function(e,t){return e.then(function(){return Pe(t,{loadAsync:!0,global:!0,nodelete:!0,allowUndefined:!0})})},Promise.resolve()).then(function(){re(),ke()});E.forEach(function(e){Pe(e,{global:!0,nodelete:!0,allowUndefined:!0})}),ke()}else ke()}(),Ge=!0,J>0)||(!function(){if(Module.preRun)for("function"==typeof Module.preRun&&(Module.preRun=[Module.preRun]);Module.preRun.length;)e=Module.preRun.shift(),K.unshift(e);var e;ge(K)}(),J>0||(Module.setStatus?(Module.setStatus("Running..."),setTimeout(function(){setTimeout(function(){Module.setStatus("")},1),t()},1)):t()))}function He(e,t){e,t&&ye()&&0===e||(ye()||(!0,Module.onExit&&Module.onExit(e),x=!0),_(e,new ze(e)))}if(Module.run=Be,Module.preInit)for("function"==typeof Module.preInit&&(Module.preInit=[Module.preInit]);Module.preInit.length>0;)Module.preInit.pop()();var Ke=!0;Module.noInitialRun&&(Ke=!1),Be();const Ve=Module,Xe={},Qe=4,Ye=5*Qe,Je=2*Qe,et=2*Qe+2*Je,tt={row:0,column:0},nt=/[\w-.]*/g,rt=1,st=2,ot=/^_?tree_sitter_\w+/;var _t,at,ut,it,lt,dt=new Promise(e=>{Module.onRuntimeInitialized=e}).then(()=>{ut=Ve._ts_init(),_t=A(ut,"i32"),at=A(ut+Qe,"i32")});class Parser{static init(){return dt}constructor(){if(null==ut)throw new Error("You must first call Parser.init() and wait for it to resolve.");Ve._ts_parser_new_wasm(),this[0]=A(ut,"i32"),this[1]=A(ut+Qe,"i32")}delete(){Ve._ts_parser_delete(this[0]),Ve._free(this[1]),this[0]=0,this[1]=0}setLanguage(e){let t;if(e){if(e.constructor!==Language)throw new Error("Argument must be a Language");{t=e[0];const n=Ve._ts_language_version(t);if(n<at||_t<n)throw new Error(`Incompatible language version ${n}. `+`Compatibility range ${at} through ${_t}.`)}}else t=0,e=null;return this.language=e,Ve._ts_parser_set_language(this[0],t),this}getLanguage(){return this.language}parse(e,t,n){if("string"==typeof e)it=((t,n,r)=>e.slice(t,r));else{if("function"!=typeof e)throw new Error("Argument must be a string or a function");it=e}this.logCallback?(lt=this.logCallback,Ve._ts_parser_enable_logger_wasm(this[0],1)):(lt=null,Ve._ts_parser_enable_logger_wasm(this[0],0));let r=0,s=0;if(n&&n.includedRanges){r=n.includedRanges.length;let e=s=Ve._calloc(r,et);for(let t=0;t<r;t++)Et(e,n.includedRanges[t]),e+=et}const o=Ve._ts_parser_parse_wasm(this[0],this[1],t?t[0]:0,s,r);if(!o)throw it=null,lt=null,new Error("Parsing failed");const _=new Tree(Xe,o,this.language,it);return it=null,lt=null,_}reset(){Ve._ts_parser_parse_wasm(this[0])}setTimeoutMicros(e){Ve._ts_parser_set_timeout_micros(this[0],e)}getTimeoutMicros(){return Ve._ts_parser_timeout_micros(this[0])}setLogger(e){if(e){if("function"!=typeof e)throw new Error("Logger callback must be a function")}else e=null;return this.logCallback=e,this}getLogger(){return this.logCallback}}class Tree{constructor(e,t,n,r){ft(e),this[0]=t,this.language=n,this.textCallback=r}copy(){const e=Ve._ts_tree_copy(this[0]);return new Tree(Xe,e,this.language,this.textCallback)}delete(){Ve._ts_tree_delete(this[0]),this[0]=0}edit(e){!function(e){let t=ut;yt(t,e.startPosition),yt(t+=Je,e.oldEndPosition),yt(t+=Je,e.newEndPosition),S(t+=Je,e.startIndex,"i32"),S(t+=Qe,e.oldEndIndex,"i32"),S(t+=Qe,e.newEndIndex,"i32"),t+=Qe}(e),Ve._ts_tree_edit_wasm(this[0])}get rootNode(){return Ve._ts_tree_root_node_wasm(this[0]),gt(this)}getLanguage(){return this.language}walk(){return this.rootNode.walk()}getChangedRanges(e){if(e.constructor!==Tree)throw new TypeError("Argument must be a Tree");Ve._ts_tree_get_changed_ranges_wasm(this[0],e[0]);const t=A(ut,"i32"),n=A(ut+Qe,"i32"),r=new Array(t);if(t>0){let e=n;for(let n=0;n<t;n++)r[n]=vt(e),e+=et;Ve._free(n)}return r}}class Node{constructor(e,t){ft(e),this.tree=t}get typeId(){return ht(this),Ve._ts_node_symbol_wasm(this.tree[0])}get type(){return this.tree.language.types[this.typeId]||"ERROR"}get endPosition(){return ht(this),Ve._ts_node_end_point_wasm(this.tree[0]),bt(ut)}get endIndex(){return ht(this),Ve._ts_node_end_index_wasm(this.tree[0])}get text(){return ct(this.tree,this.startIndex,this.endIndex)}isNamed(){return ht(this),1===Ve._ts_node_is_named_wasm(this.tree[0])}hasError(){return ht(this),1===Ve._ts_node_has_error_wasm(this.tree[0])}hasChanges(){return ht(this),1===Ve._ts_node_has_changes_wasm(this.tree[0])}isMissing(){return ht(this),1===Ve._ts_node_is_missing_wasm(this.tree[0])}equals(e){return this.id===e.id}child(e){return ht(this),Ve._ts_node_child_wasm(this.tree[0],e),gt(this.tree)}namedChild(e){return ht(this),Ve._ts_node_named_child_wasm(this.tree[0],e),gt(this.tree)}childForFieldId(e){return ht(this),Ve._ts_node_child_by_field_id_wasm(this.tree[0],e),gt(this.tree)}childForFieldName(e){const t=this.tree.language.fields.indexOf(e);if(-1!==t)return this.childForFieldId(t)}get childCount(){return ht(this),Ve._ts_node_child_count_wasm(this.tree[0])}get namedChildCount(){return ht(this),Ve._ts_node_named_child_count_wasm(this.tree[0])}get firstChild(){return this.child(0)}get firstNamedChild(){return this.namedChild(0)}get lastChild(){return this.child(this.childCount-1)}get lastNamedChild(){return this.namedChild(this.namedChildCount-1)}get children(){if(!this._children){ht(this),Ve._ts_node_children_wasm(this.tree[0]);const e=A(ut,"i32"),t=A(ut+Qe,"i32");if(this._children=new Array(e),e>0){let n=t;for(let t=0;t<e;t++)this._children[t]=gt(this.tree,n),n+=Ye;Ve._free(t)}}return this._children}get namedChildren(){if(!this._namedChildren){ht(this),Ve._ts_node_named_children_wasm(this.tree[0]);const e=A(ut,"i32"),t=A(ut+Qe,"i32");if(this._namedChildren=new Array(e),e>0){let n=t;for(let t=0;t<e;t++)this._namedChildren[t]=gt(this.tree,n),n+=Ye;Ve._free(t)}}return this._namedChildren}descendantsOfType(e,t,n){Array.isArray(e)||(e=[e]),t||(t=tt),n||(n=tt);const r=[],s=this.tree.language.types;for(let t=0,n=s.length;t<n;t++)e.includes(s[t])&&r.push(t);const o=Ve._malloc(Qe*r.count);for(let e=0,t=r.length;e<t;e++)S(o+e*Qe,r[e],"i32");ht(this),Ve._ts_node_descendants_of_type_wasm(this.tree[0],o,r.length,t.row,t.column,n.row,n.column);const _=A(ut,"i32"),a=A(ut+Qe,"i32"),u=new Array(_);if(_>0){let e=a;for(let t=0;t<_;t++)u[t]=gt(this.tree,e),e+=Ye}return Ve._free(a),Ve._free(o),u}get nextSibling(){return ht(this),Ve._ts_node_next_sibling_wasm(this.tree[0]),gt(this.tree)}get previousSibling(){return ht(this),Ve._ts_node_prev_sibling_wasm(this.tree[0]),gt(this.tree)}get nextNamedSibling(){return ht(this),Ve._ts_node_next_named_sibling_wasm(this.tree[0]),gt(this.tree)}get previousNamedSibling(){return ht(this),Ve._ts_node_prev_named_sibling_wasm(this.tree[0]),gt(this.tree)}get parent(){return ht(this),Ve._ts_node_parent_wasm(this.tree[0]),gt(this.tree)}descendantForIndex(e,t=e){if("number"!=typeof e||"number"!=typeof t)throw new Error("Arguments must be numbers");ht(this);let n=ut+Ye;return S(n,e,"i32"),S(n+Qe,t,"i32"),Ve._ts_node_descendant_for_index_wasm(this.tree[0]),gt(this.tree)}namedDescendantForIndex(e,t=e){if("number"!=typeof e||"number"!=typeof t)throw new Error("Arguments must be numbers");ht(this);let n=ut+Ye;return S(n,e,"i32"),S(n+Qe,t,"i32"),Ve._ts_node_named_descendant_for_index_wasm(this.tree[0]),gt(this.tree)}descendantForPosition(e,t=e){if(!pt(e)||!pt(t))throw new Error("Arguments must be {row, column} objects");ht(this);let n=ut+Ye;return yt(n,e),yt(n+Je,t),Ve._ts_node_descendant_for_position_wasm(this.tree[0]),gt(this.tree)}namedDescendantForPosition(e,t=e){if(!pt(e)||!pt(t))throw new Error("Arguments must be {row, column} objects");ht(this);let n=ut+Ye;return yt(n,e),yt(n+Je,t),Ve._ts_node_named_descendant_for_position_wasm(this.tree[0]),gt(this.tree)}walk(){return ht(this),Ve._ts_tree_cursor_new_wasm(this.tree[0]),new TreeCursor(Xe,this.tree)}toString(){ht(this);const e=Ve._ts_node_to_string_wasm(this.tree[0]),t=function(e){for(var t="";;){var n=R[e++>>0];if(!n)return t;t+=String.fromCharCode(n)}}(e);return Ve._free(e),t}}class TreeCursor{constructor(e,t){ft(e),this.tree=t,Mt(this)}delete(){wt(this),Ve._ts_tree_cursor_delete_wasm(this.tree[0]),this[0]=this[1]=this[2]=0}reset(e){ht(e),wt(this,ut+Ye),Ve._ts_tree_cursor_reset_wasm(this.tree[0]),Mt(this)}get nodeType(){return this.tree.language.types[this.nodeTypeId]||"ERROR"}get nodeTypeId(){return wt(this),Ve._ts_tree_cursor_current_node_type_id_wasm(this.tree[0])}get nodeId(){return wt(this),Ve._ts_tree_cursor_current_node_id_wasm(this.tree[0])}get nodeIsNamed(){return wt(this),1===Ve._ts_tree_cursor_current_node_is_named_wasm(this.tree[0])}get nodeIsMissing(){return wt(this),1===Ve._ts_tree_cursor_current_node_is_missing_wasm(this.tree[0])}get nodeText(){wt(this);const e=Ve._ts_tree_cursor_start_index_wasm(this.tree[0]),t=Ve._ts_tree_cursor_end_index_wasm(this.tree[0]);return ct(this.tree,e,t)}get startPosition(){return wt(this),Ve._ts_tree_cursor_start_position_wasm(this.tree[0]),bt(ut)}get endPosition(){return wt(this),Ve._ts_tree_cursor_end_position_wasm(this.tree[0]),bt(ut)}get startIndex(){return wt(this),Ve._ts_tree_cursor_start_index_wasm(this.tree[0])}get endIndex(){return wt(this),Ve._ts_tree_cursor_end_index_wasm(this.tree[0])}currentNode(){return wt(this),Ve._ts_tree_cursor_current_node_wasm(this.tree[0]),gt(this.tree)}currentFieldId(){return wt(this),Ve._ts_tree_cursor_current_field_id_wasm(this.tree[0])}currentFieldName(){return this.tree.language.fields[this.currentFieldId()]}gotoFirstChild(){wt(this);const e=Ve._ts_tree_cursor_goto_first_child_wasm(this.tree[0]);return Mt(this),1===e}gotoNextSibling(){wt(this);const e=Ve._ts_tree_cursor_goto_next_sibling_wasm(this.tree[0]);return Mt(this),1===e}gotoParent(){wt(this);const e=Ve._ts_tree_cursor_goto_parent_wasm(this.tree[0]);return Mt(this),1===e}}class Language{constructor(e,t){ft(e),this[0]=t,this.types=new Array(Ve._ts_language_symbol_count(this[0]));for(let e=0,t=this.types.length;e<t;e++)Ve._ts_language_symbol_type(this[0],e)<2&&(this.types[e]=O(Ve._ts_language_symbol_name(this[0],e)));this.fields=new Array(Ve._ts_language_field_count(this[0])+1);for(let e=0,t=this.fields.length;e<t;e++){const t=Ve._ts_language_field_name_for_id(this[0],e);this.fields[e]=0!==t?O(t):null}}get version(){return Ve._ts_language_version(this[0])}get fieldCount(){return this.fields.length-1}fieldIdForName(e){const t=this.fields.indexOf(e);return-1!==t?t:null}fieldNameForId(e){return this.fields[e]||null}idForNodeType(e,t){const n=D(e),r=Ve._malloc(n+1);U(e,r,n+1);const s=Ve._ts_language_symbol_for_name(this[0],r,n,t);return Ve._free(r),s||null}get nodeTypeCount(){return Ve._ts_language_symbol_count(this[0])}nodeTypeForId(e){const t=Ve._ts_language_symbol_name(this[0],e);return t?O(t):null}nodeTypeIsNamed(e){return!!Ve._ts_language_type_is_named_wasm(this[0],e)}nodeTypeIsVisible(e){return!!Ve._ts_language_type_is_visible_wasm(this[0],e)}query(e){const t=D(e),n=Ve._malloc(t+1);U(e,n,t+1);const r=Ve._ts_query_new(this[0],n,t,ut,ut+Qe);if(!r){const t=A(ut+Qe,"i32"),r=O(n,A(ut,"i32")).length,s=e.substr(r,100).split("\n")[0];let o,_=s.match(nt)[0];switch(t){case 2:o=new RangeError(`Bad node name '${_}'`);break;case 3:o=new RangeError(`Bad field name '${_}'`);break;case 4:o=new RangeError(`Bad capture name @${_}`);break;case 5:o=new TypeError(`Bad pattern structure at offset ${r}: '${s}'...`),_="";break;default:o=new SyntaxError(`Bad syntax at offset ${r}: '${s}'...`),_=""}throw o.index=r,o.length=_.length,Ve._free(n),o}const s=Ve._ts_query_string_count(r),o=Ve._ts_query_capture_count(r),_=Ve._ts_query_pattern_count(r),a=new Array(o),u=new Array(s);for(let e=0;e<o;e++){const t=Ve._ts_query_capture_name_for_id(r,e,ut),n=A(ut,"i32");a[e]=O(t,n)}for(let e=0;e<s;e++){const t=Ve._ts_query_string_value_for_id(r,e,ut),n=A(ut,"i32");u[e]=O(t,n)}const i=new Array(_),l=new Array(_),d=new Array(_),c=new Array(_),m=new Array(_);for(let e=0;e<_;e++){const t=Ve._ts_query_predicates_for_pattern(r,e,ut),n=A(ut,"i32");c[e]=[],m[e]=[];const s=[];let o=t;for(let t=0;t<n;t++){const t=A(o,"i32"),n=A(o+=Qe,"i32");if(o+=Qe,t===rt)s.push({type:"capture",name:a[n]});else if(t===st)s.push({type:"string",value:u[n]});else if(s.length>0){if("string"!==s[0].type)throw new Error("Predicates must begin with a literal value");const t=s[0].value;let n=!0;switch(t){case"not-eq?":n=!1;case"eq?":if(3!==s.length)throw new Error(`Wrong number of arguments to \`#eq?\` predicate. Expected 2, got ${s.length-1}`);if("capture"!==s[1].type)throw new Error(`First argument of \`#eq?\` predicate must be a capture. Got "${s[1].value}"`);if("capture"===s[2].type){const t=s[1].name,r=s[2].name;m[e].push(function(e){let s,o;for(const n of e)n.name===t&&(s=n.node),n.name===r&&(o=n.node);return s.text===o.text===n})}else{const t=s[1].name,r=s[2].value;m[e].push(function(e){for(const s of e)if(s.name===t)return s.node.text===r===n;return!1})}break;case"not-match?":n=!1;case"match?":if(3!==s.length)throw new Error(`Wrong number of arguments to \`#match?\` predicate. Expected 2, got ${s.length-1}.`);if("capture"!==s[1].type)throw new Error(`First argument of \`#match?\` predicate must be a capture. Got "${s[1].value}".`);if("string"!==s[2].type)throw new Error(`Second argument of \`#match?\` predicate must be a string. Got @${s[2].value}.`);const r=s[1].name,o=new RegExp(s[2].value);m[e].push(function(e){for(const t of e)if(t.name===r)return o.test(t.node.text)===n;return!1});break;case"set!":if(s.length<2||s.length>3)throw new Error(`Wrong number of arguments to \`#set!\` predicate. Expected 1 or 2. Got ${s.length-1}.`);if(s.some(e=>"string"!==e.type))throw new Error('Arguments to `#set!` predicate must be a strings.".');i[e]||(i[e]={}),i[e][s[1].value]=s[2]?s[2].value:null;break;case"is?":case"is-not?":if(s.length<2||s.length>3)throw new Error(`Wrong number of arguments to \`#${t}\` predicate. Expected 1 or 2. Got ${s.length-1}.`);if(s.some(e=>"string"!==e.type))throw new Error(`Arguments to \`#${t}\` predicate must be a strings.".`);const _="is?"===t?l:d;_[e]||(_[e]={}),_[e][s[1].value]=s[2]?s[2].value:null;break;default:c[e].push({operator:t,operands:s.slice(1)})}s.length=0}}Object.freeze(i[e]),Object.freeze(l[e]),Object.freeze(d[e])}return Ve._free(n),new Query(Xe,r,a,m,c,Object.freeze(i),Object.freeze(l),Object.freeze(d))}static load(e){let t;if(e instanceof Uint8Array)t=Promise.resolve(e);else{const n=e;if("undefined"!=typeof process&&process.versions&&process.versions.node){const e=require("fs");t=Promise.resolve(e.readFileSync(n))}else t=fetch(n).then(e=>e.arrayBuffer().then(t=>{if(e.ok)return new Uint8Array(t);{const n=new TextDecoder("utf-8").decode(t);throw new Error(`Language.load failed with status ${e.status}.\n\n${n}`)}}))}const n="function"==typeof loadSideModule?loadSideModule:xe;return t.then(e=>n(e,{loadAsync:!0})).then(e=>{const t=Object.keys(e),n=t.find(e=>ot.test(e)&&!e.includes("external_scanner_"));n||console.log(`Couldn't find language function in WASM file. Symbols:\n${JSON.stringify(t,null,2)}`);const r=e[n]();return new Language(Xe,r)})}}class Query{constructor(e,t,n,r,s,o,_,a){ft(e),this[0]=t,this.captureNames=n,this.textPredicates=r,this.predicates=s,this.setProperties=o,this.assertedProperties=_,this.refutedProperties=a}delete(){Ve._ts_query_delete(this[0]),this[0]=0}matches(e,t,n){t||(t=tt),n||(n=tt),ht(e),Ve._ts_query_matches_wasm(this[0],e.tree[0],t.row,t.column,n.row,n.column);const r=A(ut,"i32"),s=A(ut+Qe,"i32"),o=new Array(r);let _=0,a=s;for(let t=0;t<r;t++){const n=A(a,"i32"),r=A(a+=Qe,"i32");a+=Qe;const s=new Array(r);if(a=mt(this,e.tree,a,s),this.textPredicates[n].every(e=>e(s))){o[_++]={pattern:n,captures:s};const e=this.setProperties[n];e&&(o[t].setProperties=e);const r=this.assertedProperties[n];r&&(o[t].assertedProperties=r);const a=this.refutedProperties[n];a&&(o[t].refutedProperties=a)}}return o.length=_,Ve._free(s),o}captures(e,t,n){t||(t=tt),n||(n=tt),ht(e),Ve._ts_query_captures_wasm(this[0],e.tree[0],t.row,t.column,n.row,n.column);const r=A(ut,"i32"),s=A(ut+Qe,"i32"),o=[],_=[];let a=s;for(let t=0;t<r;t++){const t=A(a,"i32"),n=A(a+=Qe,"i32"),r=A(a+=Qe,"i32");if(a+=Qe,_.length=n,a=mt(this,e.tree,a,_),this.textPredicates[t].every(e=>e(_))){const e=_[r],n=this.setProperties[t];n&&(e.setProperties=n);const s=this.assertedProperties[t];s&&(e.assertedProperties=s);const a=this.refutedProperties[t];a&&(e.refutedProperties=a),o.push(e)}}return Ve._free(s),o}predicatesForPattern(e){return this.predicates[e]}}function ct(e,t,n){const r=n-t;let s=e.textCallback(t,null,n);for(t+=s.length;t<n;){const r=e.textCallback(t,null,n);if(!(r&&r.length>0))break;t+=r.length,s+=r}return t>n&&(s=s.slice(0,r)),s}function mt(e,t,n,r){for(let s=0,o=r.length;s<o;s++){const o=A(n,"i32"),_=gt(t,n+=Qe);n+=Ye,r[s]={name:e.captureNames[o],node:_}}return n}function ft(e){if(e!==Xe)throw new Error("Illegal constructor")}function pt(e){return e&&"number"==typeof e.row&&"number"==typeof e.column}function ht(e){let t=ut;S(t,e.id,"i32"),S(t+=Qe,e.startIndex,"i32"),S(t+=Qe,e.startPosition.row,"i32"),S(t+=Qe,e.startPosition.column,"i32"),S(t+=Qe,e[0],"i32")}function gt(e,t=ut){const n=A(t,"i32");if(0===n)return null;const r=A(t+=Qe,"i32"),s=A(t+=Qe,"i32"),o=A(t+=Qe,"i32"),_=A(t+=Qe,"i32"),a=new Node(Xe,e);return a.id=n,a.startIndex=r,a.startPosition={row:s,column:o},a[0]=_,a}function wt(e,t=ut){S(t+0*Qe,e[0],"i32"),S(t+1*Qe,e[1],"i32"),S(t+2*Qe,e[2],"i32")}function Mt(e){e[0]=A(ut+0*Qe,"i32"),e[1]=A(ut+1*Qe,"i32"),e[2]=A(ut+2*Qe,"i32")}function yt(e,t){S(e,t.row,"i32"),S(e+Qe,t.column,"i32")}function bt(e){return{row:A(e,"i32"),column:A(e+Qe,"i32")}}function Et(e,t){yt(e,t.startPosition),yt(e+=Je,t.endPosition),S(e+=Je,t.startIndex,"i32"),S(e+=Qe,t.endIndex,"i32"),e+=Qe}function vt(e){const t={};return t.startPosition=bt(e),e+=Je,t.endPosition=bt(e),e+=Je,t.startIndex=A(e,"i32"),e+=Qe,t.endIndex=A(e,"i32"),t}return Parser.Language=Language,Parser.Parser=Parser,Parser});