
    hJ<                    L   % S r SSKJr  SSKJrJrJrJrJrJ	r	J
r
Jr  SSKJrJr  SSKJrJr  SSKJrJrJrJrJrJrJrJrJrJrJr  \(       Ga  SSKJrJ r   SSK!J"r"  SS	KJ#r#  SS
K$r$SS
K%r&SS
K'r(SS
K)r*SS
K+J,r-  SSK.J/r0  SSK1J2r2J3r3J4r4  SSK5J6r6  SSK7J8r8  SSK9J:r:  SSK;J<r<  SSK=J>r>  SSK?J@r@  SSKAJBrB  SSKCJDrD  SSKEJFrFJGrGJHrHJIrI  \
" S5      rJSrKS\LS'   \S   rMS\LS'   \S   rNS\LS'   \S   rOS\LS'   \S    rPS\LS!'   \S"   rQS\LS#'   \S$   rRS\LS%'   \S&   rSS\LS''   S(rTS\LS)'   S*rUS\LS+'   S,rVS\LS-'   S.rWS\LS/'   \\M\R                  4   rYS\LS0'   \\N\R                  4   r[S\LS1'   \\O\R                  4   r]S\LS2'   \\P\R                  4   r_S\LS3'   \\R\R                  4   raS\LS4'   \\Q\R                  \R                  \R                  4   reS\LS5'   \\S\R                  \R                  \R                  4   riS\LS6'   S7rjS\LS8'   S9rkS\LS:'   S;rlS\LS<'   S=rmS\LS>'   S?rnS\LS@'   SAroS\LSB'   SCrpS\LSD'   \\R                  \R                  \R                  \R                  \R                  4   rqS\LSE'    " SF SG\ \	5      rr " SH SI\G\r\	5      rs " SJ SK\I\r\	5      rt " SL SM\	5      ru " SN SO\s\	5      rv " SP SQ\t\	5      rw " SR SS\	5      rx " ST SU\s\	5      ry " SV SW\t\	5      rzSXr{S\LSY'   SZr|S\LS['   S\r}S\LS]'   S^r~S\LS_'   S`rS\LSa'   SbrS\LSc'   SdrS\LSe'   SfrS\LSg'   ShrS\LSi'   SjrS\LSk'   SlrS\LSm'   SnrS\LSo'   SprS\LSq'   SrrS\LSs'   StrS\LSu'   SvrS\LSw'   Sx/r " Sy Sx\\   5      rSSz jrSS{ jrSS| jr\rS}\LS~'   \rS\LS'   \rS\LS'   \rS\LS'   SS jrSS jrSS jrSS jrSS jrSS jrg
)z2Narwhals-level equivalent of `CompliantNamespace`.    )annotations)TYPE_CHECKINGAnyCallableGenericLiteralProtocolTypeVaroverload)CompliantNamespaceAnyCompliantNamespaceT_co)ImplementationVersion)get_cudf	get_modin
get_pandas
get_polarsget_pyarrowis_dask_dataframeis_duckdb_relationis_ibis_tableis_pyspark_connect_dataframeis_pyspark_dataframeis_sqlframe_dataframe)
CollectionSized)
ModuleType)ClassVarN)	DataFrame)Self	TypeAliasTypeIsArrowNamespaceDaskNamespaceDuckDBNamespaceIbisNamespacePandasLikeNamespacePolarsNamespace)SQLFrameDataFrameSparkLikeNamespace)DataFrameLikeNativeFrameNativeLazyFrameNativeSeriesTzCallable[[Any], TypeIs[T]]r!   _Guardpolars_Polarspyarrow_Arrowdask_Daskduckdb_DuckDB)pandascudfmodin_PandasLikeibis_Ibis)pysparksqlframezpyspark[connect]
_SparkLikez_PandasLike | _Arrow
_EagerOnlyz_Polars | _EagerOnly_EagerAllowedz$_SparkLike | _Dask | _DuckDB | _Ibis	_LazyOnlyz_Polars | _LazyOnly_LazyAllowedPolarsArrowDaskDuckDBIbis
PandasLike	SparkLikezPandasLike | Arrow	EagerOnlyzEagerOnly | PolarsEagerAllowedz SparkLike | Dask | DuckDB | IbisLazyOnlyzLazyOnly | PolarsLazyAllowedz_EagerAllowed | _LazyAllowedBackendNamez)BackendName | Implementation | ModuleTypeIntoBackendzWNamespace[PandasLikeNamespace] | Namespace[ArrowNamespace] | Namespace[PolarsNamespace]EagerAllowedNamespaceEagerAllowedImplementationc                      \ rS rSr% S\S'    SS jrSS jrSS jr\SS j5       r	\SS j5       r
S	S	S
.SS jjrSSS jjrSS jrSrg)_BasePandasLikef   r   indexc                   g N )selfkeys     fC:\Users\julio\OneDrive\Documentos\Trabajo\Ideas Frescas\venv\Lib\site-packages\narwhals/_namespace.py__getitem___BasePandasLike.__getitem__j   s    3    c                    g ra   rb   rc   others     re   __mul___BasePandasLike.__mul__k   s    Crh   c                    g ra   rb   rj   s     re   __floordiv___BasePandasLike.__floordiv__l   s    QTrh   c                    g ra   rb   rc   s    re   loc_BasePandasLike.locm   s    !rh   c                    g ra   rb   rr   s    re   shape_BasePandasLike.shapeo   s    ,/rh   .)axiscopyc                   g ra   rb   )rc   labelsrx   ry   s       re   set_axis_BasePandasLike.set_axisq   s    WZrh   c                    g ra   rb   )rc   deeps     re   ry   _BasePandasLike.copyr   s    #rh   c                   g)zD`inplace=False` is required to avoid (incorrect?) default overloads.Nrb   )rc   inplaceargskwdss       re   rename_BasePandasLike.renames   s    rh   rb   N)rd   r   returnr   )rk   z float | Collection[float] | Selfr   r    )r   r   )r   ztuple[int, ...])r{   r   rx   r   ry   boolr   r    .)r   r   r   r    )r   r   r   zLiteral[False]r   r   r   r    )__name__
__module____qualname____firstlineno____annotations__rf   rl   ro   propertyrs   rv   r|   ry   r   __static_attributes__rb   rh   re   r]   r]   f   s?    
O6OT	! 
!	/ 
/7:Z5	rh   r]   c                      \ rS rSrSrg)_BasePandasLikeFramew   rb   N)r   r   r   r   r   rb   rh   re   r   r   w   s    rh   r   c                  "    \ rS rSrSSS jjrSrg)_BasePandasLikeSeriesy   c                    g ra   rb   )rc   condrk   r   s       re   where_BasePandasLikeSeries.wherez   s    #rh   rb   Nr   )r   r   rk   r   r   r   r   r   )r   r   r   r   r   r   rb   rh   re   r   r   y   s    MMrh   r   c                       \ rS rSr% S\S'   Srg)_NativeDask|   type[pd.DataFrame]_partition_typerb   Nr   r   r   r   r   r   rb   rh   re   r   r   |   s    ++rh   r   c                      \ rS rSrSS jrSrg)_CuDFDataFrame   c                    g ra   rb   rc   r   r   s      re   to_pylibcudf_CuDFDataFrame.to_pylibcudf       rh   rb   Nr   r   r   r   r   r   r   r   r   r   r   r   rb   rh   re   r   r          Crh   r   c                      \ rS rSrSS jrSrg)_CuDFSeries   c                    g ra   rb   r   s      re   r   _CuDFSeries.to_pylibcudf   r   rh   rb   Nr   r   rb   rh   re   r   r      r   rh   r   c                  <    \ rS rSrSS jrSS jrSS jrSS jrSrg)	_NativeIbis   c                    g ra   rb   r   s      re   sql_NativeIbis.sql   s    srh   c                    g ra   rb   r   s      re   __pyarrow_result___NativeIbis.__pyarrow_result__   s    crh   c                    g ra   rb   r   s      re   __pandas_result___NativeIbis.__pandas_result__       Srh   c                    g ra   rb   r   s      re   __polars_result___NativeIbis.__polars_result__   r   rh   rb   Nr   )	r   r   r   r   r   r   r   r   r   rb   rh   re   r   r      s    :IHHrh   r   c                       \ rS rSr% S\S'   Srg)_ModinDataFrame   r   _pandas_classrb   Nr   rb   rh   re   r   r      s    ))rh   r   c                       \ rS rSr% S\S'   Srg)_ModinSeries   ztype[pd.Series[Any]]r   rb   Nr   rb   rh   re   r   r      s    ++rh   r   z'pl.DataFrame | pl.LazyFrame | pl.Series_NativePolarszpa.Table | pa.ChunkedArray[Any]_NativeArrowzduckdb.DuckDBPyRelation_NativeDuckDBzpd.DataFrame | pd.Series[Any]_NativePandasz_ModinDataFrame | _ModinSeries_NativeModinz_CuDFDataFrame | _CuDFSeries_NativeCuDFz+pd.Series[Any] | _CuDFSeries | _ModinSeries_NativePandasLikeSeriesz/pd.DataFrame | _CuDFDataFrame | _ModinDataFrame_NativePandasLikeDataFramez3_NativePandasLikeDataFrame |_NativePandasLikeSeries_NativePandasLiker/   _NativeSQLFramezpyspark_sql.DataFrame_NativePySparkPySparkConnectDataFrame_NativePySparkConnectz8_NativeSQLFrame | _NativePySpark | _NativePySparkConnect_NativeSparkLikezo_NativePolars | _NativeArrow | _NativePandasLike | _NativeSparkLike | _NativeDuckDB | _NativeDask | _NativeIbisNativeKnownz<NativeFrame | NativeSeries | NativeLazyFrame | DataFrameLikeNativeUnknownzNativeKnown | NativeUnknown	NativeAny	Namespacec                    ^  \ rS rSr% S\S'   \R                  rS\S'   S#S jrS$U 4S jjr	S%S jr
\S&S	 j5       r\S'S
 j5       r\S(S j5       r\\S)S j5       5       r\\S*S j5       5       r\\S+S j5       5       r\\S,S j5       5       r\\S-S j5       5       r\\S.S j5       5       r\\S/S j5       5       r\\S0S j5       5       r\\    S1S j5       5       r\      S2S j5       r\\    S3S j5       5       r\\    S4S j5       5       r\\S5S j5       5       r\\    S6S j5       5       r\\    S7S j5       5       r\\S8S j5       5       r\\S9S j5       5       r\\    S:S j5       5       r\\    S;S j5       5       r\\    S<S j5       5       r\\    S=S  j5       5       r\      S>S! j5       rS"rU =r$ )?r      r   _compliant_namespacezClassVar[Version]_versionc                   Xl         g ra   r   )rc   	namespaces     re   __init__Namespace.__init__   s    $-!rh   c                  > [         TU ]  " U0 UD6  [        U[        5      (       a  Xl        g S[         S[        U5      R                  < 3n[        U5      e)Nz	Expected z	 but got )super__init_subclass__
isinstancer   r   typer   	TypeError)clsversionr   r   msg	__class__s        re   r   Namespace.__init_subclass__   sN    !4040gw''"LgYiW0F0F/IJCC. rh   c                H    S[        U R                  5      R                   S3$ )Nz
Namespace[])r   	compliantr   rr   s    re   __repr__Namespace.__repr__   s!    D099:!<<rh   c                    U R                   $ ra   r   rr   s    re   r   Namespace.compliant   s    (((rh   c                .    U R                   R                  $ ra   )r   _implementationrr   s    re   implementationNamespace.implementation   s    ~~---rh   c                    U R                   $ ra   )r   rr   s    re   r   Namespace.version   s    }}rh   c                   g ra   rb   r   backends     re   from_backendNamespace.from_backend       UXrh   c                   g ra   rb   r   s     re   r   r          MPrh   c                   g ra   rb   r   s     re   r   r      s    KNrh   c                   g ra   rb   r   s     re   r   r      s    SVrh   c                   g ra   rb   r   s     re   r   r      r  rh   c                   g ra   rb   r   s     re   r   r          ILrh   c                   g ra   rb   r   s     re   r   r      r  rh   c                   g ra   rb   r   s     re   r   r      s    NQrh   c                   g ra   rb   r   s     re   r   r           ,/rh   c               l   [         R                  " U5      nUR                  5       nU R                  nUR	                  5       (       a  SSKJn  U" X$S9nOUR                  5       (       a  SSKJ	n  U" US9nOUR                  5       (       a  SSKJn  U" US9nOUR                  5       (       a  SSKJn	  U	" X$S9nOsUR!                  5       (       a  SSKJn
  U
" US9nOQUR'                  5       (       a  SS	KJn  U" US9nO/UR-                  5       (       a  SS
KJn  U" US9nOSn[3        U5      eU " U5      $ )a0  Instantiate from native namespace module, string, or Implementation.

Arguments:
    backend: native namespace module, string, or Implementation.

Returns:
    Namespace.

Examples:
    >>> from narwhals._namespace import Namespace
    >>> Namespace.from_backend("polars")
    Namespace[PolarsNamespace]
r   r+   )r   r   r-   )r   r#   r0   r'   r%   r)   zNot supported Implementation)r   r   _backend_versionr   is_pandas_likenarwhals._pandas_like.namespacer,   	is_polarsnarwhals._polars.namespacer.   
is_pyarrownarwhals._arrow.namespacer$   is_spark_likenarwhals._spark_like.namespacer1   	is_duckdbnarwhals._duckdb.namespacer(   is_dasknarwhals._dask.namespacer&   is_ibisnarwhals._ibis.namespacer*   AssertionError)r   r   implbackend_versionr   r,   nsr.   r$   r1   r(   r&   r*   r   s                 re   r   r      s    " **73//1,,  K$DJB^^B 1B__@0B!!I#4IB^^B 1B\\^^>w/B\\^^>w/B0C %%2wrh   c                   g ra   rb   r   natives     re   from_native_objectNamespace.from_native_object(       &)rh   c                   g ra   rb   r!  s     re   r#  r$  .  s	     HKrh   c                   g ra   rb   r!  s     re   r#  r$  4  s    WZrh   c                   g ra   rb   r!  s     re   r#  r$  8  s     ),rh   c                   g ra   rb   r!  s     re   r#  r$  >  r%  rh   c                   g ra   rb   r!  s     re   r#  r$  D  r   rh   c                   g ra   rb   r!  s     re   r#  r$  H  r   rh   c                   g ra   rb   r!  s     re   r#  r$  L  s	     ILrh   c                   g ra   rb   r!  s     re   r#  r$  R  s	     GJrh   c                   g ra   rb   r!  s     re   r#  r$  X  s     47rh   c                   g ra   rb   r!  s     re   r#  r$  ^  r  rh   c               (   [        U5      (       a  U R                  [        R                  5      $ [	        U5      (       a  U R                  [        R
                  5      $ [        U5      (       a  U R                  [        R                  5      $ [        U5      (       ag  U R                  [        U5      (       a  [        R                  5      $ [        U5      (       a  [        R                  5      $ [        R                  5      $ [        U5      (       a  U R                  [        R                  5      $ [!        U5      (       a  U R                  [        R"                  5      $ [%        U5      (       a  U R                  [        R&                  5      $ [)        U5      (       a  U R                  [        R*                  5      $ [-        U5      (       a  U R                  [        R.                  5      $ S[1        U5      R2                  < 3n[5        U5      e)NzUnsupported type: )is_native_polarsr   r   POLARSis_native_pandasPANDASis_native_arrowPYARROWis_native_spark_likeis_native_sqlframeSQLFRAMEis_native_pyspark_connectPYSPARK_CONNECTPYSPARKis_native_daskDASKis_native_duckdbDUCKDBis_native_cudfCUDFis_native_modinMODINis_native_ibisIBISr   r   r   )r   r"  r   s      re   r#  r$  d  s    F####N$9$9::f%%##N$9$9::V$$##N$:$:;;!&))##%f-- ''  -V44 $33 
 $++  F####N$7$788f%%##N$9$9::F####N$7$788V$$##N$8$899F####N$7$788&tF|'@'@&CDCC. rh   r   )r   r   r   None)r   r   r   r   r   r   r   rG  )r   str)r   r   )r   r   )r   r   )r   rR   r   zNamespace[PandasLikeNamespace])r   rM   r   Namespace[PolarsNamespace])r   rN   r   Namespace[ArrowNamespace])r   rS   r   Namespace[SparkLikeNamespace])r   rP   r   Namespace[DuckDBNamespace])r   rO   r   Namespace[DaskNamespace])r   rQ   r   Namespace[IbisNamespace])r   rU   r   rZ   )r   rY   r    Namespace[CompliantNamespaceAny])r   type[Namespace[Any]]r   rY   r   Namespace[Any])r"  r   r   rI  )r"  r   r   z<Namespace[PandasLikeNamespace[pd.DataFrame, pd.Series[Any]]])r"  r   r   rJ  )r"  r   r   rK  )r"  r   r   rL  )r"  r   r   rM  )r"  r   r   rN  )r"  r   r   z=Namespace[PandasLikeNamespace[_ModinDataFrame, _ModinSeries]])r"  r   r   z;Namespace[PandasLikeNamespace[_CuDFDataFrame, _CuDFSeries]])r"  r   r   z(Namespace[PandasLikeNamespace[Any, Any]])r"  r   r   rO  )r   rP  r"  r   r   rQ  )r   r   r   r   r   r   MAINr   r   r   r   r   r   r   r   r   classmethodr   r#  r   __classcell__)r   s   @re   r   r      sF   00"),,H..!= ) ) . .   X  XP  PN  NV  VP  PL  LL  LQ  Q/!/	)/  / 4!4,74	4 4l )")	#)  ) K"K	EK  K Z  Z,%,	&,  , )")	#)  ) X  XX  XL!L	FL  L J J	DJ  J 7&7	17  7 /"/	)/  / !!!+4!	! !rh   c                    [        5       =nS L=(       a,    [        XR                  UR                  UR                  45      $ ra   )r   r   r   Series	LazyFrame)objpls     re   r1  r1    s8    ,Bt+ 
llBIIr||41 rh   c                n    [        5       =nS L=(       a!    [        XR                  UR                  45      $ ra   )r   r   TableChunkedArray)rX  pas     re   r5  r5    s2    -B, hh(2 rh   c                    [        U 5      $ ra   )r   rX  s    re   r=  r=    s    S!!rh   z_Guard[_NativeDuckDB]r?  z_Guard[_NativeSQLFrame]r8  z_Guard[_NativePySpark]is_native_pysparkz_Guard[_NativePySparkConnect]r:  c                n    [        5       =nS L=(       a!    [        XR                  UR                  45      $ ra   )r   r   r   rV  )rX  pds     re   r3  r3    s+    ,Bt+Z
3ryy@Y0ZZrh   c                n    [        5       =nS L=(       a!    [        XR                  UR                  45      $ ra   )r   r   r   rV  )rX  mpds     re   rC  rC    s2    ;Ct+ 
mmSZZ(1 rh   c                n    [        5       =nS L=(       a!    [        XR                  UR                  45      $ ra   )r   r   r   rV  )rX  rA   s     re   rA  rA    s2    JDt+ 
nndkk*1 rh   c                `    [        U 5      =(       d    [        U 5      =(       d    [        U 5      $ ra   )r3  rA  rC  r_  s    re   is_native_pandas_likerg    s#    L!4L8Lrh   c                `    [        U 5      =(       d    [        U 5      =(       d    [        U 5      $ ra   )r8  r`  r:  r_  s    re   r7  r7    s)    3 	*S!	*$S)rh   c                    [        U 5      $ ra   )r   r_  s    re   rE  rE    s    rh   )rX  r   r   zTypeIs[_NativePolars])rX  r   r   zTypeIs[_NativeArrow])rX  r   r   zTypeIs[_NativeDask])rX  r   r   zTypeIs[_NativePandas])rX  r   r   zTypeIs[_NativeModin])rX  r   r   zTypeIs[_NativeCuDF])rX  r   r   zTypeIs[_NativePandasLike])rX  r   r   zTypeIs[_NativeSparkLike])rX  r   r   zTypeIs[_NativeIbis])__doc__
__future__r   typingr   r   r   r   r   r	   r
   r   narwhals._compliant.typingr   r   narwhals._utilsr   r   narwhals.dependenciesr   r   r   r   r   r   r   r   r   r   r   collections.abcr   r   typesr   r   r>   r@   rb  r8   rY  r:   r]  pyspark.sqlr   pyspark_sqlpyspark.sql.connect.dataframer   r   typing_extensionsr    r!   r"   r  r$   r  r&   r  r(   r  r*   r  r,   r  r.   narwhals._spark_like.dataframer/   r  r1   narwhals.typingr2   r3   r4   r5   r6   r7   r   r9   r;   r=   r?   rC   rE   rH   rI   rJ   rK   rL   r2  rM   r6  rN   r>  rO   r@  rP   rF  rQ   r4  rB  rD  rR   r<  r9  r;  rS   rT   rU   rV   rW   rX   rY   rZ   r[   r]   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   __all__r   r1  r5  r=  r?  r8  r`  r:  r3  rC  rA  rg  r7  rE  rb   rh   re   <module>ry     s^   8 "	 	 	 U 3    1 %R9986:6C:@AYYA4FI4 *GY*	*FI*vE9& *GY*$%>?K?vE9&#$MNJ	N2J	25M95AIyA3L)3)>)> >?FI?v~'='==>E9>e^%8%889D)9)>)> >?FI?e^%8%889D)9#^**N,?,?AUAUUJ	  #&&	(Iy  0Iy/2L)2<Hi<0K0;K;HKH (A9  A,3		-	 % " L{OXKNox N,h ,D-x DD+X DIh I*. *,,h ,  IM9H?L)?8M98>M9>>L)>;K;)VYV9 	  $YyX!4OY4 7NI7'@9@B i  OK  OF 9  9Iy8-V!./ V!r" += ' <.C + C,@ ) @;W 8 W[rh   