
    G)f`                     P    d dl mZ d dlmZ d dlmZ  G d d      Z G d d      Zy)	    )dumps)Optional)
deprecatedc            	           e Zd ZdZdZ edd      	 	 ddedee   d	ee   fd
       Zd Z	d Z
d Zd Zedee   fd       Zedee   fd       Zedefd       Zy)InstrumentationInfozImmutable information about an instrumentation library module.

    See `opentelemetry.trace.TracerProvider.get_tracer` for the meaning of these
    properties.
    _name_version_schema_urlz1.11.1z#You should use InstrumentationScope)versionreasonNnamer   
schema_urlc                 6    || _         || _        |d}|| _        y N r   selfr   r   r   s       i/var/www/html/flask-app/venv/lib/python3.12/site-packages/mysql/opentelemetry/sdk/util/instrumentation.py__init__zInstrumentationInfo.__init__   s%     
J%    c                     t        |       j                   d| j                   d| j                   d| j                   dS N(z, )type__name__r	   r
   r   r   s    r   __repr__zInstrumentationInfo.__repr__*   >    Dz""#1TZZL4==/DDTDTCUUVW	
r   c                 Z    t        | j                  | j                  | j                  f      S Nhashr	   r
   r   r   s    r   __hash__zInstrumentationInfo.__hash__/   "    TZZ0@0@ABBr   c                     t        |      t        |       u xrG | j                  | j                  | j                  f|j                  |j                  |j                  fk(  S r#   )r   r	   r
   r   r   values     r   __eq__zInstrumentationInfo.__eq__2   sW    E{d4j( >JJMM.
 kk5>>5+<+<=	.> 	>r   c                     t        |      t        |       urt        S | j                  | j                  | j                  f|j                  |j                  |j                  fk  S r#   )r   NotImplementedr	   r
   r   r)   s     r   __lt__zInstrumentationInfo.__lt__9   sW    ;d4j(!!

DMM4+;+;<KKNN@
 
 	
r   returnc                     | j                   S r#   r   r   s    r   r   zInstrumentationInfo.schema_urlB       r   c                     | j                   S r#   r
   r   s    r   r   zInstrumentationInfo.versionF       }}r   c                     | j                   S r#   r	   r   s    r   r   zInstrumentationInfo.nameJ       zzr   NN)r   
__module____qualname____doc__	__slots__r   strr   r   r    r&   r+   r.   propertyr   r   r    r   r   r   r      s     5I)NO "&$(	
&
& #
& SM	
& P
&

C>
  HSM     #   c  r   r   c            	           e Zd ZdZdZ	 	 ddedee   dee   ddfdZdefd	Zde	fd
Z
dedefdZdedefdZedee   fd       Zedee   fd       Zedefd       ZddefdZy)InstrumentationScopezA logical unit of the application code with which the emitted telemetry can be
    associated.

    See `opentelemetry.trace.TracerProvider.get_tracer` for the meaning of these
    properties.
    r   Nr   r   r   r/   c                 6    || _         || _        |d}|| _        y r   r   r   s       r   r   zInstrumentationScope.__init__Y   s%     
J%r   c                     t        |       j                   d| j                   d| j                   d| j                   dS r   r   r   s    r   r    zInstrumentationScope.__repr__e   r!   r   c                 Z    t        | j                  | j                  | j                  f      S r#   r$   r   s    r   r&   zInstrumentationScope.__hash__j   r'   r   r*   c                     t        |t              st        S | j                  | j                  | j
                  f|j                  |j                  |j
                  fk(  S r#   
isinstancerB   r-   r	   r
   r   r)   s     r   r+   zInstrumentationScope.__eq__m   sR    %!56!!

DMM4+;+;<KKNNA
 
 	
r   c                     t        |t              st        S | j                  | j                  | j
                  f|j                  |j                  |j
                  fk  S r#   rG   r)   s     r   r.   zInstrumentationScope.__lt__v   sR    %!56!!

DMM4+;+;<KKNN@
 
 	
r   c                     | j                   S r#   r1   r   s    r   r   zInstrumentationScope.schema_url   r2   r   c                     | j                   S r#   r4   r   s    r   r   zInstrumentationScope.version   r5   r   c                     | j                   S r#   r7   r   s    r   r   zInstrumentationScope.name   r8   r   c                 `    t        | j                  | j                  | j                  d|      S )N)r   r   r   )indent)r   r	   r
   r   )r   rN   s     r   to_jsonzInstrumentationScope.to_json   s0    

=="..
 
 	
r   r9   )   )r   r:   r;   r<   r=   r>   r   r   r    intr&   objectboolr+   r.   r?   r   r   r   rO   r@   r   r   rB   rB   O   s     5I
 "&$(	
&
& #
& SM	
&
 

&
# 

C# C
F 
t 

F 
t 
  HSM     #   c  
3 
r   rB   N)jsonr   typingr   r   r   rB   r@   r   r   <module>rV      s'      !8 8vD
 D
r   