
    i%                    T    d dl mZ d dlmZmZ d dlmZmZ  G d de          ZdgZ	dS )    )annotations)
ContextVarToken)Context_RuntimeContextc                  6    e Zd ZdZdZddZdd	Zdd
ZddZdS )ContextVarsRuntimeContextzAn implementation of the RuntimeContext interface which wraps ContextVar under
    the hood. This is the preferred implementation for usage with Python 3.5+
    current_contextreturnNonec                T    t          | j        t                                | _        d S )N)default)r   _CONTEXT_KEYr   _current_contextselfs    \/var/www/icac/venv/lib/python3.11/site-packages/opentelemetry/context/contextvars_context.py__init__z"ContextVarsRuntimeContext.__init__   s+     *wyy!
 !
 !
    contextr   Token[Context]c                6    | j                             |          S )zSets the current `Context` object. Returns a
        token that can be used to reset to the previous `Context`.

        Args:
            context: The Context to set.
        )r   set)r   r   s     r   attachz ContextVarsRuntimeContext.attach"   s     $((111r   c                4    | j                                         S )z%Returns the current `Context` object.)r   getr   s    r   get_currentz%ContextVarsRuntimeContext.get_current+   s    $((***r   tokenc                :    | j                             |           dS )zpResets Context to a previous value

        Args:
            token: A reference to a previous Context.
        N)r   reset)r   r   s     r   detachz ContextVarsRuntimeContext.detach/   s!     	##E*****r   N)r   r   )r   r   r   r   )r   r   )r   r   r   r   )	__name__
__module____qualname____doc__r   r   r   r   r!    r   r   r	   r	      su          %L
 
 
 

2 2 2 2+ + + ++ + + + + +r   r	   N)

__future__r   contextvarsr   r   opentelemetry.context.contextr   r   r	   __all__r&   r   r   <module>r+      s    # " " " " " ) ) ) ) ) ) ) ) B B B B B B B B+ + + + + + + +D '
'r   