
    PfL                     R    d dl mZ ddlmZ  G d d          Z G d d          ZdS )	    )Optional   )	to_stringc            	       F    e Zd ZdZ	 d
dededee         ddfdZdefd	ZdS )
Suggestionz`
    Represents a single suggestion being sent or returned from the
    autocomplete server
          ?Nstringscorepayloadreturnc                 d    t          |          | _        t          |          | _        || _        d S N)r   r	   r   r
   )selfr	   r
   r   s       R/var/www/html/env/lib/python3.11/site-packages/redis/commands/search/suggestion.py__init__zSuggestion.__init__   s-      '' ))


    c                     | j         S r   )r	   )r   s    r   __repr__zSuggestion.__repr__   s
    {r   )r   N)	__name__
__module____qualname____doc__strfloatr   r   r    r   r   r   r      s}          IM "'8@	   #      r   r   c                   ,    e Zd ZdZdededdfdZd ZdS )SuggestionParserz
    Internal class used to parse results from the `SUGGET` command.
    This needs to consume either 1, 2, or 3 values at a time from
    the return value depending on what objects were requested
    with_scoreswith_payloadsr   Nc                     || _         || _        |r|rd| _        d| _        d| _        n0|rd| _        d| _        n|rd| _        d| _        nd| _        d| _        || _        d S )N   r      )r   r   sugsize	_scoreidx_payloadidx_sugs)r   r   r   rets       r   r   zSuggestionParser.__init__   s    &* 	 = 	 DLDN D 	 DLDNN 	 DL DDLDN


r   c              #   2  K   t          dt          | j                  | j                  D ]k}| j        |         }| j        r"t          | j        || j        z                      nd}| j        r| j        || j        z            nd }t          |||          V  ld S )Nr   r   )
rangelenr'   r$   r   r   r%   r   r&   r   )r   issr
   r   s        r   __iter__zSuggestionParser.__iter__2   s      q#dj//4<88 	1 	1AAB=A=MVE$*Q%78999SVE:>:LVdjT%5!566RVGR000000		1 	1r   )r   r   r   r   boolr   r.   r   r   r   r   r      sV         D  t    (1 1 1 1 1r   r   N)typingr   _utilr   r   r   r   r   r   <module>r2      s                      " 1  1  1  1  1  1  1  1  1  1r   