
    hh                    f    d dl mZ d dlmZmZ d dlmZ erd dlmZ  G d dee                   ZdS )    )annotations)TYPE_CHECKINGGeneric)SeriesT)NonNestedLiteralc                  6    e Zd ZddZddZddZdd
ZddZdS )SeriesListNamespaceseriesr   returnNonec                    || _         d S )N)_narwhals_series)selfr
   s     K/var/www/histauto/venv/lib/python3.11/site-packages/narwhals/series_list.py__init__zSeriesListNamespace.__init__   s     &    c                x    | j                             | j         j        j                                                  S )aM  Return the number of elements in each list.

        Null values count towards the total.

        Examples:
            >>> import pyarrow as pa
            >>> import narwhals as nw
            >>> s_native = pa.chunked_array([[[1, 2], [3, 4, None], None, []]])
            >>> s = nw.from_native(s_native, series_only=True)
            >>> s.list.len().to_native()  # doctest: +ELLIPSIS
            <pyarrow.lib.ChunkedArray object at ...>
            [
              [
                2,
                3,
                null,
                0
              ]
            ]
        )r   _with_compliant_compliant_serieslistlenr   s    r   r   zSeriesListNamespace.len   s7    * $44!38<<>>
 
 	
r   c                x    | j                             | j         j        j                                                  S )as  Get the unique/distinct values in the list.

        Null values are included in the result. The order of unique values is not guaranteed.

        Examples:
            >>> import polars as pl
            >>> import narwhals as nw
            >>> s_native = pl.Series([[1, 1, 2], [3, 3, None], None, []])
            >>> s = nw.from_native(s_native, series_only=True)
            >>> s.list.unique().to_native()  # doctest: +NORMALIZE_WHITESPACE
            shape: (4,)
            Series: '' [list[i64]]
            [
               [1, 2]
               [null, 3]
               null
               []
            ]
        )r   r   r   r   uniquer   s    r   r   zSeriesListNamespace.unique(   s7    ( $44!38??AA
 
 	
r   itemr   c                z    | j                             | j         j        j                            |                    S )aF  Check if sublists contain the given item.

        Arguments:
            item: Item that will be checked for membership.

        Examples:
            >>> import polars as pl
            >>> import narwhals as nw
            >>> s_native = pl.Series([[1, 2], None, []])
            >>> s = nw.from_native(s_native, series_only=True)
            >>> s.list.contains(1).to_native()  # doctest: +NORMALIZE_WHITESPACE
            shape: (3,)
            Series: '' [bool]
            [
                    true
                    null
                    false
            ]
        )r   r   r   r   contains)r   r   s     r   r   zSeriesListNamespace.contains@   s9    ( $44!38AA$GG
 
 	
r   indexintc                (   t          |t                    s'dt          |          j         d}t	          |          |dk     rd| d}t          |          | j                            | j        j        j	        
                    |                    S )a  Return the value by index in each list.

        Negative indices are not accepted.

        Examples:
            >>> import polars as pl
            >>> import narwhals as nw
            >>> s_native = pl.Series([[1, 2], [3, 4, None], [None, 5]])
            >>> s = nw.from_native(s_native, series_only=True)
            >>> s.list.get(1).to_native()  # doctest: +NORMALIZE_WHITESPACE
            shape: (3,)
            Series: '' [i64]
            [
                    2
                    4
                    5
            ]
        z'Index must be of type 'int'. Got type 'z
' instead.r   zIndex z8 is out of bounds: should be greater than or equal to 0.)
isinstancer   type__name__	TypeError
ValueErrorr   r   r   r   get)r   r   msgs      r   r&   zSeriesListNamespace.getX   s    & %%% 	!Z$u++:NZZZ  C.. 199Z5ZZZCS//!$44!38<<UCC
 
 	
r   N)r
   r   r   r   )r   r   )r   r   r   r   )r   r   r   r   )r#   
__module____qualname__r   r   r   r   r&    r   r   r	   r	      sx        ' ' ' '
 
 
 
2
 
 
 
0
 
 
 
0
 
 
 
 
 
r   r	   N)	
__future__r   typingr   r   narwhals.typingr   r   r	   r*   r   r   <module>r.      s    " " " " " " ) ) ) ) ) ) ) ) # # # # # # 1000000l
 l
 l
 l
 l
''* l
 l
 l
 l
 l
r   