o
    ]÷¡i  ã                   @   s,   d Z ddlZddlmZ dd„ Zdd„ ZdS )zÎExample of a config file using ConfigDict.

The idea of this configuration file is to show a typical use case of ConfigDict,
as well as its limitations. This also exemplifies a self-referencing ConfigDict.
é    N)Úconfig_dictc                  C   s:   t  ¡ } d| _d| _d| _d| _ddddd	d
idœ| _| S )z4Helper to generate simple config without references.é   g¸…ëQ¸@ÚjamesTé   g…ëQ¸	@ÚmarkFÚfloaté   )Úintegerr   ÚstringÚboolÚdict)r   Ú
ConfigDictr	   r   r
   r   r   ©Úconfig© r   ú^/home/ubuntu/.local/lib/python3.10/site-packages/ml_collections/config_dict/examples/config.pyÚ_get_flat_config   s   ÿû	r   c                  C   s(   t ƒ } t ƒ | _| j| _t | j¡| _| S )aL  Returns a ConfigDict instance describing a complex config.

  Returns:
    A ConfigDict instance with the structure:

    ```
        CONFIG-+-- integer
               |-- float
               |-- string
               |-- bool
               |-- dict +-- integer
               |        |-- float
               |        |-- string
               |        |-- bool
               |        |-- dict +-- float
               |
               |-- object +-- integer
               |          |-- float
               |          |-- string
               |          |-- bool
               |          |-- dict +-- integer
               |                   |-- float
               |                   |-- string
               |                   |-- bool
               |                   |-- dict +-- float
               |
               |-- object_copy +-- integer
               |               |-- float
               |               |-- string
               |               |-- bool
               |               |-- dict +-- integer
               |                        |-- float
               |                        |-- string
               |                        |-- bool
               |                        |-- dict +-- float
               |
               |-- object_reference [reference pointing to CONFIG-+--object]
    ```
  )r   ÚobjectÚobject_referenceÚcopyÚdeepcopyÚobject_copyr   r   r   r   Ú
get_config?   s
   (
r   )Ú__doc__r   Úml_collectionsr   r   r   r   r   r   r   Ú<module>   s
   &