+
    Zi(                    Z    ^ RI Ht ^ RIHtHt ^ RIHt ^ RIHt ] ! R R]4      4       t	R# )    )annotations)	UFOReader	UFOWriter)	DataStore)serdec                  r    ] tR t^	tRt]R R l4       t]R R l4       t]R R l4       t]R R	 l4       t	R
t
R# )DataSeta  Represents a mapping of POSIX filename strings to arbitrary data bytes.

Always use forward slahes (/) as directory separators, even on Windows.

Behavior:
    DataSet behaves like a dictionary of type ``Dict[str, bytes]``.

    >>> from ufoLib2 import Font
    >>> font = Font()
    >>> font.data["test.txt"] = b"123"
    >>> font.data["directory/my_binary_blob.bin"] = b"456"
    >>> font.data["test.txt"]
    b'123'
    >>> del font.data["test.txt"]
    >>> list(font.data.items())
    [('directory/my_binary_blob.bin', b'456')]
c                    V ^8  d   QhRRRR/# )   readerr   returnz	list[str] )formats   "9/usr/lib/python3/dist-packages/ufoLib2/objects/dataSet.py__annotate__DataSet.__annotate__   s     0 0i 0I 0    c                "    V P                  4       # )z;Returns a list of POSIX filename strings in the data store.)getDataDirectoryListing)r   s   &r   list_contentsDataSet.list_contents   s     --//r   c               $    V ^8  d   QhRRRRRR/# )r   r   r   filenamestrr   bytesr   )r   s   "r   r   r   #   s!     ) )) )s )u )r   c                $    V P                  V4      # )z.Returns the data at filename within the store.)readData)r   r   s   &&r   	read_dataDataSet.read_data"   s     x((r   c               (    V ^8  d   QhRRRRRRRR/# )	r   writerr   r   r   datar   r   Noner   )r   s   "r   r   r   (   s(     ) )9 ) )5 )T )r   c                (    V P                  W4       R# )z-Writes the data to filename within the store.N)	writeData)r!   r   r"   s   &&&r   
write_dataDataSet.write_data'   s     	(r   c               $    V ^8  d   QhRRRRRR/# )r   r!   r   r   r   r   r#   r   )r   s   "r   r   r   -   s!     $ $I $ $ $r   c                (    V P                  V4       R# )z-Remove the data at filename within the store.N)
removeData)r!   r   s   &&r   remove_dataDataSet.remove_data,   s     	(#r   r   N)__name__
__module____qualname____firstlineno____doc__staticmethodr   r   r&   r+   __static_attributes__r   r   r   r	   r	   	   sW    $ 0 0 ) ) ) ) $ $r   r	   N)

__future__r   fontTools.ufoLibr   r   ufoLib2.objects.miscr   ufoLib2.serder   r	   r   r   r   <module>r8      s,    " 1 *  %$i %$ %$r   