
    i                     *    d dl Z  G d de          ZdS )    Nc                   J     e Zd ZdZ fdZ fdZd Zd Zd Zd Z	d Z
 xZS )	Buncha  Container object exposing keys as attributes.

    Bunch objects are sometimes used as an output for functions and methods.
    They extend dictionaries by enabling values to be accessed by key,
    `bunch["value_key"]`, or by an attribute, `bunch.value_key`.

    Examples
    --------
    >>> from sklearn.utils import Bunch
    >>> b = Bunch(a=1, b=2)
    >>> b['b']
    2
    >>> b.b
    2
    >>> b.a = 3
    >>> b['a']
    3
    >>> b.c = 6
    >>> b['c']
    6
    c                 ^    t                                          |           i | j        d<   d S N_deprecated_key_to_warnings)super__init____dict__)selfkwargs	__class__s     G/var/www/icac/venv/lib/python3.11/site-packages/sklearn/utils/_bunch.pyr	   zBunch.__init__   s0        8:3444    c                     || j                             di           v r%t          j        | j        |         t
                     t                                          |          S r   )r
   getwarningswarnr   FutureWarningr   __getitem__)r   keyr   s     r   r   zBunch.__getitem__$   s]    $-##$A2FFFFM05   ww""3'''r   c                :    || j         d         |<   |x| |<   | |<   dS )z@Set key in dictionary to be deprecated with its warning message.r   N)r
   )r   valuenew_keydeprecated_keywarning_messages        r   _set_deprecatedzBunch._set_deprecated,   s-    GV34^D/44W^,,,r   c                     || |<   d S N )r   r   r   s      r   __setattr__zBunch.__setattr__1   s    S			r   c                 *    |                                  S r   )keys)r   s    r   __dir__zBunch.__dir__4   s    yy{{r   c                 N    	 | |         S # t           $ r t          |          w xY wr   )KeyErrorAttributeError)r   r   s     r   __getattr__zBunch.__getattr__7   s:    	&9 	& 	& 	& %%%	&s   
 $c                     d S r   r   )r   states     r   __setstate__zBunch.__setstate__=   s	     	r   )__name__
__module____qualname____doc__r	   r   r   r    r#   r'   r*   __classcell__)r   s   @r   r   r      s         ,: : : : :( ( ( ( (5 5 5
    & & &	 	 	 	 	 	 	r   r   )r   dictr   r   r   r   <module>r1      sD    ? ? ? ? ?D ? ? ? ? ?r   