a àMÒe ã @ s, d Z ddlmZ ddlZG dd„ deƒZdS )zDNS name dictionaryé )ÚMutableMappingNc sh e Zd ZdZg d¢Z‡ fdd„Zdd„ Zdd„ Zd d „ Zdd„ Z d d„ Z dd„ Zdd„ Zdd„ Z ‡ ZS )ÚNameDictz·A dictionary whose keys are dns.name.Name objects. In addition to being like a regular Python dictionary, this dictionary can also get the deepest match for a given key. )Ú max_depthÚmax_depth_itemsZ__storec s6 t ƒ ¡ tƒ | _d| _d| _| t|i |¤Ž¡ d S )Nr )ÚsuperÚ__init__ÚdictÚ_NameDict__storer r Úupdate)ÚselfÚargsÚkwargs©Ú __class__© ú0/usr/lib/python3.9/site-packages/dns/namedict.pyr - s zNameDict.__init__c C s> t |ƒ| jkr| jd | _nt |ƒ| jkr:t |ƒ| _d| _d S )Né )Úlenr r ©r Úkeyr r r Z__update_max_depth6 s zNameDict.__update_max_depthc C s | j | S ©N©r r r r r Ú__getitem__= s zNameDict.__getitem__c C s. t |tjjƒstdƒ‚|| j|<