@orama/stemmers
Version:
Stemmers for Orama
1 lines • 6.53 kB
JavaScript
function r(){this.p=function(r){this.j=r,this.cursor=0,this.a=this.j.length,this.f=0,this.c=this.cursor,this.d=this.a},this.z=function(){return this.j},this.w=function(r){this.j=r.j,this.cursor=r.cursor,this.a=r.a,this.f=r.f,this.c=r.c,this.d=r.d},this.i=function(r,s,t){if(this.cursor>=this.a)return!1;var i=this.j.charCodeAt(this.cursor);return!(i>t)&&!(i<s)&&0!=(r[(i-=s)>>>3]&1<<(7&i))&&(this.cursor++,!0)},this.n=function(r,s,t){if(this.cursor<=this.f)return!1;var i=this.j.charCodeAt(this.cursor-1);return!(i>t)&&!(i<s)&&0!=(r[(i-=s)>>>3]&1<<(7&i))&&(this.cursor--,!0)},this.k=function(r,s,t){if(this.cursor>=this.a)return!1;var i=this.j.charCodeAt(this.cursor);return i>t||i<s?(this.cursor++,!0):0==(r[(i-=s)>>>3]&1<<(7&i))&&(this.cursor++,!0)},this.q=function(r,s,t){if(this.cursor<=this.f)return!1;var i=this.j.charCodeAt(this.cursor-1);return i>t||i<s?(this.cursor--,!0):0==(r[(i-=s)>>>3]&1<<(7&i))&&(this.cursor--,!0)},this.m=function(r){return!(this.a-this.cursor<r.length)&&this.j.slice(this.cursor,this.cursor+r.length)==r&&(this.cursor+=r.length,!0)},this.g=function(r){return!(this.cursor-this.f<r.length)&&this.j.slice(this.cursor-r.length,this.cursor)==r&&(this.cursor-=r.length,!0)},this.o=function(r){for(var s=0,t=r.length,i=this.cursor,c=this.a,u=0,o=0,e=!1;;){var h,n=s+(t-s>>>1),a=0,f=u<o?u:o,b=r[n];for(h=f;h<b[0].length;h++){if(i+f==c){a=-1;break}if(0!=(a=this.j.charCodeAt(i+f)-b[0].charCodeAt(h)))break;f++}if(0>a?(t=n,o=f):(s=n,u=f),1>=t-s){if(0<s||t==s||e)break;e=!0}}for(;;){if(u>=(b=r[s])[0].length&&(this.cursor=i+b[0].length,4>b.length||(s=b[3](this),this.cursor=i+b[0].length,s)))return b[2];if(0>(s=b[1]))return 0}},this.h=function(r){for(var s=0,t=r.length,i=this.cursor,c=this.f,u=0,o=0,e=!1;;){var h,n=s+(t-s>>1),a=0,f=u<o?u:o,b=r[n];for(h=b[0].length-1-f;0<=h;h--){if(i-f==c){a=-1;break}if(0!=(a=this.j.charCodeAt(i-1-f)-b[0].charCodeAt(h)))break;f++}if(0>a?(t=n,o=f):(s=n,u=f),1>=t-s){if(0<s||t==s||e)break;e=!0}}for(;;){if(u>=(b=r[s])[0].length&&(this.cursor=i-b[0].length,4>b.length||(s=b[3](this),this.cursor=i-b[0].length,s)))return b[2];if(0>(s=b[1]))return 0}},this.s=function(r,s,t){var i=t.length-(s-r);return this.j=this.j.slice(0,r)+t+this.j.slice(s),this.a+=i,this.cursor>=s?this.cursor+=i:this.cursor>r&&(this.cursor=r),i},this.t=function(){return!(0>this.c)&&!(this.c>this.d)&&!(this.d>this.a)&&!(this.a>this.j.length)},this.b=function(r){var s=!1;return this.t()&&(this.s(this.c,this.d,r),s=!0),s},this.e=function(){return this.b("")},this.r=function(r,s,t){s=this.s(r,s,t),r<=this.c&&(this.c+=s),r<=this.d&&(this.d+=s)},this.u=function(){var r="";return this.t()&&(r=this.j.slice(this.c,this.d)),r},this.v=function(){return this.j.slice(0,this.a)}}let s=new function(){function s(){return v<=o.cursor}function t(){return l<=o.cursor}function i(){var r=o.a-o.cursor;return 0!=o.h(n)&&(o.cursor=o.a-r,o.d=o.cursor,!(o.cursor<=o.f)&&(o.cursor--,o.c=o.cursor,!!o.e()))}function c(){if(j=!1,o.d=o.cursor,!o.g("e")||(o.c=o.cursor,!s()))return!1;var r=o.a-o.cursor;return!!o.q(k,97,232)&&(o.cursor=o.a-r,!!o.e()&&(j=!0,!!i()))}function u(){if(!s())return!1;var r=o.a-o.cursor;return!!o.q(k,97,232)&&(o.cursor=o.a-r,r=o.a-o.cursor,!o.g("gem")&&(o.cursor=o.a-r,!!(o.e()&&i())))}var o=new r,e=[["",-1,6],["\xe1",0,1],["\xe4",0,1],["\xe9",0,2],["\xeb",0,2],["\xed",0,3],["\xef",0,3],["\xf3",0,4],["\xf6",0,4],["\xfa",0,5],["\xfc",0,5]],h=[["",-1,3],["I",0,2],["Y",0,1]],n=[["dd",-1,-1],["kk",-1,-1],["tt",-1,-1]],a=[["ene",-1,2],["se",-1,3],["en",-1,2],["heden",2,1],["s",-1,3]],f=[["end",-1,1],["ig",-1,2],["ing",-1,1],["lijk",-1,3],["baar",-1,4],["bar",-1,5]],b=[["aa",-1,-1],["ee",-1,-1],["oo",-1,-1],["uu",-1,-1]],k=[17,65,16,1,0,0,0,0,0,0,0,0,0,0,0,0,128],d=[1,0,0,17,65,16,1,0,0,0,0,0,0,0,0,0,0,0,0,128],g=[17,67,16,1,0,0,0,0,0,0,0,0,0,0,0,0,128],l=0,v=0,j=!1;this.l=function(){var r,n=o.cursor;!function(){for(var r,s=o.cursor;;){var t=o.cursor;r:if(o.c=o.cursor,0!=(r=o.o(e))){switch(o.d=o.cursor,r){case 1:if(!o.b("a"))return;break;case 2:if(!o.b("e"))return;break;case 3:if(!o.b("i"))return;break;case 4:if(!o.b("o"))return;break;case 5:if(!o.b("u"))return;break;case 6:if(o.cursor>=o.a)break r;o.cursor++}continue}o.cursor=t;break}if(o.cursor=s,r=o.cursor,o.c=o.cursor,o.m("y")){if(o.d=o.cursor,!o.b("Y"))return}else o.cursor=r;for(;;){r=o.cursor;r:{for(;;){s=o.cursor;s:if(o.i(k,97,232)){o.c=o.cursor;t:{if(t=o.cursor,o.m("i")&&(o.d=o.cursor,o.i(k,97,232))){if(!o.b("I"))return;break t}if(o.cursor=t,!o.m("y"))break s;if(o.d=o.cursor,!o.b("Y"))return}o.cursor=s;break}if(o.cursor=s,o.cursor>=o.a)break r;o.cursor++}continue}o.cursor=r;break}}(),o.cursor=n,n=o.cursor,function(){for(l=v=o.a;!o.i(k,97,232);){if(o.cursor>=o.a)return;o.cursor++}for(;!o.k(k,97,232);){if(o.cursor>=o.a)return;o.cursor++}for(3>(v=o.cursor)&&(v=3);!o.i(k,97,232);){if(o.cursor>=o.a)return;o.cursor++}for(;!o.k(k,97,232);){if(o.cursor>=o.a)return;o.cursor++}l=o.cursor}(),o.cursor=n,o.f=o.cursor,o.cursor=o.a,function(){var r,e=o.a-o.cursor;r:if(o.d=o.cursor,0!=(r=o.h(a)))switch(o.c=o.cursor,r){case 1:if(!s())break r;if(!o.b("heid"))return;break;case 2:if(!u())break r;break;case 3:if(!s()||!o.q(g,97,232))break r;if(!o.e())return}o.cursor=o.a-e,e=o.a-o.cursor,c(),o.cursor=o.a-e,e=o.a-o.cursor;r:if(o.d=o.cursor,o.g("heid")&&(o.c=o.cursor,t())){if(r=o.a-o.cursor,o.g("c"))break r;if(o.cursor=o.a-r,!o.e())return;o.d=o.cursor,o.g("en")&&(o.c=o.cursor,u())}o.cursor=o.a-e,e=o.a-o.cursor;r:if(o.d=o.cursor,0!=(r=o.h(f)))switch(o.c=o.cursor,r){case 1:if(!t())break r;if(!o.e())return;i:{r=o.a-o.cursor;s:if(o.d=o.cursor,o.g("ig")&&(o.c=o.cursor,t())){var h=o.a-o.cursor;if(o.g("e"))break s;if(o.cursor=o.a-h,!o.e())return;break i}if(o.cursor=o.a-r,!i())break r}break;case 2:if(!t()||(r=o.a-o.cursor,o.g("e")))break r;if(o.cursor=o.a-r,!o.e())return;break;case 3:if(!t())break r;if(!o.e())return;if(!c())break r;break;case 4:if(!t())break r;if(!o.e())return;break;case 5:if(!t()||!j)break r;if(!o.e())return}o.cursor=o.a-e,e=o.a-o.cursor,o.q(d,73,232)&&(r=o.a-o.cursor,0!=o.h(b)&&o.q(k,97,232)&&(o.cursor=o.a-r,o.d=o.cursor,!(o.cursor<=o.f)&&(o.cursor--,o.c=o.cursor,!o.e())))||(o.cursor=o.a-e)}(),o.cursor=o.f,n=o.cursor;r:for(;;){var m=o.cursor;i:if(o.c=o.cursor,0!=(r=o.o(h))){switch(o.d=o.cursor,r){case 1:if(!o.b("y"))break r;break;case 2:if(!o.b("i"))break r;break;case 3:if(o.cursor>=o.a)break i;o.cursor++}continue}o.cursor=m;break}return o.cursor=n,!0},this.stemWord=function(r){return o.p(r),this.l(),o.j}};export function stemmer(r){return s.stemWord(r)}export const language="dutch";