U
    Sd                     @   s  d Z ddlZddlZddlZddlZdd ZdZzddlmZ eej	ZW n e
k
r^   Y nX dd Zedkredr~d	Zned
rdZndZedeZedkrededejkredkred dZdZedkr"z ddlmZ eejd< eZ[W n  e
k
r    ed Y nX ed	krhzddlmZ eZ[W n$ e
k
rf   ed dZY nX zddlmZ dZW n e
k
r   dZY nX dd Zdd Zdd ZdS )zLDetermine which implementation of the protobuf API is used in this process.
    Nc                 C   s,   | dkrdS | dkrt d| dkr(dS d S )N   cpp   z%api_version=1 is no longer supported.r   python)
ValueError)api_version r   O/tmp/pip-unpacked-wheel-1ori_g8k/google/protobuf/internal/api_implementation.py_ApiVersionToImplementationType(   s    r
   )_api_implementationc                 C   s<   z t | }|st| d W dS  tk
r6   Y dS X d S )Nz import succeeded but was NoneTF)	importlibimport_moduleImportError)mod_namemodr   r   r	   
_CanImport>   s    
r   zgoogle._upb._messageupbzgoogle.protobuf.pyext._messager   r   Z&PROTOCOL_BUFFERS_PYTHON_IMPLEMENTATION)r   r   r   zdPROTOCOL_BUFFERS_PYTHON_IMPLEMENTATION {0} is not supported. Please set to 'python', 'cpp' or 'upb'.PyPyz\PyPy does not work yet with cpp protocol buffers. Falling back to the python implementation.)_messagez/google3.net.proto2.python.internal.cpp._messagez-Selected implementation cpp is not available.zXSelected implementation upb is not available. Falling back to the python implementation.)(enable_deterministic_proto_serializationTFc                   C   s   t S N)_implementation_typer   r   r   r	   Type   s    r   c                   C   s   dS )Nr   r   r   r   r   r	   Version   s    r   c                   C   s   t S r   ))_python_deterministic_proto_serializationr   r   r   r	   )IsPythonDefaultSerializationDeterministic   s    r   )__doc__r   ossyswarningsr
   r   Zgoogle.protobuf.internalr   r   r   r   getenvr   formatversionwarnZ	_c_moduleZgoogle.protobuf.pyextr   modulesZgoogle._upbZgoogle.protobufr   r   r   r   r   r   r   r   r	   <module>   sv   






