+
    ~j                     2    ^ RI Ht ^ RIHt  ! R R4      tR# )    )Lock)Callablec                   H   a  ] tR t^t o RtV 3R lR ltV 3R lR ltRtV tR# )OncezExecute a function exactly once and block all callers until the function returns

Same as golang's `sync.Once <https://pkg.go.dev/sync#Once>`_
c                   < V ^8  d   QhRR/# )   returnN )format__classdict__s   "m/Users/mitch_tango/dev/rabbit-r1-livekit/agent/.venv/lib/python3.14/site-packages/opentelemetry/util/_once.py__annotate__Once.__annotate__   s      $     c                2    \        4       V n        R V n        R# )FN)r   _lock_done)selfs   &r   __init__Once.__init__   s    V

r   c                8   < V ^8  d   QhRS[ . R3,          RS[/# )r   funcNr	   )r   bool)r   r   s   "r   r   r      s$      HRX. 4 r   c                    V P                   '       d   R# V P                  ;_uu_ 4        V P                   '       g   V! 4        RV n          RRR4       R#  RRR4       R#   + '       g   i     R# ; i)zExecute ``func`` if it hasn't been executed or return.

Will block until ``func`` has been called by one thread.

Returns:
    Whether or not ``func`` was executed in this call
FTNr   r   )r   r   s   &&r   do_onceOnce.do_once   sR     :::ZZZ:::!
	 Z 
  Z
 s   "A  A1	r   N)	__name__
__module____qualname____firstlineno____doc__r   r   __static_attributes____classdictcell__)r   s   @r   r   r      s     
  r   r   N)	threadingr   typingr   r   r
   r   r   <module>r'      s      r   