
    'h                    `   S SK Jr  S SKrS SKrS SKJrJrJrJrJr  S SK	J
r
Jr  S SKJr  S SKJr  S SKJr  S SKJrJrJr  S SKJrJrJrJrJr  S S	KJr  \R>                  " \ 5         S SK!J"r#  SSS5        \
(       a  S S
K$J%r%  S SK&J'r'J(r(   SSS.       SS jjjr)g! , (       d  f       N7= f)    )annotationsN)datedatetimetime	timedeltatimezone)TYPE_CHECKINGAny)ZoneInfo)	wrap_expr)DateDatetimeDuration)_check_for_numpy_check_for_pytz_check_for_torchpytztorch)numpy)Expr)PolarsDataTypeTimeUnitF)allow_objectc          
     H   [        U [        5      (       Ga  U[        :X  a-  [        [        R
                  " U R                  5       SSS95      $ Ub  [        USS5      =nb  UnOSn[        USS5      nU R                  nUc  UnGOUc  [        U[        5      (       dF  [        U5      (       aB  [        U[        R                  R                  5      (       a  UR                  b  [        U5      nOU R                  [         R"                  5      n SnO[        U5      U:X  a  [        U5      nOm[%        US	5      (       aF  [        [        U5      R'                  U 5      S
S5      [        UR'                  U 5      S
S5      :X  a  UnOSU< SU< S3n[)        U5      eU R+                  [         R"                  S9n	[        [        R
                  " U	SSS95      R-                  [/        U5      5      n
Ub+  U
R0                  R3                  XpR4                  S:X  a  SOSS9n
U
$ [        U [6        5      (       aN  [        [        R
                  " U SSS95      n
Ub*  [        USS5      =nb  U
R-                  [9        U5      5      n
U
$ [        U [:        5      (       a  [        [        R
                  " U SSS95      $ [        U [        5      (       a  U[.        :X  a  [        USS5      =(       d    Sn[        U R<                  U R>                  U R@                  5      n	[        [        R
                  " U	SSS95      R-                  [/        U5      5      n
[        USS5      =nb$  U
R0                  R3                  [        U5      5      n
U
$ [        [        R
                  " U SSS95      $ [        U [B        RD                  5      (       a*  U RF                  n [        [        R
                  " XSS95      $ [I        U 5      (       a=  [        U [J        RL                  5      (       a  [        [B        RD                  " SXS95      $ [O        U 5      (       aK  [        U [P        RR                  5      (       a,  [        [B        RD                  " SU RU                  SS9US95      $ [        U [V        [X        45      (       a>  [        [        R
                  " [B        RD                  " SU /US9RF                  USS95      $ [        U [Z        R\                  5      (       a  [        U R^                  US9$ U(       a-  [        [        R
                  " XSS95      R-                  U5      $ [I        U 5      (       Ga!  [        U [J        R`                  5      (       Ga  [        U Rc                  5       =n[        [6        45      (       a  [        U5      $ [        U[d        5      (       a  [%        U S5      (       a  U Rf                  Rh                  nURk                  S5      (       a1  U[m        S5      S n[        U5      R-                  [/        U5      5      $ URk                  S5      (       a1  U[m        S5      S n[        U5      R-                  [9        U5      5      $ OU n[        [        R
                  " XSS95      $ )a  
Return an expression representing a literal value.

Parameters
----------
value
    Value that should be used as a `literal`.
dtype
    The data type of the resulting expression.
    If set to `None` (default), the data type is inferred from the `value` input.
allow_object
    If type is unknown use an 'object' type.
    By default, we will raise a `ValueException`
    if the type is unknown.

Notes
-----
Expected datatypes:

- `pl.lit([])` -> empty List<Null>
- `pl.lit([1, 2, 3])` -> List<i64>
- `pl.lit(pl.Series([]))`-> empty Series Null
- `pl.lit(pl.Series([1, 2, 3]))` -> Series Int64
- `pl.lit(None)` -> Null

Examples
--------
Literal scalar values:

>>> pl.lit(1)  # doctest: +IGNORE_RESULT
>>> pl.lit(5.5)  # doctest: +IGNORE_RESULT
>>> pl.lit(None)  # doctest: +IGNORE_RESULT
>>> pl.lit("foo_bar")  # doctest: +IGNORE_RESULT
>>> pl.lit(date(2021, 1, 20))  # doctest: +IGNORE_RESULT
>>> pl.lit(datetime(2023, 3, 31, 10, 30, 45))  # doctest: +IGNORE_RESULT

Literal list/Series data (1D):

>>> pl.lit([1, 2, 3])  # doctest: +SKIP
>>> pl.lit(pl.Series("x", [1, 2, 3]))  # doctest: +IGNORE_RESULT

Literal list/Series data (2D):

>>> pl.lit([[1, 2], [3, 4]])  # doctest: +SKIP
>>> pl.lit(pl.Series("y", [[1, 2], [3, 4]]))  # doctest: +IGNORE_RESULT
FT)r   	is_scalarN	time_unitus	time_zoneUTC	utcoffsetsecondsr      ztime zone of dtype (z#) differs from time zone of value ())tzinfoearliestlatest)	ambiguous)r   literal)dtype)forcer)   zdatetime64[ztimedelta64[)7
isinstancer   r   r   plrlitr   getattrr$   r   r   r   
BaseTzInfozonestr
astimezoner   utchasattrr    	TypeErrorreplacecastr   dtreplace_time_zonefoldr   r   r   yearmonthdayplSeries_sr   npndarrayr   r   Tensorr   listtupleenumEnumvaluegenericitemintr)   name
startswithlen)rI   r)   r   tur   dtype_tzvalue_tztzmsgdt_utcexprr   rK   
dtype_names                 gC:\Users\julio\OneDrive\Documentos\Trabajo\Ideas Frescas\venv\Lib\site-packages\polars/functions/lit.pyr.   r.      sJ   f %""D=SWWUZZ\QUVWW {D(I"I"!VII 5+t4<<B h11#H--"8T[[-C-CDD 1 XB ",,X\\:EB X(*] ;//G",,U3Y5++E2IqA5B  +8, 7&\,   n$hll3etLMRRY
 >77,,JJ!Oj - D 	E9	%	%UdKL{D(I"I"!V99Xb\*D	E4	 	 UdKLL	E4	 	 H{D9ATIejj%++uyyAFSWWV%4PQVV#D %UK>>	Kww00Y@KSWWU$OPP	E299	%	%FGG	%	 	 Zrzz%B%B299Y;<<	%	 	 Zu||%D%D299Y%(@NOO	ED%=	)	)GG		)eWE:==
 	
 
E499	%	%5;;e,,EFKKERR:eRZZ#@#@ejjl*dXy,ABBt9 dC  WUG%<%<))J$$]33&s='9B?	4y~~hy&9::$$^44&s>':R@	4y~~hy&9::SWWT4@AA    )N)rI   r
   r)   zPolarsDataType | Noner   boolreturnr   )*
__future__r   
contextlibrG   r   r   r   r   r   typingr	   r
   zoneinfor   polars._reexport	_reexportr?   polars._utils.wrapr   polars.datatypesr   r   r   polars.dependenciesr   r   r   r   r   r   rB   suppressImportErrorpolars._plr_plrr-   polarsr   polars._typingr   r   r.    rY   rX   <module>rl      s    "   > > %   ( 5 5  ,% & 7 04lBMRlBlB,lBFJlB	lB &%s   'B
B-