3
U'íc48 ã @ s¼ d dl mZ d dlmZ G dd deZG dd deZG dd deZG d d
d
eZG dd deZ G d
d deZ
G dd deZG dd deZG dd deZ
G dd deZdS )é )ÚBaseStemmer)ÚAmongc @ s< e Zd ZdZeddCdedddedddeddd ed
dd eddded
ddedddedddedddedddgZeddDdeddd edddgZeddEdFeddGdHeddIdJgZeddKd eddLdeddMd edd deddNdgZeddOdeddPd ed dQded!dRded"dSded#dTdgZ ed$dUdVed%dWdXed&dYdZed'd[d\gZ
d(d)d*dddddddddddddd+gZdddd(d)d*dddddddddddddd+gZd(d,d*dddddddddddddd+gZ
dZdZd-Zd.d/ Zd0d1 Zd2d3 Zd4d5 Zd6d7 Zd8d9 Zd:d; Zd<d= Zd>d? Zd@dA ZdBS )]ÚDutchStemmerz
This class implements the stemming algorithm defined by a snowball script.
Generated by Snowball 2.2.0 - https://snowballstem.org/
Ú r é õ áé õ äõ éé õ ëõ Ãé õ ïõ óé õ öõ úé õ üÚIÚYÚddÚkkÚttZeneÚseÚenZhedenÚsÚendÚigZingZlijkZbaarÚbarZaaÚeeZooÚuué éA é é éC Fc + C sê | j }xð| j }yÈ| j | _| jtj}|dkr2t | j | _|dkrR| jdsÒdS n|dkrj| jdsÒdS nh|dkr| jdsÒdS nP|d kr| jd
sÒdS n8|dkr²| jdsÒdS n | j | jkrÄt | j d7 _ wW n tk
rê Y nX || _ P qW || _ | j }y<| j | _| j d
s&|| _ t
| j | _| jds>dS W n t
k
rV Y nX x| j }y\y:x2| j }yæ| jtjddst
| j | _y| j }yL| j ds²t | j | _| jtjddsÒt | jdsâdS t W n tk
r Y nX || _ | j d
st
| j | _| jds2dS W n tk
rJ Y nX || _ t W n t
k
rp Y nX || _ | j | jkrt | j d7 _ qnW W n tk
r¸ Y nX w\W n tk
rÖ Y nX || _ P q\W dS )Nr r ÚaFr Úer Úir Úor ÚuÚyr éa éè r T)ÚcursorÚbraÚ
find_amongr Úa_0Úlab0ÚketÚ
slice_fromÚlimitZeq_sÚlab1Zin_groupingÚg_vÚlab4Úlab6Úlab5Úlab3Úlab2)ÚselfÚv_1Úv_2Ú among_varÚv_3Úv_4Úv_5Úv_6© rG úH/tmp/pip-build-gk9425m9/snowballstemmer/snowballstemmer/dutch_stemmer.pyZ__r_preludeI s¶
zDutchStemmer.__r_preludec C sÜ | j | _| j | _| jtjdds$dS | jd7 _| jtjddsFdS | jd7 _| j| _y| jdk snt d| _W n tk
r Y nX | jtjdds dS | jd7 _| jtjddsÂdS | jd7 _| j| _dS )Nr. r/ Fr r T) r7 ÚI_p1ÚI_p2Zgo_out_groupingr r9 r0 Zgo_in_groupingr4 )r? rG rG rH Z__r_mark_regions s.
zDutchStemmer.__r_mark_regionsc C s® x¨| j }y| j | _| jtj}|dkr,t | j | _|dkrL| jdsdS n8|dkrd| jdsdS n | j | jkrvt | j d7 _ wW n tk
r Y nX || _ P qW dS )Nr r r- Fr r* T) r0 r1 r2 r Úa_1r4 r5 r6 r7 )r? r@ rB rG rG rH Z__r_postlude¸ s.
zDutchStemmer.__r_postludec C s | j | jksdS dS )NFT)rI r0 )r? rG rG rH Z__r_R1Ñ s zDutchStemmer.__r_R1c C s | j | jksdS dS )NFT)rJ r0 )r? rG rG rH Z__r_R2Ö s zDutchStemmer.__r_R2c C sj | j | j }| jtjdkr dS | j | | _| j| _| j| jkrDdS | jd8 _| j| _| j sfdS dS )Nr Fr T) r7 r0 Úfind_among_br Úa_2r5 Úlimit_backwardr1 Ú slice_del)r? r@ rG rG rH Z__r_undoubleÛ s zDutchStemmer.__r_undoublec C s~ d| _ | j| _| jdsdS | j| _| j s0dS | j| j }| jtj ddsPdS | j| | _| j
shdS d| _ | j szdS dS )NFr) r. r/ T)Ú B_e_foundr0 r5 Úeq_s_br1 Ú_DutchStemmer__r_R1r7 Úout_grouping_br r9 rO Ú_DutchStemmer__r_undouble)r? r@ rG rG rH Z__r_e_endingê s"