ง
    ญ-Ph  ใ                  ๓x    d dl mZ d dlmZmZmZ erd dlmZ  eddฌฆ  ซ        Z G d dee         ฆ  ซ        Z	d	S )
้    )ฺannotations)ฺTYPE_CHECKINGฺGenericฺTypeVar)ฺExprฺExprTr   )ฺboundc                  ๓    e Zd Zd
dZddZd	S )ฺExprStructNamespaceฺexprr   ฺreturnฺNonec                ๓    || _         d S ฉN)ฺ_expr)ฺselfr   s     ๚T/var/www/html/test/jupyter/venv/lib/python3.11/site-packages/narwhals/expr_struct.pyฺ__init__zExprStructNamespace.__init__   s    ุ


๓    ฺnameฺstrc                ๓B      j                               fdฆ  ซ        S )u  Retrieve a Struct field as a new expression.

        Arguments:
            name: Name of the struct field to retrieve.

        Returns:
            A new expression.

        Examples:
            >>> import polars as pl
            >>> import narwhals as nw
            >>> df_native = pl.DataFrame(
            ...     {"user": [{"id": "0", "name": "john"}, {"id": "1", "name": "jane"}]}
            ... )
            >>> df = nw.from_native(df_native)
            >>> df.with_columns(name=nw.col("user").struct.field("name"))
            โโโโโโโโโโโโโโโโโโโโโโโโโ
            |  Narwhals DataFrame   |
            |-----------------------|
            |shape: (2, 2)          |
            |โโโโโโโโโโโโโโโโฌโโโโโโโ|
            |โ user         โ name โ|
            |โ ---          โ ---  โ|
            |โ struct[2]    โ str  โ|
            |โโโโโโโโโโโโโโโโชโโโโโโโก|
            |โ {"0","john"} โ john โ|
            |โ {"1","jane"} โ jane โ|
            |โโโโโโโโโโโโโโโโดโโโโโโโ|
            โโโโโโโโโโโโโโโโโโโโโโโโโ
        c                ๓h    j                              | ฆ  ซ        j                             ฆ  ซ        S r   )r   ฺ_to_compliant_exprฺstructฺfield)ฺplxr   r   s    r   ๚<lambda>z+ExprStructNamespace.field.<locals>.<lambda>/   s(   ๘ 
ื5า5ฐcั:ิ:ิAืGาGศัMิM r   )r   ฺ_with_elementwise_op)r   r   s   ``r   r   zExprStructNamespace.field   s/   ๘๘ ๐> zื.า.ุMะMะMะMะM๑
๔ 
๐ 	
r   N)r   r   r   r   )r   r   r   r   )ฺ__name__ฺ
__module__ฺ__qualname__r   r   ฉ r   r   r   r      s<        ๐๐ ๐ ๐ ๐!
๐ !
๐ !
๐ !
๐ !
๐ !
r   r   N)
ฺ
__future__r   ฺtypingr   r   r   ฺnarwhals.exprr   r   r   r#   r   r   ๚<module>r'      s   ๐ุ "ะ "ะ "ะ "ะ "ะ "เ 2ะ 2ะ 2ะ 2ะ 2ะ 2ะ 2ะ 2ะ 2ะ 2เ๐ #ุ"ะ"ะ"ะ"ะ"ะ"เvะ&ั&ิ&๐%
๐ %
๐ %
๐ %
๐ %
' %.๑ %
๔ %
๐ %
๐ %
๐ %
r   