File: //kunden/lib/python3/dist-packages/dulwich/__pycache__/config.cpython-39.pyc
a
�~�_�C � @ s| d Z ddlZddlZddlmZmZmZ ddlmZ zddl m
Z
mZ W n" eyj ddlm
Z
mZ Y n0 ddl
mZ e� Zdd� ZG d d
� d
e�ZG dd� de�ZG d
d� dee�Zdd� Zed�ed�ed�ed�ed�ed�ed�ed�ed�ed�iZed�ed�gZed�ed�gZdd� Zdd� Zd d!� Zd"d#� Zd$d%� ZG d&d'� d'e�Zd(d)� Z G d*d+� d+e�Z!d,d-� Z"dS ).z�Reading and writing Git configuration files.
TODO:
* preserve formatting when updating configuration files
* treat subsection names as case-insensitive for [branch.foo] style
subsections
� N)�BinaryIO�Tuple�Optional)�OrderedDict)�Iterable�MutableMapping)�GitFilec C s6 t | ttf�r| �� S t | t�r2t| �tt| ��S | S �N)�
isinstance�bytes�str�lowerr �type�map� lower_key)�key� r �0/usr/lib/python3/dist-packages/dulwich/config.pyr 6 s
�r c sN e Zd Zeddd��Z� fdd�Z� fdd�Zefdd �Zefd
d�Z � Z
S )
�CaseInsensitiveDictNc C sL t || �r|S | � }|d u r |S t |t�s.t�|�� D ]\}}|||<