UNPKG

@orama/stemmers

Version:
1 lines 5.52 kB
"use strict";function _export(r,t){for(var s in t)Object.defineProperty(r,s,{enumerable:!0,get:Object.getOwnPropertyDescriptor(t,s).get})}Object.defineProperty(exports,"__esModule",{value:!0}),_export(exports,{get language(){return language},get stemmer(){return stemmer}});var g=!0,p=!1;function C(){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,t,s){if(this.cursor>=this.a)return p;var i=this.j.charCodeAt(this.cursor);return i>s||i<t||0==(r[(i-=t)>>>3]&1<<(7&i))?p:(this.cursor++,g)},this.n=function(r,t,s){if(this.cursor<=this.f)return p;var i=this.j.charCodeAt(this.cursor-1);return i>s||i<t||0==(r[(i-=t)>>>3]&1<<(7&i))?p:(this.cursor--,g)},this.k=function(r,t,s){if(this.cursor>=this.a)return p;var i=this.j.charCodeAt(this.cursor);return i>s||i<t||0==(r[(i-=t)>>>3]&1<<(7&i))?(this.cursor++,g):p},this.q=function(r,t,s){if(this.cursor<=this.f)return p;var i=this.j.charCodeAt(this.cursor-1);return i>s||i<t||0==(r[(i-=t)>>>3]&1<<(7&i))?(this.cursor--,g):p},this.m=function(r){return this.a-this.cursor<r.length||this.j.slice(this.cursor,this.cursor+r.length)!=r?p:(this.cursor+=r.length,g)},this.g=function(r){return this.cursor-this.f<r.length||this.j.slice(this.cursor-r.length,this.cursor)!=r?p:(this.cursor-=r.length,g)},this.o=function(r){for(var t=0,s=r.length,i=this.cursor,h=this.a,c=0,e=0,a=p;;){var o,u=t+(s-t>>>1),n=0,f=c<e?c:e,b=r[u];for(o=f;o<b[0].length;o++){if(i+f==h){n=-1;break}if(0!=(n=this.j.charCodeAt(i+f)-b[0].charCodeAt(o)))break;f++}if(0>n?(s=u,e=f):(t=u,c=f),1>=s-t){if(0<t||s==t||a)break;a=g}}for(;;){if(c>=(b=r[t])[0].length&&(this.cursor=i+b[0].length,4>b.length||(t=b[3](this),this.cursor=i+b[0].length,t)))return b[2];if(0>(t=b[1]))return 0}},this.h=function(r){for(var t=0,s=r.length,i=this.cursor,h=this.f,c=0,e=0,a=p;;){var o,u=t+(s-t>>1),n=0,f=c<e?c:e,b=r[u];for(o=b[0].length-1-f;0<=o;o--){if(i-f==h){n=-1;break}if(0!=(n=this.j.charCodeAt(i-1-f)-b[0].charCodeAt(o)))break;f++}if(0>n?(s=u,e=f):(t=u,c=f),1>=s-t){if(0<t||s==t||a)break;a=g}}for(;;){if(c>=(b=r[t])[0].length&&(this.cursor=i-b[0].length,4>b.length||(t=b[3](this),this.cursor=i-b[0].length,t)))return b[2];if(0>(t=b[1]))return 0}},this.s=function(r,t,s){var i=s.length-(t-r);return this.j=this.j.slice(0,r)+s+this.j.slice(t),this.a+=i,this.cursor>=t?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?p:g},this.b=function(r){var t=p;return this.t()&&(this.s(this.c,this.d,r),t=g),t},this.e=function(){return this.b("")},this.r=function(r,t,s){t=this.s(r,t,s),r<=this.c&&(this.c+=t),r<=this.d&&(this.d+=t)},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)}}function stem(){var r=new C,t=[["b'",-1,1],["bh",-1,4],["bhf",1,2],["bp",-1,8],["ch",-1,5],["d'",-1,1],["d'fh",5,2],["dh",-1,6],["dt",-1,9],["fh",-1,2],["gc",-1,5],["gh",-1,7],["h-",-1,1],["m'",-1,1],["mb",-1,4],["mh",-1,10],["n-",-1,1],["nd",-1,6],["ng",-1,7],["ph",-1,8],["sh",-1,3],["t-",-1,1],["th",-1,9],["ts",-1,3]],s=[["\xedochta",-1,1],["a\xedochta",0,1],["ire",-1,2],["aire",2,2],["abh",-1,1],["eabh",4,1],["ibh",-1,1],["aibh",6,1],["amh",-1,1],["eamh",8,1],["imh",-1,1],["aimh",10,1],["\xedocht",-1,1],["a\xedocht",12,1],["ir\xed",-1,2],["air\xed",14,2]],i=[["\xf3ideacha",-1,6],["patacha",-1,5],["achta",-1,1],["arcachta",2,2],["eachta",2,1],["grafa\xedochta",-1,4],["paite",-1,5],["ach",-1,1],["each",7,1],["\xf3ideach",8,6],["gineach",8,3],["patach",7,5],["grafa\xedoch",-1,4],["pataigh",-1,5],["\xf3idigh",-1,6],["acht\xfail",-1,1],["eacht\xfail",15,1],["gineas",-1,3],["ginis",-1,3],["acht",-1,1],["arcacht",19,2],["eacht",19,1],["grafa\xedocht",-1,4],["arcachta\xed",-1,2],["grafa\xedochta\xed",-1,4]],h=[["imid",-1,1],["aimid",0,1],["\xedmid",-1,1],["a\xedmid",2,1],["adh",-1,2],["eadh",4,2],["faidh",-1,1],["fidh",-1,1],["\xe1il",-1,2],["ain",-1,2],["tear",-1,2],["tar",-1,2]],c=[17,65,16,0,0,0,0,0,0,0,0,0,0,0,0,0,1,17,4,2],e=0,a=0,o=0;this.l=function(){var u,n=r.cursor;if(r.c=r.cursor,0!=(u=r.o(t)))switch(r.d=r.cursor,u){case 1:r.e();break;case 2:r.b("f");break;case 3:r.b("s");break;case 4:r.b("b");break;case 5:r.b("c");break;case 6:r.b("d");break;case 7:r.b("g");break;case 8:r.b("p");break;case 9:r.b("t");break;case 10:r.b("m")}r.cursor=n,e=a=o=r.a,n=r.cursor;r:{for(;!r.i(c,97,250);){if(r.cursor>=r.a)break r;r.cursor++}for(o=r.cursor;!r.k(c,97,250);){if(r.cursor>=r.a)break r;r.cursor++}for(a=r.cursor;!r.i(c,97,250);){if(r.cursor>=r.a)break r;r.cursor++}for(;!r.k(c,97,250);){if(r.cursor>=r.a)break r;r.cursor++}e=r.cursor}if(r.cursor=n,r.f=r.cursor,r.cursor=r.a,n=r.a-r.cursor,r.d=r.cursor,0!=(u=r.h(s)))switch(r.c=r.cursor,u){case 1:a<=r.cursor&&r.e();break;case 2:e<=r.cursor&&r.e()}if(r.cursor=r.a-n,n=r.a-r.cursor,r.d=r.cursor,0!=(u=r.h(i)))switch(r.c=r.cursor,u){case 1:e<=r.cursor&&r.e();break;case 2:r.b("arc");break;case 3:r.b("gin");break;case 4:r.b("graf");break;case 5:r.b("paite");break;case 6:r.b("\xf3id")}if(r.cursor=r.a-n,n=r.a-r.cursor,r.d=r.cursor,0!=(u=r.h(h)))switch(r.c=r.cursor,u){case 1:o<=r.cursor&&r.e();break;case 2:a<=r.cursor&&r.e()}return r.cursor=r.a-n,r.cursor=r.f,g},this.stemWord=function(t){return r.p(t),this.l(),r.j}}let stemmerInstance=new stem;function stemmer(r){return stemmerInstance.stemWord(r)}let language="irish";