
    q-Ph                        d dl mZ d dlZd dlmZmZ d dlmZ d dlm	Z	m
Z
  ej        e          5  d dlmZ ddd           n# 1 swxY w Y   erd dlmZ d dlmZmZ ddZddddddZdS )    )annotationsN)TYPE_CHECKINGAny)dataframe_to_pydf)wrap_dfwrap_s)PySeries)	DataFrame)SchemaDefinition
SchemaDictobjr   returnboolc                B    t          | d          pt          | d          S )z1Check if object supports the PyCapsule interface.__arrow_c_stream____arrow_c_array__)hasattr)r   s    W/var/www/html/test/jupyter/venv/lib/python3.11/site-packages/polars/_utils/pycapsule.pyis_pycapsuler      s#    3,--R>Q1R1RR    F)schemaschema_overridesrechunkr   SchemaDefinition | Noner   SchemaDict | Noner   r
   c                  t          | d          rLd}t          t          j        |                     }|                    |                              |          }nqt          | d          rLd}t          t          j        |                     }|                    |                              |          }nd| d}t          |          |r|                                }|s|rt          t          |||                    }|S )z&Convert PyCapsule object to DataFrame.r    r   z3object does not support PyCapsule interface; found  )r   r   )r   r   r	   from_arrow_c_arrayto_frameunnestfrom_arrow_c_stream	TypeErrorr   r   r   )r   r   r   r   tmp_col_namesdfmsgs           r   pycapsule_to_framer(      s    s'((  8.s3344ZZ%%,,\::	*	+	+  8/4455ZZ%%,,\::LCLLLnn ZZ\\ 
! 
bBRSSS
 
 Ir   )r   r   r   r   )
r   r   r   r   r   r   r   r   r   r
   )
__future__r   
contextlibtypingr   r   $polars._utils.construction.dataframer   polars._utils.wrapr   r   suppressImportErrorpolars.polarsr	   polarsr
   polars._typingr   r   r   r(    r   r   <module>r4      s^   " " " " " "     % % % % % % % % B B B B B B . . . . . . . .Z%% ' '&&&&&&' ' ' ' ' ' ' ' ' ' ' ' ' ' '  <      ;;;;;;;;S S S S '+*.       s   AAA