
    F\h                     n    S SK r  " S S\ R                  5      r " S S\ R                  " SS5      5      rg)    Nc                   2   ^  \ rS rSrSrU 4S jrS rSrU =r$ )FreezableDefaultDict   z
Often it is desirable to prevent the mutation of
a default dict after its initial construction, such
as to prevent mutation during iteration.

>>> dd = FreezableDefaultDict(list)
>>> dd[0].append('1')
>>> dd.freeze()
>>> dd[1]
[]
>>> len(dd)
1
c                 :   > [        U S[        TU ]  5      " U5      $ )N_frozen)getattrsuper__missing__)selfkey	__class__s     6/usr/lib/python3.13/importlib/metadata/_collections.pyr
    FreezableDefaultDict.__missing__   s    tY(;<SAA    c                    ^  U 4S jT l         g )Nc                 $   > TR                  5       $ )N)default_factory)r   r   s    r   <lambda>-FreezableDefaultDict.freeze.<locals>.<lambda>   s    4#7#7#9r   r   )r   s   `r   freezeFreezableDefaultDict.freeze   s
    9r   r   )	__name__
__module____qualname____firstlineno____doc__r
   r   __static_attributes____classcell__)r   s   @r   r   r      s    B: :r   r   c                   $    \ rS rSr\S 5       rSrg)Pair   c           	      \    U " [        [        R                  UR                  SS5      5      6 $ )N=   )mapstrstripsplit)clstexts     r   parse
Pair.parse   s#    C		4::c1#5677r    N)r   r   r   r   classmethodr,   r   r.   r   r   r!   r!      s    8 8r   r!   z
name value)collectionsdefaultdictr   
namedtupler!   r.   r   r   <module>r3      s3    :;22 :,8;!!&,7 8r   