
    5i{                         S SK r S SKrS SKJr  S SKJr  S SKJr  \(       a  S SKJ	r
  OS SKJr  \\\ R                  4   r
 " S S5      rg)	    N)TYPE_CHECKING)loads)TOMLDocument)StrPath)Unionc                   J    \ rS rSrSrS\SS4S jrS\4S jrS\SS4S	 jr	S
r
g)TOMLFile   z=
Represents a TOML file.

:param path: path to the TOML file
pathreturnNc                 :    Xl         [        R                  U l        g )N)_pathoslinesep_linesep)selfr   s     1lib/python3.13/site-packages/tomlkit/toml_file.py__init__TOMLFile.__init__   s    


    c                 P   [        U R                  SSS9 nUR                  5       nUR                  S5      nUS:  aE  UR                  S5      nXC:X  a  SU l        UR                  SS5      nOUS:X  a  SU l        OSU l        [        U5      sSSS5        $ ! , (       d  f       g= f)	zGRead the file content as a :class:`tomlkit.toml_document.TOMLDocument`.utf-8 encodingnewline
r   
mixedN)openr   readcountr   replacer   )r   fcontentnum_newlinenum_win_eols        r   r!   TOMLFile.read   s    $**w;qffhG "---KQ%mmF3-$*DM%oofd;G A%$(DM$+DM> <;;s   A7B
B%datac                 <   UR                  5       nU R                  S:X  a  UR                  SS5      nO(U R                  S:X  a  [        R                  " SSU5      n[        U R                  SSSS9 nUR                  U5        SSS5        g! , (       d  f       g= f)	z#Write the TOMLDocument to the file.r   r   z	(?<!\r)\nwr   r   r   N)	as_stringr   r#   resubr    r   write)r   r)   r%   r$   s       r   r/   TOMLFile.write0   sw    .." ==D oofd3G]]f$ff\67;G$**cGR@AGGG A@@s   2B
B)r   r   )__name__
__module____qualname____firstlineno____doc___StrPathr   r   r!   r/   __static_attributes__ r   r   r	   r	      s9    #X #$ #"l "&, 4 r   r	   )r   r-   typingr   tomlkit.apir   tomlkit.toml_documentr   	_typeshedr   r6   r   strPathLiker	   r8   r   r   <module>r?      s<    	 	    . -S"++%&H) )r   