
    [g                     $    S SK Jr   " S S5      rg)    )default_separatorc                       \ rS rSrSrSrSrSrSrSr	S r
\S	 5       rS
 rS rS rS rS rS rS rS rS rS rS rS rS rS rSrg)
QueryLexer   EOSFIELDTERMEDIT_DISTANCEBOOSTPRESENCEc                 h    / U l         Xl        [        U5      U l        SU l        SU l        / U l        g Nr   )lexemesstringlenlengthposstartescape_char_positions)selfr   s     2/usr/lib/python3/dist-packages/lunr/query_lexer.py__init__QueryLexer.__init__   s/    &k
%'"    c                 4    U R                   U R                  -
  $ N)r   r   r   s    r   widthQueryLexer.width   s    xx$**$$r   c                     U R                   U R                  :X  a  U =R                  S-  sl        U R                  U l         g N   )r   r   r   s    r   ignoreQueryLexer.ignore   s*    ::!HHMHXX
r   c                 .    U =R                   S-  sl         g r!   )r   r   s    r   backupQueryLexer.backup   s    Ar   c                 &   U R                  5       nXR                  :w  aR  S[        U5      s=:  a  S:  a<  O  O9U R                  5       nXR                  :w  a  S[        U5      s=:  a  S:  a  M7  O  XR                  :w  a  U R                  5         g g )N/   :   )nextr   ordr&   r   chars     r   accept_digit_runQueryLexer.accept_digit_run"   sh    yy{hhBT$7R$799;D hhBT$7R$7 88KKM r   c                 T    U R                  5       nU(       a  U" 5       nU(       a  M  g g r   )lex_text)r   states     r   runQueryLexer.run*   s    GE er   c                    / nU R                   nU R                   H%  nUR                  U R                  X# 5        US-   nM'     UR                  U R                  X R                   5        / U l        SR                  U5      $ )Nr"    )r   r   appendr   r   join)r   	subslicesslice_startescape_char_positions       r   slice_stringQueryLexer.slice_string/   sv    	jj$($>$> T[[JK.2K %? 	[88<=%'"wwy!!r   c                     U R                   U R                  :  a  U R                  $ U R                  U R                      nU =R                   S-  sl         U$ r!   )r   r   r   r   r-   s     r   r+   QueryLexer.next<   s?    88t{{"88O{{488$Ar   c                     U R                   R                  UU R                  5       U R                  U R                  S.5        U R                  U l        g )N)typer   r   end)r   r8   r=   r   r   )r   type_s     r   emitQueryLexer.emitD   sC    ++-xx		
 XX
r   c                 ~    U R                   R                  U R                  S-
  5        U =R                  S-  sl        g r!   )r   r8   r   r   s    r   escape_characterQueryLexer.escape_characterO   s+    ""))$((Q,7Ar   c                     U R                  5         U R                  U R                  5        U R                  5         U R                  $ r   )r&   rE   r   r#   r2   r   s    r   	lex_fieldQueryLexer.lex_fieldS   s.    		$**}}r   c                     U R                   S:  a+  U R                  5         U R                  U R                  5        U R	                  5         U R
                  $ r!   )r   r&   rE   r	   r#   r2   r   s    r   lex_termQueryLexer.lex_termY   s9    ::>KKMIIdii }}r   c                     U R                  5         U R                  5         U R                  U R                  5        U R                  $ r   )r#   r/   rE   r
   r2   r   s    r   lex_edit_distanceQueryLexer.lex_edit_distanceb   s3    		$$$%}}r   c                     U R                  5         U R                  5         U R                  U R                  5        U R                  $ r   )r#   r/   rE   r   r2   r   s    r   	lex_boostQueryLexer.lex_boosth   s1    		$**}}r   c                 \    U R                   S:  a  U R                  U R                  5        g g r   )r   rE   r	   r   s    r   lex_EOSQueryLexer.lex_EOSn   s"    ::>IIdii  r   c                 &    U R                  5       nXR                  :X  a  U R                  $ [        U5      S:X  a  U R	                  5         MM  US:X  a  U R
                  $ US:X  aG  U R                  5         U R                  S:  a  U R                  U R                  5        U R                  $ US:X  aG  U R                  5         U R                  S:  a  U R                  U R                  5        U R                  $ US:X  a7  U R                  S:X  a'  U R                  U R                  5        U R                  $ US:X  a7  U R                  S:X  a'  U R                  U R                  5        U R                  $ [        U5      (       a  U R                  $ GM  )	N\   :~r   ^+r"   -)r+   r   rW   r,   rH   rK   r&   r   rE   r	   rQ   rT   r   r2   r   rN   r-   s     r   r2   QueryLexer.lex_textr   s0   99;Dxx||#4yB%%'s{~~%s{::>IIdii(---s{::>IIdii(~~% s{tzzQ		$--(}}$ s{tzzQ		$--(}}$ &&}}$M r   )r   r   r   r   r   r   N)__name__
__module____qualname____firstlineno__r   r   r	   r
   r   r   r   propertyr   r#   r&   r/   r4   r=   r+   rE   rH   rK   rN   rQ   rT   rW   r2   __static_attributes__ r   r   r   r      s    
CED#MEH( % %
"	!'%r   r   N)lunr.tokenizerr   r   rg   r   r   <module>ri      s    ,U% U%r   