Ë
    (†^i$  ã                  óÂ   — d dl mZ d dlZd dlmZ d dlmZ d dlmZ  G d„ dej                  «      Z
 G d„ d	ej                  «      Z ed
dd¬«       G d„ de
«      «       Zy)é    )ÚannotationsN)ÚIterable)ÚAny)Údeprecated_classc                  ó\   — e Zd ZdZej
                  dd„«       Zej
                  dd„«       Zy)ÚBaseJournalBackendáé  Base class for Journal storages.

    Storage classes implementing this base class must guarantee process safety. This means,
    multiple processes might concurrently call ``read_logs`` and ``append_logs``. If the
    backend storage does not internally support mutual exclusion mechanisms, such as locks,
    you might want to use :class:`~optuna.storages.journal.JournalFileSymlinkLock` or
    :class:`~optuna.storages.journal.JournalFileOpenLock` for creating a critical section.

    c                ó   — t         ‚)ad  Read logs with a log number greater than or equal to ``log_number_from``.

        If ``log_number_from`` is 0, read all the logs.

        Args:
            log_number_from:
                A non-negative integer value indicating which logs to read.

        Returns:
            Logs with log number greater than or equal to ``log_number_from``.
        ©ÚNotImplementedError)ÚselfÚlog_number_froms     ú^/var/www/html/hubwallet-dev/venv/lib/python3.12/site-packages/optuna/storages/journal/_base.pyÚ	read_logszBaseJournalBackend.read_logs   s
   € ô "Ð!ó    c                ó   — t         ‚)z‚Append logs to the backend.

        Args:
            logs:
                A list that contains json-serializable logs.
        r   )r   Úlogss     r   Úappend_logszBaseJournalBackend.append_logs%   s
   € ô "Ð!r   N)r   ÚintÚreturnzIterable[dict[str, Any]])r   zlist[dict[str, Any]]r   ÚNone)Ú__name__Ú
__module__Ú__qualname__Ú__doc__ÚabcÚabstractmethodr   r   © r   r   r   r   
   s;   „ ñð 	×Ñò"ó ð"ð 	×Ñò"ó ñ"r   r   c                  ó\   — e Zd ZdZej
                  dd„«       Zej
                  dd„«       Zy)ÚBaseJournalSnapshotz¸Optional base class for Journal storages.

    Storage classes implementing this base class may work faster when
    constructing the internal state from the large amount of logs.
    c                ó   — t         ‚)ziSave snapshot to the backend.

        Args:
            snapshot: A serialized snapshot (bytes)
        r   )r   Úsnapshots     r   Úsave_snapshotz!BaseJournalSnapshot.save_snapshot8   ó
   € ô "Ð!r   c                ó   — t         ‚)z…Load snapshot from the backend.

        Returns:
            A serialized snapshot (bytes) if found, otherwise :obj:`None`.
        r   )r   s    r   Úload_snapshotz!BaseJournalSnapshot.load_snapshotA   r$   r   N)r"   Úbytesr   r   )r   zbytes | None)r   r   r   r   r   r   r#   r&   r   r   r   r    r    1   s;   „ ñð 	×Ñò"ó ð"ð 	×Ñò"ó ñ"r   r    z4.0.0z6.0.0zAUse :class:`~optuna.storages.journal.BaseJournalBackend` instead.)Útextc                  ó   — e Zd ZdZy)ÚBaseJournalLogStorager	   N)r   r   r   r   r   r   r   r*   r*   K   s   „ òr   r*   )Ú
__future__r   r   Úcollections.abcr   Útypingr   Úoptuna._deprecatedr   ÚABCr   r    r*   r   r   r   ú<module>r0      s^   ðÝ "ã 
Ý $Ý å /ô$"˜Ÿ™ô $"ôN"˜#Ÿ'™'ô "ñ4 ØˆWÐ^ôô	Ð.ó 	óñ	r   