Viewing File: /opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/toml/__pycache__/decoder.cpython-35.pyc



t_(@s
ddlZddlZddlmZddlZddlZddlmZejdfkrke	Z
neZe
Z
eZeZddZddZd	d
Zy
eZWnek
reZYnXejdZGdd
d
eZejdZGdddeZddZe dddZ!ejdZ"e dddZ#ddZ$ddZ%ddddd d!d"gZ&d#d$d%d&d'd(d"gZ'e e(e&e'Z)d)d*Z*Gd+d,d,eZ+Gd-d.d.eZ,Gd/d0d0e,Z-dS)1N)linesep)TomlTzcCs5dtjkr1ddl}t||jr1dSdS)NrrTF)rr)sysversion_infopathlib
isinstancePurePath)prr/builddir/build/BUILDROOT/alt-python35-pip-20.2.4-1.el7.x86_64/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/toml/decoder.py_detect_pathlib_paths
rcCs#t|ttfrdSt|S)NT)r	bytes
basestringr)rrrr
_ispathsrcCsBdtjkr(ddl}|j|St|r>t|S|S)Nrr)rr)rrosfspathrstr)rrrrr
_getpath s

rz1([0-9]{2}):([0-9]{2}):([0-9]{2})(\.([0-9]{3,6}))?c@s"eZdZdZddZdS)TomlDecodeErrorzBase toml Exception / Error.cCs|jdd|d}||jdd|}dj||||}tj||||_||_||_||_||_	dS)N
rz{} (line {} column {} char {}))
countrfindformat
ValueError__init__msgdocposlinenocolno)selfrr r!r"r#emsgrrr
r5s				zTomlDecodeError.__init__N)__name__
__module____qualname____doc__rrrrr
r2srz([0-9])(_([0-9]))*c@s@eZdZddZddZddZddZd	S)
CommentValuecCs5||_|rdnd}|||_||_dS)Nr )valcomment_dict)r$r,r-	beginliner.	separatorrrr
rFs	
zCommentValue.__init__cCs|j|S)N)r,)r$keyrrr
__getitem__LszCommentValue.__getitem__cCs||j|<dS)N)r,)r$r1valuerrr
__setitem__OszCommentValue.__setitem__cCsN||j}t|j|jr9|jdt|St||jSdS)Nr)r,r	r.r-unicode)r$dump_value_funcretstrrrr
dumpRszCommentValue.dumpN)r&r'r(rr2r4r8rrrr
r*Esr*cCs|j}|sdS|ddkr*dS|ddkr>dSd|ksVd|krZdSt|dkrpdS|ddkr|ddkrdS|dd
ks|ddkr|dd}t|dkr|ddkr|dd	krdSd|kr
dSdS)NFr_rz_.z._T0.obx+-__)r;r<r=r>)striplen)nrrr
_strictly_valid_numZs(  2rFcset|rJtjt|dd}t|j||SWdQRXnt|tr&ddlm	ddl
m}fdd|Dsd	}|t7}|d
7}t
||dkrt|}|j}xC|D];}j|r|jt|||q|dqW|Syt|j||SWntk
r`tdYnXdS)
acParses named file or files as toml and returns a dictionary

    Args:
        f: Path to the file to open, array of files to read into single dict
           or a file descriptor
        _dict: (optional) Specifies the class of the returned toml dictionary
        decoder: The decoder to use

    Returns:
        Parsed toml file represented as a dictionary

    Raises:
        TypeError -- When f is invalid type
        TomlDecodeError: Error while decoding toml
        IOError / FileNotFoundError -- When an array with no valid (existing)
        (Python 2 / Python 3)          file paths is passed
    encodingzutf-8Nr)path)warncs%g|]}j|r|qSr)exists).0rH)oprr

<listcomp>s	zload.<locals>.<listcomp>z.Load expects a list to contain filenames only.zAThe list needs to contain the path of at least one existing file.z>Non-existent filename in list with at least one valid filenamez5You can only load a file descriptor, filename or list)rioopenrloadsreadr	listrrHwarningsrIrFNFErrorTomlDecoderget_empty_tablerJupdateloadAttributeError	TypeError)fr.decoderffilerI	error_msgdlr)rLr
rXqs. 



rXz^[A-Za-z0-9_-]+$c-Csg}|dkrt|}|j}|}t|tsKtdt|tsi|jd}|}t|}d}d}	d}
d}d}d}
d}d}d}d}d}d}xt|D]\}}|d	kr	||dd
kr	d||<q|r6||7}|d
kr7t	d|||	r||
krd}d}x5||kr|||d
kr|}|d7}qXW|sd}d}	d}
qn:|dkrU|j
rd}qq|dkrd}qq|js|dks|dkrqq|r||ddkr|dksC|dkrd}	|}
qn|dkr|j
r|r||d}|j
r|dkrd}q|dkrd}||d}|j
r|dkrd}q|dkrd}|dd.j}d}d}nt	d|d|||dkr|
dkrd}y6x/|||dkr|d7}|dkrZPqZWWnt
k
rYnX|dkr|}|}	n|	}	|	rd}
nd}
|dkr|
dkrd}d}d}yx5|||dkr;|d7}|dkrd}PqW|dksZ|dkr|rx)|||d
kr|}|d7}q]WWnt
k
rYnX|s|r|}|}	n|	}	|	rd}
nd}
|dkrp|	rp|rp|rp|}d}y=x6||d
kr<|||7}d||<|d7}qWWnt
k
rSPYnX|sp|j||||
|dkr|	r|r|r|
rt||dkr||ddkrd}qd}n
|d7}|dkr,|	r,|rd}n-|r"||ddkr,d}n
|d8}|d
kr|	sD|r|s\t	d||||ddks||ddkr||d||dkr||d||<||d||dkrd||d<n|rd||<nd}
|d7}q|
r||dkr||dkrd}
|r|r||dkrat	d||d}||7}qW|rt	d|t||	rt	d|t|dj|}|jd
}d}d}d}d}xt|D]\}} |dkr(|t||dd7}|j|||sQ|sQd
|kr]| j} | dkry|s|ryq|r	|r|| 7}n
|| 7}d}d}!|ddkr| d/dk}!nNt| dkr	| d0|dko	| d1|dko	| d2|dk}!|!r	y|j|\}"}#Wn=tk
rw	}$zt	t|$||WYdd}$~$XnX|"||<d}d}qt|d}x1|d3kr	||d
kr	|}|d8}q	W|r	|dd4}q|d
7}q| ddkrd}t| dkr5
t	d ||| ddkrd
d}| dd} d!}%n| dd} d}%d}|j| }&d}'x<|&D]4}(|'r
|%|(kr
P||(j|%7}|'}'q
W| j|%|} t| |dks| d5jdkr$t	d"|||%j| dd6jd})d}xZ|t|)kr|)|j|)|<t|)|dkrj|)|ddks|)|ddkrj|)|}*|d}xu|*d|*d7ks>|d7}|t|)dkrt	d#|*d$d%||dj|)||j}*qW|*dd8|)|<g|)|d|<n1tj|)|st	d#|)|d&|||d7}qOW|}xtt|)D]}|)|}+|+dkrt	d'||y||+|t|)dkr
|+|krE
|j|+|r
t	d(||nD|re
||+j|jn$t	d)|+d*t|||Wntk
r
|d9}|+|kr
|j||+<|t|)dkr
|r
|jg||+<Ynttk
rf|t|)dkr#|j|+|j||+<|t|)dkrb|rb|jg||+<YnX||+}|ry|d:}Wqtk
rYqXqWq| dd+kr0| d;d,krt	d-||y|j| |||Wqtk
r,}$zt	t|$||WYdd}$~$XqXqd| kry|j | |||},Wn=tk
r}$zt	t|$||WYdd}$~$XnX|,dk	r|,\}}}qW|S)<aDParses string as toml

    Args:
        s: String to be parsed
        _dict: (optional) Specifies the class of the returned toml dictionary

    Returns:
        Parsed toml file represented as a dictionary

    Raises:
        TypeError: When a non-string is passed
        TomlDecodeError: Error while decoding toml
    Nz!Expecting something like a stringutf8rFTr
rr+z2Key name found without value. Reached end of line.\r;r9r@"'=z&Found invalid character in key name: 'z'. Try quoting the key name.r#[]zUnbalanced quotes	zFound empty keyname. z2Key name found without value. Reached end of file.z/Unterminated string found. Reached end of file.z,Opening key group bracket on line by itself.z]]z"Key group not on a line by itself.zInvalid group name 'z' Something zwent wrong.z'. Try quoting it.z(Can't have a keygroup with an empty namez-An implicitly defined table can't be an arrayzWhat? z already exists?{}z,Line breaks are not allowed in inlineobjectsrBrBrBrBrBrBrBrBrBrBrBrB)!rUrVr	rrZr5decoderR	enumeraterisspaceisalnumrstrip
IndexErrorpreserve_commentrDjoinsplitembed_commentsrC
load_valuerr_get_split_on_quotesr
_groupname_rematch_rangeremoveappendKeyErrorload_inline_object	load_line)-sr.r\implicitgroupsretvalcurrentleveloriginalslopenarr
openstringopenstrcharmultilinestr
arrayoftablesr/keygroup	dottedkeykeynamer1prev_keyline_noiitemoddbackslashknextitem	tripquotejr-multikeymultibackslashr!idxlineclosedr3vtypeerrsplitstrquotesplitsquoted
quotesplitgroupsgroupstrgroupretrrr
rPsv 

#$	
	
		

		

*		
		
(

&

+
	
	
,"*


#








.
+rPcCsd}d}yBt|dkrM|ddkr7|djdkr`|dd}d}n|dd}d|kr|jd}|d|}||d}nJd|kr|jd}|d|}||d}nd}|}|dk	rt|}tt|d	d
t|}nt|dd}Wntk
rhd}YnXd|ddkrdSyt|d	krtjt|ddt|dd
t|dd	}ntjt|ddt|dd
t|dd	t|ddt|ddt|dd||}Wntk
r}dSYnX|S)Nrr;rZr?r@
rr
rBrB)rDupperindexrintrdatetimedate)r,microsecondtzsubsecondvaltzvalsubsecondvalandtz
splitpointr_rrr

_load_datesP	
&&&6
	rcCsd}t|d}x1|dkrI||dkrI|}|d8}qWxK|D]C}|rd}t|d}x1|dkr||dkr|}|d8}qvW||7}||7}qQd}d}d}|dkrd}dj||||j}|jd	r$td
||ddkr[|djdr[td
|d
|tt|d7}|t|t|d7}qQW|S)NFrrdrbrrz\Ur0123456789abcdefzInvalid escape sequence: r_01234567z). Only scalar unicode points are allowed.rrBrB)rDrxlowerrCrunichrrr5)vhexbytesprefixskiprhxhxbhxblenrrr
_load_unicode_escapes6s:


##

$rr:r=r[rErtrfrrcrlcCsd}d}x|t|kr	|rd}||tkrr|d|dt||||dd}q||dkr|d|d||d}q||dks||dkr|d7}qtdqn||dkrd	}|d7}qW|S)
z%Unescape characters in a TOML string.rFNrrduUzReserved escape sequence usedT)rD_escapes_escape_to_escapedcharsr)rr	backslashrrr
	_unescape`s"5% 
rc@seZdZdZdS)InlineTableDictz,Sentinel subclass of dict for inline tables.N)r&r'r(r)rrrr
rvsrc@seZdZeddZddZddZdddd	Zd
dZdd
Z	ddZ
dddZddZddZ
ddZddZddZdS)rUcCs
||_dS)N)r.)r$r.rrr
r|szTomlDecoder.__init__cCs
|jS)N)r.)r$rrr
rVszTomlDecoder.get_empty_tablecCs#Gddd|jt}|S)Nc@seZdZdZdS)zBTomlDecoder.get_empty_inline_table.<locals>.DynamicInlineTableDictzConcrete sentinel subclass for inline tables.
            It is a subclass of _dict which is passed in dynamically at load
            time

            It is also a subclass of InlineTableDict
            N)r&r'r(r)rrrr
DynamicInlineTableDictsr)r.r)r$rrrr
get_empty_inline_tablesz"TomlDecoder.get_empty_inline_tableFcCs|ddjd}g}t|dkrL|djrL|jx5t|dkr|jd}y|jdd\}}	Wntk
rtdYnX|	j}	|	d|	dkr|	ddks9|	ddks9|	dks9|	ddkr|	ddks9|	dd
krI|	ddkrI|j|qOt|dkrt|d|d|d<qOtdqOWx3|D]+}
|j|
|||}|dk	rPqWdS)Nr,rrhz Invalid inline table encounteredrfrgz-0123456789truefalserjrkrmrnz&Invalid inline table value encounteredrBrB)rfrg)rrrBrB)ryrDrCpoprrr)r$rrrrcandidate_groupsrcandidate_groupr9r3rstatusrrr
rs4#

$  
	zTomlDecoder.load_inline_objectcCs/|jd}d}g}t|dkrd|dkr|djd}|dd}x}t|ddkrt|r|dd|d7<|dd}d|dkrc|dd	|d
jd}qcW||7}x>|D]6}|r
|j|q||jd7}|}qW|S)NrfFrrgrrerBrBrBrB)ryrDr)r$rdoublequotesplitsrrsinglequotesplitsdoublequotesplitrrr
r|s&"%


z TomlDecoder._get_split_on_quotescCs	d}|j|}d}x<|D]4}|r<d|kr<P||jd7}|}q"W|jd|}	t|	d}
tj|	dr|	djdd|	d<xct|	dr|	dddkr|	dddkr|	ddd	kr|	ddd
kr|	dddkr|	d ddkr|	d!jd
kr|	d"jdkryt	|	d#PWnt
k
rYnXt|	d$dk	rPtj|	d%rP|d7}|	d&}|jd|}	||	d'krt
d|
rt|	d(}
qWdj
|	dd)j|	d*jg}	d|	dkrd
|	dksnd	|	dkr|j|	d}d}g}xa|D]C}|r|j|n |dd|jdD7}|}qWn|	djd}x$|d+dkr|dd,}qWxM|dd-D];}
|
dkr>q)|
|krZ|j||
<||
}q)W|d.j|	d<nb|	ddd
ks|	ddd	kr|	dd/|	ddkrt|	ddd0|	d<|j|	d\}}|d1krzx9|d2krA|	d||dkrA|}|d8}q	W|r_|	ddd3}n|	dd}|	d}n|j|	d|
\}}y||	dt
dWnPtk
rt
dYn3tk
r|r|||fS|||	d<YnXdS)4NrFrhr9rbrr+rlrgrfrjrmrrzInvalid date or numberr;cSsg|]}|jqSr)rC)rKlevelrrr
rMs	z)TomlDecoder.load_line.<locals>.<listcomp>rdrzDuplicate keys!rBrBrBrBrBrBrBrBrBrBrBrBrBrBrBrBrBrBrBrBrBrBrBrBrBrBrBrBrBrB)r|rryrF_number_with_underscoresr~replacerDrCfloatrrTIME_RErxrrVr_load_line_multiline_strr{rZr)r$rrrrrrrrpairstrictly_validprev_vallevelsrrkoffsetrr3rrrr
rs
;((


/ 
('



zTomlDecoder.load_linecCsd}t|dkr"d|fS|ddkr|jddkr|j|r|ddjjd}xet|dkr|d
ddkr|dddkr|dd|dd|dg}qyW|d}t|t|}|}|ddkr.|ddkr.d|fS|d|dksV|d	|dkr`d|fSt|d
kr|d|dkr|d|dkr|d|dkrd|fSt|d|fS)NrrrrjrkrrfrgrerrBrBrBrBrororBrBrBrBrBrorprB)rDrC_load_array_isstrarrayry)r$rpoffsetnewprrr
rs$
&=+
 
(
N
z$TomlDecoder._load_line_multiline_strTcCs|std|dkr"d,S|dkr2d-S|ddksR|dd	kr|d}|d
dj|}d}d}t|d
kr|ddkr|d
dkr|dd}d}d}x|D]}|dkr|r|d
7}qd}qd}	yBd.}
||
}x+|d
krJ|	}	|
d
8}
||
}q WWntk
r`YnX|	s|rtddq|s|d
krd}qd}qW|dkr|jd
d
d}d}
xs|D]k}
|
dkr|
}
q|
dtkr7|
ddkr7|
ddkr7|
r7td|
rd}
qWxOddgD]A}||krT|j|}t|d|d
d|}qTWt|}t|d
kr|d
|krt|dks|d
|dkr|dd/}|d
d0dfS|ddkr4|j|dfS|ddkrj|j}|j	|||dfSt
j|rt
j|j\}}}}}t
jt|t|t||rt|nd}|dfSt|}|dk	r|dfS|stdd}d}|ddkrLd}|d
d}n |dd krl|d
d}|jd!d}|j}d"|ksd#|krd$|ksd%|krd"|kr|jd"d
d
dkrtd&|dd'kr
td(t|}d)}n<t|dkr[|d*ksI|d+kr[t|}d)}|dkrvt|d}|rd||fS||fSdS)1NzEmpty value is invalidrTboolrFrrfrgrrbrerdzFound tokens after a closed zstring. Invalid TOML.rrzReserved escape sequence usedz\uz\Urrrjarrayrm
inline_objecttimerz<Weirdness with leading zeroes or underscores in your number.rr@r?r9r;r>eEz,This float is missing digits after the point
0123456789z'This float doesn't have a leading digitrinfnan)Tr)FrrBrorB)rryrDrvrrr
load_arrayrrrr~rrrrrrrr)r$rr	quotechartestvtriplequotetriplequotecountrtvrrr
escapeseqsrrrrhmrr9msrparsed_dateitypeneglowervrrr
r{)s 
2

	



	


 

4
$<

0(	*zTomlDecoder.load_valuecCst|dkrdS|d|dkr.dSd}d}x?t||dkr{||dkrw|}|d8}q=Pq=W|S)	NrTrFrerdrBro)rD)r$rrrrrr
bounded_strings
zTomlDecoder.bounded_stringcCsJ|ddj}|dkrF|ddksB|ddkrFdSdS)	NrrbrrfrgTFrB)rC)r$arrr
rs,z"TomlDecoder._load_array_isstrarraycCsd}g}|j}d|ddksWd|ddjddjkr|j|}|ddjjds|ddjd}ng}d}d}||dkrdnd}d}	xw|t|ddkrN||d	ks||d
kr_|	rX|d}
x1|
dkrW||
dkrW|	}	|
d8}
q'W|	}	|	r||dkr|d7}|	s||dkr|d7}qn3||dkr|dkr|d8}|d7}q|d7}|j||||d}x:|t|ddkr@||dkr@|d7}qW|d}qW|}d}|rux|t|dkr||j}x|j|st|dkr|d|dko|dknr|d|dkr|d|dkr||d||d||<||j}|t|dkrl|d|d||dd}q|d|d}qW|d7}qdWnt|dd}
g}d}d}xtt|
D]}|
|dkr|d7}q|
|dkr|d8}q|
|dkr|r|jdj	|
|||d}qW|jdj	|
|dxtt|D]w}||j||<||dkr|j
||\}}|r||krtdn|}|j|qW|S)NrjrrbrrmrreFrfrgrdrnrrkzNot a homogeneous arrayrBrBrBrBrBrorprB)rCryr
startswithrDrrrRrrxr{r)r$r
atyperstrarraynew_astart_group_indexend_group_indexopen_bracket_countin_strbackslash_indexr=abalrrrnvalntyperrr
rs? 






()

  zTomlDecoder.load_arraycCsdS)Nr)r$rr1r-r/rrr
rwszTomlDecoder.preserve_commentcCsdS)Nr)r$rrrrr
rz	szTomlDecoder.embed_commentsN)r&r'r(dictrrVrrr|rrr{rrrrwrzrrrr
rUzsTm[rUcs=eZdZefddZddZddZS)TomlPreserveCommentDecodercs#i|_tt|j|dS)N)saved_commentssuperrr)r$r.)	__class__rr
rs	z#TomlPreserveCommentDecoder.__init__cCs|||f|j|<dS)N)r)r$rr1r-r/rrr
rwsz+TomlPreserveCommentDecoder.preserve_commentcCsM||jkrdS|j|\}}}t|||||j||<dS)N)rr*r.)r$rrr1r-r/rrr
rzs
z)TomlPreserveCommentDecoder.embed_comments)r&r'r(rrrwrzrr)rr
r
sr).rrNrrrerpip._vendor.toml.tzrrxrangerrr5rangerchrrrrrFileNotFoundErrorrT	NameErrorIOErrorcompilerrrrobjectr*rFrrXr}rPrrr
_escapedcharsziprrrrUrrrrr
<module>sJ		

1c/#
Back to Directory File Manager