ó vÆ_c@sddlZddlZddlZddlmZddlmZejdkr\eZ ndd„Z dd„Z d„Z d„Zd „Zd efd „ƒYZd efd „ƒYZdefd„ƒYZdefd„ƒYZdefd„ƒYZdefd„ƒYZdS(iÿÿÿÿN(tDecimal(tInlineTableDicticCs;|jstdƒ‚nt|d|ƒ}|j|ƒ|S(sWrites out dict as toml to a file Args: o: Object to dump into toml f: File descriptor where the toml should be stored encoder: The ``TomlEncoder`` to use for constructing the output string Returns: String containing the toml corresponding to dictionary Raises: TypeError: When anything other than file descriptor is passed s0You can only dump an object to a file descriptortencoder(twritet TypeErrortdumps(totfRtd((sI/opt/alt/python38/lib/python3.8/site-packages/pip/_vendor/toml/encoder.pytdump s   c Cs€d}|d kr$t|jƒ}n|j|dƒ\}}||7}t|ƒg}x$|r{g|D]}t|ƒ^qe}x)|D]!}||kr„tdƒ‚q„q„W||7}|jƒ} x°|D]¨}|j|||ƒ\}} |sü| rG| rG|r|ddkr|d7}n|d|d7}|rG||7}qGnx$| D]} | | | |d| >> import toml >>> output = { ... 'a': "I'm a string", ... 'b': ["I'm", "a", "list"], ... 'c': 2400 ... } >>> toml.dumps(output) 'a = "I'm a string" b = [ "I'm", "a", "list",] c = 2400 ' ``` tsCircular reference detectediþÿÿÿs s t[s] t.N(tNonet TomlEncodert __class__t dump_sectionstidt ValueErrortget_empty_table( RRtretvalt addtoretvaltsectionst outer_objstsectiont section_idst outer_objt newsectionst addtosectionsts((sI/opt/alt/python38/lib/python3.8/site-packages/pip/_vendor/toml/encoder.pyR"s4           cCsÀtjdkr?t|dƒr?t|tƒr?|jdƒ}nd|}|ddkrf|d}n|jdƒ}|sŠ|jd ƒrš|dd !}n|rÇ|jd dƒ}|jd d ƒ}n|jd ƒ}xÑt |ƒdkr©d }|ds|d}n|djddƒ|d<|d|dk}x7|d| ro|d|dkro| }|d8}q9W|rd}nd}|d||dg|d}qÙWt d |dd ƒS(Nitdecodesutf-8s%rituit't"iÿÿÿÿs\'s\"s\xs\\s\txtu00i(i( tsyst version_infothasattrt isinstancetstrRt startswithtreplacetsplittlentunicode(tvt singlequotetitjoinxtjoiner((sI/opt/alt/python38/lib/python3.8/site-packages/pip/_vendor/toml/encoder.pyt _dump_strVs4-    % %cCs%dj|ƒjddƒjddƒS(Ns{}se+0se+se-0se-(tformatR*(R.((sI/opt/alt/python38/lib/python3.8/site-packages/pip/_vendor/toml/encoder.pyt _dump_floatuscCs0|jƒ}|dkr"|jƒS|jƒd S(Niúÿÿÿ(t utcoffsetR t isoformat(R.R6((sI/opt/alt/python38/lib/python3.8/site-packages/pip/_vendor/toml/encoder.pyt _dump_timeys   RcBsDeZeed„Zd„Zd„Zd„Zd„Zd„Z RS(cCs}||_||_i tt6tt6|jt6d„t6d„t6t t 6t t 6d„t j 6t t j6d„t j6|_dS(NcSst|ƒjƒS(N(R-tlower(R.((sI/opt/alt/python38/lib/python3.8/site-packages/pip/_vendor/toml/encoder.pytŠscSs|S(N((R.((sI/opt/alt/python38/lib/python3.8/site-packages/pip/_vendor/toml/encoder.pyR:‹scSs|jƒjddƒS(Ns+00:00tZ(R7R*(R.((sI/opt/alt/python38/lib/python3.8/site-packages/pip/_vendor/toml/encoder.pyR:ŽscSs |jƒS(N(R7(R.((sI/opt/alt/python38/lib/python3.8/site-packages/pip/_vendor/toml/encoder.pyR:s(t_dicttpreserveR3R(R-t dump_listtlisttbooltintR5tfloatRtdatetimeR8ttimetdatet dump_funcs(tselfR<R=((sI/opt/alt/python38/lib/python3.8/site-packages/pip/_vendor/toml/encoder.pyt__init__ƒs       cCs |jƒS(N(R<(RG((sI/opt/alt/python38/lib/python3.8/site-packages/pip/_vendor/toml/encoder.pyR“scCsFd}x/|D]'}|dt|j|ƒƒd7}q W|d7}|S(NR t t,t](R-t dump_value(RGR.RR((sI/opt/alt/python38/lib/python3.8/site-packages/pip/_vendor/toml/encoder.pyR>–s  % cCs’d}t|tƒr{g}x>|jƒD]0\}}|j|ƒ}|j|d|ƒq(W|ddj|ƒd7}|St|j|ƒƒSdS(s§Preserve inline table in its compact syntax instead of expanding into subsection. https://github.com/toml-lang/toml#user-content-inline-table R s = s{ s, s } N(R'tdicttitemstdump_inline_tabletappendtjoinR-RL(RGRRtval_listtkR.tval((sI/opt/alt/python38/lib/python3.8/site-packages/pip/_vendor/toml/encoder.pyROscCsj|jjt|ƒƒ}|dkrCt|dƒrC|jt}n|dk rY||ƒS|jt|ƒS(Nt__iter__(RFtgetttypeR R&R?R((RGR.tdump_fn((sI/opt/alt/python38/lib/python3.8/site-packages/pip/_vendor/toml/encoder.pyRL®sc CsÀd}|dkr/|ddkr/|d7}n|jƒ}d}xh|D]`}t|ƒ}|}tjd|ƒst|ƒ}nt||tƒs\t}t||tƒrÝx-||D]} t| tƒr¸t }q¸q¸Wn|rxs||D](} d} |d||d7}|j | ||ƒ\} } | r\| dd krO| | 7} q\|| 7}nx­| r |jƒ} xŽ| D]†}|j | |||d|ƒ\}}|r×| d ||d|d 7} | |7} nx$|D]}||| |d|RORLR(((sI/opt/alt/python38/lib/python3.8/site-packages/pip/_vendor/toml/encoder.pyRs     tTomlPreserveInlineDictEncodercBseZed„ZRS(cCstt|ƒj|tƒdS(N(tsuperRkRHR\(RGR<((sI/opt/alt/python38/lib/python3.8/site-packages/pip/_vendor/toml/encoder.pyRHîs(RiRjRMRH(((sI/opt/alt/python38/lib/python3.8/site-packages/pip/_vendor/toml/encoder.pyRkìstTomlArraySeparatorEncodercBs#eZeedd„Zd„ZRS(RJcCsctt|ƒj||ƒ|jƒdkr8d|}n|jdƒrVtdƒ‚n||_dS(NR RJs ,sInvalid separator for arrays(RlRmRHtstripRt separator(RGR<R=Ro((sI/opt/alt/python38/lib/python3.8/site-packages/pip/_vendor/toml/encoder.pyRHôs  cCs¼g}d}x$|D]}|j|j|ƒƒqWxx|gkr­g}xY|D]Q}t|tƒr…x9|D]}|j|ƒqkWqO|dt|ƒ|j7}qOW|}q6W|d7}|S(NR RIRK(RPRLR'R?R-Ro(RGR.ttRRRtr((sI/opt/alt/python38/lib/python3.8/site-packages/pip/_vendor/toml/encoder.pyR>üs     (RiRjRMR[RHR>(((sI/opt/alt/python38/lib/python3.8/site-packages/pip/_vendor/toml/encoder.pyRmòstTomlNumpyEncodercBs eZeed„Zd„ZRS(cCs’ddl}tt|ƒj||ƒt|j|js"      4   k