o
    ?Di                     @   s  d dl mZmZ d dlmZ d dlmZmZmZmZm	Z	m
Z
mZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZmZ G dd dZ G dd de Z!G dd	 d	e Z"G d
d de Z#G dd de Z$G dd de Z%G dd de Z&G dd de Z'G dd de Z(G dd de Z)G dd de Z*G dd de Z+G dd de Z,G dd de Z-G d d! d!e Z.G d"d# d#e Z/G d$d% d%e Z0G d&d' d'e Z1G d(d) d)e Z2G d*d+ d+e Z3G d,d- d-e Z4G d.d/ d/e Z5G d0d1 d1e Z6G d2d3 d3e Z7G d4d5 d5e Z8G d6d7 d7e Z9G d8d9 d9e Z:G d:d; d;e Z;G d<d= d=e Z<G d>d? d?e Z=G d@dA dAe Z>G dBdC dCe Z?G dDdE dEe Z@g dFZAdGS )H    )AnyDict)DuckDBPyType)BIGINTBITBLOBBOOLEANDATEDOUBLEFLOATHUGEINTUHUGEINTINTEGERINTERVALSMALLINTSQLNULLTIME	TIMESTAMPTIMESTAMP_MSTIMESTAMP_NSTIMESTAMP_STIMESTAMP_TZTIME_TZTINYINTUBIGINTUINTEGER	USMALLINTUTINYINTUUIDVARCHARc                   @   s,   e Zd ZdedefddZdefddZdS )	Valueobjecttypec                 C   s   || _ || _d S N)r!   r"   )selfr!   r"    r%   N/var/www/Datamplify/venv/lib/python3.10/site-packages/duckdb/value/constant.py__init__#   s   
zValue.__init__returnc                 C   s
   t | jS r#   )strr!   r$   r%   r%   r&   __repr__'   s   
zValue.__repr__N)__name__
__module____qualname__r   r   r'   r)   r+   r%   r%   r%   r&   r    "   s    r    c                       s   e Zd Z fddZ  ZS )	NullValuec                    s   t  d t d S r#   )superr'   r   r*   	__class__r%   r&   r'   /      zNullValue.__init__)r,   r-   r.   r'   __classcell__r%   r%   r1   r&   r/   .   s    r/   c                       "   e Zd Zdef fddZ  ZS )BooleanValuer!   c                       t  |t d S r#   )r0   r'   r   r$   r!   r1   r%   r&   r'   4   r3   zBooleanValue.__init__r,   r-   r.   r   r'   r4   r%   r%   r1   r&   r6   3       r6   c                       r5   )UnsignedBinaryValuer!   c                    r7   r#   )r0   r'   r   r8   r1   r%   r&   r'   <   r3   zUnsignedBinaryValue.__init__r9   r%   r%   r1   r&   r;   ;   r:   r;   c                       r5   )UnsignedShortValuer!   c                    r7   r#   )r0   r'   r   r8   r1   r%   r&   r'   A   r3   zUnsignedShortValue.__init__r9   r%   r%   r1   r&   r<   @   r:   r<   c                       r5   )UnsignedIntegerValuer!   c                    r7   r#   )r0   r'   r   r8   r1   r%   r&   r'   F   r3   zUnsignedIntegerValue.__init__r9   r%   r%   r1   r&   r=   E   r:   r=   c                       r5   )UnsignedLongValuer!   c                    r7   r#   )r0   r'   r   r8   r1   r%   r&   r'   K   r3   zUnsignedLongValue.__init__r9   r%   r%   r1   r&   r>   J   r:   r>   c                       r5   )BinaryValuer!   c                    r7   r#   )r0   r'   r   r8   r1   r%   r&   r'   S   r3   zBinaryValue.__init__r9   r%   r%   r1   r&   r?   R   r:   r?   c                       r5   )
ShortValuer!   c                    r7   r#   )r0   r'   r   r8   r1   r%   r&   r'   X   r3   zShortValue.__init__r9   r%   r%   r1   r&   r@   W   r:   r@   c                       r5   )IntegerValuer!   c                    r7   r#   )r0   r'   r   r8   r1   r%   r&   r'   ]   r3   zIntegerValue.__init__r9   r%   r%   r1   r&   rA   \   r:   rA   c                       r5   )	LongValuer!   c                    r7   r#   )r0   r'   r   r8   r1   r%   r&   r'   b   r3   zLongValue.__init__r9   r%   r%   r1   r&   rB   a   r:   rB   c                       r5   )HugeIntegerValuer!   c                    r7   r#   )r0   r'   r   r8   r1   r%   r&   r'   g   r3   zHugeIntegerValue.__init__r9   r%   r%   r1   r&   rC   f   r:   rC   c                       r5   )UnsignedHugeIntegerValuer!   c                    r7   r#   )r0   r'   r   r8   r1   r%   r&   r'   l   r3   z!UnsignedHugeIntegerValue.__init__r9   r%   r%   r1   r&   rD   k   r:   rD   c                       r5   )
FloatValuer!   c                    r7   r#   )r0   r'   r   r8   r1   r%   r&   r'   t   r3   zFloatValue.__init__r9   r%   r%   r1   r&   rE   s   r:   rE   c                       r5   )DoubleValuer!   c                    r7   r#   )r0   r'   r
   r8   r1   r%   r&   r'   y   r3   zDoubleValue.__init__r9   r%   r%   r1   r&   rF   x   r:   rF   c                       *   e Zd Zdededef fddZ  ZS )DecimalValuer!   widthscalec                    &   dd l }|||}t || d S Nr   )duckdbdecimal_typer0   r'   )r$   r!   rI   rJ   rM   rN   r1   r%   r&   r'   ~      zDecimalValue.__init__)r,   r-   r.   r   intr'   r4   r%   r%   r1   r&   rH   }       "rH   c                       r5   )StringValuer!   c                    r7   r#   )r0   r'   r   r8   r1   r%   r&   r'      r3   zStringValue.__init__r9   r%   r%   r1   r&   rR      r:   rR   c                       r5   )	UUIDValuer!   c                    r7   r#   )r0   r'   r   r8   r1   r%   r&   r'      r3   zUUIDValue.__init__r9   r%   r%   r1   r&   rS      r:   rS   c                       r5   )BitValuer!   c                    r7   r#   )r0   r'   r   r8   r1   r%   r&   r'      r3   zBitValue.__init__r9   r%   r%   r1   r&   rT      r:   rT   c                       r5   )	BlobValuer!   c                    r7   r#   )r0   r'   r   r8   r1   r%   r&   r'      r3   zBlobValue.__init__r9   r%   r%   r1   r&   rU      r:   rU   c                       r5   )	DateValuer!   c                    r7   r#   )r0   r'   r	   r8   r1   r%   r&   r'      r3   zDateValue.__init__r9   r%   r%   r1   r&   rV      r:   rV   c                       r5   )IntervalValuer!   c                    r7   r#   )r0   r'   r   r8   r1   r%   r&   r'      r3   zIntervalValue.__init__r9   r%   r%   r1   r&   rW      r:   rW   c                       r5   )TimestampValuer!   c                    r7   r#   )r0   r'   r   r8   r1   r%   r&   r'      r3   zTimestampValue.__init__r9   r%   r%   r1   r&   rX      r:   rX   c                       r5   )TimestampSecondValuer!   c                    r7   r#   )r0   r'   r   r8   r1   r%   r&   r'      r3   zTimestampSecondValue.__init__r9   r%   r%   r1   r&   rY      r:   rY   c                       r5   )TimestampMilisecondValuer!   c                    r7   r#   )r0   r'   r   r8   r1   r%   r&   r'      r3   z!TimestampMilisecondValue.__init__r9   r%   r%   r1   r&   rZ      r:   rZ   c                       r5   )TimestampNanosecondValuer!   c                    r7   r#   )r0   r'   r   r8   r1   r%   r&   r'      r3   z!TimestampNanosecondValue.__init__r9   r%   r%   r1   r&   r[      r:   r[   c                       r5   )TimestampTimeZoneValuer!   c                    r7   r#   )r0   r'   r   r8   r1   r%   r&   r'      r3   zTimestampTimeZoneValue.__init__r9   r%   r%   r1   r&   r\      r:   r\   c                       r5   )	TimeValuer!   c                    r7   r#   )r0   r'   r   r8   r1   r%   r&   r'      r3   zTimeValue.__init__r9   r%   r%   r1   r&   r]      r:   r]   c                       r5   )TimeTimeZoneValuer!   c                    r7   r#   )r0   r'   r   r8   r1   r%   r&   r'      r3   zTimeTimeZoneValue.__init__r9   r%   r%   r1   r&   r^      r:   r^   c                       s&   e Zd Zdedef fddZ  ZS )	ListValuer!   
child_typec                    $   dd l }||}t || d S rL   )rM   	list_typer0   r'   )r$   r!   r`   rM   rb   r1   r%   r&   r'         
zListValue.__init__r,   r-   r.   r   r   r'   r4   r%   r%   r1   r&   r_      s    r_   c                       .   e Zd Zdedeeef f fddZ  ZS )StructValuer!   childrenc                    ra   rL   )rM   struct_typer0   r'   )r$   r!   rg   rM   rh   r1   r%   r&   r'      rc   zStructValue.__init__	r,   r-   r.   r   r   r)   r   r'   r4   r%   r%   r1   r&   rf          &rf   c                       rG   )MapValuer!   key_type
value_typec                    rK   rL   )rM   map_typer0   r'   )r$   r!   rl   rm   rM   rn   r1   r%   r&   r'      rO   zMapValue.__init__rd   r%   r%   r1   r&   rk      rQ   rk   c                       re   )	UnionTyper!   membersc                    ra   rL   )rM   
union_typer0   r'   )r$   r!   rp   rM   rq   r1   r%   r&   r'      rc   zUnionType.__init__ri   r%   r%   r1   r&   ro      rj   ro   )r    r/   r6   r;   r<   r=   r>   r?   r@   rA   rB   rC   rD   rE   rF   rH   rR   rS   rT   rU   rV   rW   rX   rY   rZ   r[   r\   r]   r^   N)Btypingr   r   duckdb.typingr   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   r   r    r/   r6   r;   r<   r=   r>   r?   r@   rA   rB   rC   rD   rE   rF   rH   rR   rS   rT   rU   rV   rW   rX   rY   rZ   r[   r\   r]   r^   r_   rf   rk   ro   __all__r%   r%   r%   r&   <module>   sJ    t
