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


t_c@sddlZddlZddlmZddlZddlZddlmZejdfkrke	Z
neZe
Z
eZeZdZdZdZy
eZWnek
reZnXejdZd	efd
YZejdZdefd
YZdZe e!dZ"ejdZ#e e!dZ$dZ%dZ&dddddddgZ'dddddd dgZ(e e)e'e(Z*d!Z+d"efd#YZ,d$efd%YZ-d&e-fd'YZ.dS((iN(tlinesep(tTomlTzicCs8dtjkr4ddl}t||jr4tSntS(Niii(ii(tsystversion_infotpathlibt
isinstancetPurePathtTruetFalse(tpR((sI/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/toml/decoder.pyt_detect_pathlib_paths
cCs#t|ttfrtSt|S(N(Rtbytest
basestringRR
(R	((sI/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/toml/decoder.pyt_ispathscCsBdtjkr(ddl}|j|St|r>t|S|S(Niii(ii(RRtostfspathR
tstr(R	R((sI/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/toml/decoder.pyt_getpath s

s1([0-9]{2}):([0-9]{2}):([0-9]{2})(\.([0-9]{3,6}))?tTomlDecodeErrorcBseZdZdZRS(sBase toml Exception / Error.cCs|jdd|d}||jdd|}dj||||}tj||||_||_||_||_||_	dS(Ns
iis{} (line {} column {} char {})(
tcounttrfindtformatt
ValueErrort__init__tmsgtdoctpostlinenotcolno(tselfRRRRRtemsg((sI/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/toml/decoder.pyR5s				(t__name__t
__module__t__doc__R(((sI/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/toml/decoder.pyR2ss([0-9])(_([0-9]))*tCommentValuecBs,eZdZdZdZdZRS(cCs5||_|rdnd}|||_||_dS(Ns
t (tvaltcommentt_dict(RR$R%t	beginlineR&t	separator((sI/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/toml/decoder.pyRFs	
cCs|j|S(N(R$(Rtkey((sI/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/toml/decoder.pyt__getitem__LscCs||j|<dS(N(R$(RR)tvalue((sI/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/toml/decoder.pyt__setitem__OscCsN||j}t|j|jr9|jdt|St||jSdS(Ns
(R$RR&R%tunicode(Rtdump_value_functretstr((sI/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/toml/decoder.pytdumpRs(RR RR*R,R0(((sI/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/toml/decoder.pyR"Es			cCs|j}|stS|ddkr*tS|ddkr>tSd|ksVd|krZtSt|dkrptS|ddkr|ddkrtS|ddks|dd
kr|d}t|dkr|ddkr|ddkrtSnd|krtStS(Nit_is_.s._it0t.totbtxt+t-t__(R3R4R5R6(tstripRtlenR(tn((sI/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/toml/decoder.pyt_strictly_valid_numZs(  
2c
Csxt|rItjt|dd}t|j||SWdQXn+t|tr:ddlm	}ddl
m}g|D]}|j|r|^qsd}|t
7}|d7}t|n|dkrt|}n|j}xC|D];}	|j|	r(|jt|	||q|d	qW|Syt|j||SWntk
rstd
nXdS(scParses 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
    tencodingsutf-8Ni(tpath(twarns.Load expects a list to contain filenames only.sAThe list needs to contain the path of at least one existing file.s>Non-existent filename in list with at least one valid filenames5You can only load a file descriptor, filename or list(R
tiotopenRtloadstreadRtlistRR?twarningsR@texistsRtFNFErrortNonetTomlDecodertget_empty_tabletupdatetloadtAttributeErrort	TypeError(
tfR&tdecodertffiletopR@R?t	error_msgtdtl((sI/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/toml/decoder.pyRMqs.(



s^[A-Za-z0-9_-]+$c-Csg}|d.kr!t|}n|j}|}t|tsQtdnt|tsr|jd}n|}t|}d}t	}	d}
t	}t	}t
}
t	}t	}d}d}d}d}xt|D]\}}|dkr||ddkrd||<qn|r]||7}|dkrFtd	||n|	r||
krt	}d}x5||kr|||d
kr|}|d7}qgW|sd}t	}	d}
qqqnO|dkrm|j
rd}qq|dkrt
}qq|js|d
ks|dkr&qq|r||ddkr|dksX|dkrt
}	|}
qqn|dkr|j
r|r||d}|j
r|dkrd}qqqn|dkrt
}||d}|j
r|dkrd}qqqn|dkr@d}|d j}d}t	}q]td|d||n|dkr|
dkrd}y9x2|||dkr|d7}|dkrPqqWWntk
rnX|dkr|}|}	n|	}	|	rd}
qd}
n|dkr|
dkrt	}d}t	}yx8|||dkrj|d7}|dkr3t
}Pq3q3W|dks|dkr|rx,|||d
kr|}|d7}qWnWntk
rnX|s|r|}|}	q|	}	n|	rd}
qd}
n|dkr|	r|r|r|}d}y=x6||dkrs|||7}d||<|d7}q>WWntk
rPnX|s|j||||
qn|dkr|	r|r|r|
rt||dkr||ddkrt
}qt
}q|d7}n|dkrq|	rq|r>t	}qq|rd||ddkrnt	}qnqq|d8}n|dkrS|	s|r-|std||n||ddks||ddkrF||d||dkrF||d||<||d||dkr*d||d<q*qFn|r@d||<nt
}
|d7}q|
r||dkr||dkrt	}
|r|r||dkrtd||nd}||7}qqqW|rtd|t|n|	rtd|t|ndj|}|jd}d.}d}t	}d}xt|D]\}} |dkr|t||dd7}n|j|||s|sd|kr| j} n| dkr|sQ|rqQn|rO
|r|| 7}n
|| 7}t	}t	}!|ddkr1	| ddk}!nQt| dkr	| d|dko|	| d|dko|	| d|dk}!n|!r	y|j|\}"}#Wn+tk
r	}$tt|$||nX|"||<d.}d}qQt|d}x1|dkr+
||d
kr+
|}|d8}q	W|r?
|d }qQ|d7}qQn| ddkrt	}t| dkr
td ||n| ddkr
t
}| d} d!}%n| d} d}%d}|j| }&t	}'x?|&D]7}(|'r|%|(krPn||(j|%7}|'}'q
W| j|%|} t| |dks`| djdkrutd"||n|%j| d jd})d}xW|t|)kr|)|j|)|<t|)|dkr|)|ddks|)|ddkr|)|}*|d}xu|*d|*dks|d7}|t|)dkrjtd#|*d$d%||ndj|)||!j}*qW|*dd!|)|<g|)|d|+n4tj|)|std#|)|d&||n|d7}qW|}xtt|)D]}|)|}+|+dkr;
td'||ny||+|t|)dkr
|+|kr
|j|+|r
td(||q
q
|r
||+j |jq
td)|+d*t|||nWntk
rI|d}|+|kr|j||+<|t|)dkrF|rF|jg||+<qFqnyt!k
r|t|)dkr||j |+n|j||+<|t|)dkr|r|jg||+<qnX||+}|r

y|d}Wqt!k
rqXq

q

WqQ| dd+kr~| dd,kr3td-||ny|j"| |||Wqtk
rz}$tt|$||qXqQd| krQy|j#| |||},Wn+tk
r}$tt|$||nX|,d.k	r|,\}}}qqQqQW|S(/sDParses 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
    s!Expecting something like a stringtutf8itis
s
R#s2Key name found without value. Reached end of line.s\iR3R1R8t"t't=is&Found invalid character in key name: 's'. Try quoting the key name.it#t[t]sUnbalanced quotess	sFound empty keyname. s2Key name found without value. Reached end of file.s/Unterminated string found. Reached end of file.iis,Opening key group bracket on line by itself.s]]s"Key group not on a line by itself.sInvalid group name 's' Something swent wrong.s'. Try quoting it.s(Can't have a keygroup with an empty names-An implicitly defined table can't be an arraysWhat? s already exists?t{t}s,Line breaks are not allowed in inlineobjectsN($RIRJRKRRROR-tdecodeRERRt	enumerateRtisspacetisalnumtrstript
IndexErrortpreserve_commentR;tjointsplittembed_commentsR:t
load_valueRRt_get_split_on_quotesRt
_groupname_retmatcht_rangetremovetappendtKeyErrortload_inline_objectt	load_line(-tsR&RQtimplicitgroupstretvaltcurrentleveltoriginaltsltopenarrt
openstringtopenstrchartmultilinestrt
arrayoftablesR'tkeygroupt	dottedkeytkeynameR)tprev_keytline_notititemtoddbackslashtktnextitemt	tripquotetjR%tmultikeytmultibackslashRtidxtlinetclosedR+tvtypeterrtsplitstrtquotesplitstquotedt
quotesplittgroupstgroupstrtgrouptret((sI/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/toml/decoder.pyRCsv 

#$				

			

	
		

*		
	
(

&


	


	

,*


 








c
Cs5d}d}y!t|dkr,|ddkr|djdkr]|dd!}d}nz|d}d|kr|jd}|| }||}n>d|kr|jd}|| }||}nd}|}|dk	rt|}ntt|d	d
t|}q,t|d}nWntk
rFd}nXd|dkr[dSyt|d	krtjt|d t|d
d!t|dd	!}notjt|d t|d
d!t|dd	!t|dd!t|dd!t|dd!||}Wntk
r0dSX|S(NiiR3itZiR7R8i
iiiiiiii
iii(	RIR;tuppertindexRtintRtdatetimetdate(R$tmicrosecondttztsubsecondvalttzvaltsubsecondvalandtzt
splitpointRU((sI/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/toml/decoder.pyt
_load_datesP
	






 0
cCst}t|d}x1|dkrI||dkrI|}|d8}qWxN|D]F}|rt}t|d}x1|dkr||dkr|}|d8}qvW||7}||7}qQnd}d}d}|dkrd}ndj||||!j}|jd	r*td
|n|ddkrd|djdrdtd
|d
n|tt|d7}|t|t|7}qQW|S(Niis\RXiis\Uit0123456789abcdefsInvalid escape sequence: RUt01234567s). Only scalar unicode points are allowed.i(	RR;RhtlowerR:RtunichrRR-(tvthexbytestprefixtskipRthxthxbthxblen((sI/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/toml/decoder.pyt_load_unicode_escapes6s:


	 #

R2R5RPR<trttRYtsss
s
s	cCsd}t}x|t|kr|rt}||tkrf||d t||||d}q||dkr||d ||}q||dks||dkr|d7}qtdqn||dkrt}n|d7}qW|S(s%Unescape characters in a TOML string.iis\tutUsReserved escape sequence used(RR;t_escapest_escape_to_escapedcharsRR(RRt	backslash((sI/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/toml/decoder.pyt	_unescape`s") 
	tInlineTableDictcBseZdZRS(s,Sentinel subclass of dict for inline tables.(RR R!(((sI/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/toml/decoder.pyRvsRJcBseZedZdZdZeedZdZdZ	dZ
edZdZ
d	Zd
ZdZdZRS(
cCs
||_dS(N(R&(RR&((sI/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/toml/decoder.pyR|scCs
|jS(N(R&(R((sI/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/toml/decoder.pyRKscCs#d|jtfdY}|S(NtDynamicInlineTableDictcBseZdZRS(sConcrete 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
            (RR R!(((sI/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/toml/decoder.pyRs(R&R(RR((sI/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/toml/decoder.pytget_empty_inline_tablescCs|dd!jd}g}t|dkrL|djrL|jnx4t|dkr|jd}y|jdd\}}	Wntk
rtdnX|	j}	|	d|	dkr|	ddks8|	dd	ks8|	dks8|	ddkr|	dd
ks8|	ddkrH|	ddkrH|j|qOt|dkrs|d|d|d<qOtdqOWx6|D].}
|j|
|||}|dk	rPqqWdS(Niit,iR[s Invalid inline table encounteredRYRZs-0123456789ttruetfalseR]R^R_R`s&Invalid inline table value encountered(RYRZ(RR(RiR;R:tpopRRqRtRI(RRRxRRtcandidate_groupsRtcandidate_groupR1R+Rtstatus((sI/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/toml/decoder.pyRss4#

$  
	cCs%|jd}t}g}t|dkrd|dkr|djd}|d}xvt|ddkrt|r|dcd|d7<|d}d|dkr]|d |djd}q]q]W||7}nx>|D]6}|r|j|q||jd7}|}qW|S(NRYiRZiii(RiRR;Rq(RRtdoublequotesplitsRRtsinglequotesplitstdoublequotesplit((sI/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/toml/decoder.pyRls&"
%


cCsd}|j|}t}x?|D]7}|r?d|kr?Pn||jd7}|}q"W|jd|}	t|	d}
tj|	dr|	djdd|	d<nxnt|	dr|	dddkr|	dddkr|	ddd	kr|	ddd
kr|	dddkr|	dddkr|	dj	d
kr|	dj	dkryt
|	dPWntk
rnXt|	ddk	rPntj|	drPn|d7}|	d}|jd|}	||	dkrtdn|
rt|	d}
qqWdj|	d j	|	dj	g}	d|	dkrd
|	dksyd	|	dkr|j|	d}t}g}xm|D]O}|r|j|n,|g|jdD]}
|
j	^q7}|}qWn|	djd}x|ddkr(|d }qWxM|d D]A}
|
dkrLq4n|
|krk|j||
<n||
}q4W|dj	|	d<nb|	ddd
ks|	ddd	kr|	dd|	ddkrt|	ddd!|	d<n|j|	d\}}|dkrx9|dkrR|	d||dkrR|}|d8}qW|rj|	dd }n|	dd}|	d}n|j|	d|
\}}y||	dtdWnNtk
rtdn2tk
r
|r|||fS|||	d<nXdS(NiR[iR1RXiR#s	RZRYR]R_RRsInvalid date or numberR3s\s
sDuplicate keys!(RlRRRiR=t_number_with_underscoresRntreplaceR;R:tfloatRRRItTIME_RERhRqRKRt_load_line_multiline_strRkRORr(RRRxRRRRRRtpairtstrictly_validtprev_valtlevelstlevelRtkoffsetR~R+R((sI/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/toml/decoder.pyRts
;((


) 
&('



cCsd}t|dkr"d|fS|ddkr|jddkr|j|r|djjd}x_t|dkr|dddkr|ddd	kr|d
 |d
d|dg}qsW|d}t|t|}|}n|ddkr%|dd	kr%d|fS|d|dksM|d|dkrWd|fSt|dkr|d|dkr|d
|dkr|d
|dkrd|fSt|d|fS(NiiiR]R^iRRYRZiiii(R;R:t_load_array_isstrarrayRi(RR	tpoffsettnewp((sI/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/toml/decoder.pyRs$
&=%
	 
(
N
c	Cs|stdn|dkr+tdfS|dkrAtdfS|ddksa|ddkr|d}|dj|}t}d}t|dkr|dd	kr|dd	kr|d
}t}nt}x|D]}|d	kr
|r|d7}qt}qt}	yBd}
||
}x+|dkrP|	}	|
d8}
||
}q&WWntk
renX|	s|rtd
dq|s|dkrt}qd}qqW|dkr|jdd}t}
xy|D]q}
|
d	kr|
}
q|
dtkr<|
ddkr<|
ddkr<|
r<tdn|
rt}
qqWxLddgD]>}||kr\|j|}t|d|d|}q\q\Wt|}nt|dkr|d|krt|dks|d|d
kr|d
d!}n|dd!dfS|ddkr9|j	|dfS|ddkro|j
}|j|||dfStj
|rtj
|j\}}}}}tjt|t|t||rt|nd}|dfSt|}|dk	r
|dfS|stdnd}t}|ddkrNt}|d}n|dd krk|d}n|jd!d	}|j}d"|ksd#|kr$d$|ksd%|kr$d"|kr|jd"ddd	krtd&n|dd'krtd(nt|}d)}n?t|dkrc|d*ksN|d+krct|}d)}n|dkrt|d}n|rd||fS||fSdS(,NsEmpty value is invalidRtboolRiRYRZiRXiis\sFound tokens after a closed sstring. Invalid TOML.RRsReserved escape sequence useds\us\UiiRR]tarrayR_t
inline_objectttimeRs<Weirdness with leading zeroes or underscores in your number.RR8R7R1R3R6tetEs,This float is missing digits after the pointt
0123456789s'This float doesn't have a leading digitRtinftnan(RRRRiR;RfRRRt
load_arrayRRsRRnRRRRRRIRRR(RRRt	quotecharttestvttriplequotettriplequotecountRttvRRRt
escapeseqsRRRRthtmRuR1tmsRtparsed_datetitypetnegtlowerv((sI/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/toml/decoder.pyRk)s

 
2
	

	



	


 
4
$<



0(	*	cCst|dkrtS|d|dkr.tSd}t}x?t||dkr{||dkrw|}|d8}q=Pq=W|S(Niiis\i(R;RR(RRuRR((sI/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/toml/decoder.pytbounded_strings
cCsG|dd!j}|dkrC|ddks?|ddkrCtStS(NiiRXiRYRZ(R:RR(Rta((sI/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/toml/decoder.pyRs,c
Csd}g}|j}d|dd!ksQd|dd!jddjkrw|j|}|dd!jjds|dd!jd}ng}d}d}||dkrdnd}t}	xt|t|dkr?||d	ks||d
krS|	rI|d}
x4|
dkrE||
dkrE|	}	|
d8}
qWn|	}	n|	rw||dkrw|d7}n|	s||dkr|d7}qn6||dkr|dkr|d8}|d7}qn|d7}|j|||!|d}x4|t|dkr1||dkr1|d7}qW|d}qW|}d}|rNx|t|dkrp||j}x|j|st|dkrb|d|dko|dknrb|d
|dkrb|d|dkrb||d||d||<||j}|t|dkrQ||d ||d}q~||d }q~W|d7}qUWqNnt	|dd!}
g}d}d}xt
t|
D]}|
|dkr|d7}q|
|dkr|d8}q|
|dkr|r|jdj|
||!|d}qqW|jdj|
|xt
t|D]}}||j||<||dkra|j||\}}|r||krt
dqn|}|j|qaqaW|S(NR]iiRXiR_RiRYRZs\R`iiR^sNot a homogeneous array(RIR:RiRt
startswithRR;RqRRERoRhRkR(RRtatypeRwtstrarraytnew_atstart_group_indextend_group_indextopen_bracket_counttin_strtbackslash_indexR5tabtalR{RRtnvaltntype((sI/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/toml/decoder.pyRs9 







(

cCsdS(N((RRR)R%R'((sI/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/toml/decoder.pyRgscCsdS(N((RRRx((sI/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/toml/decoder.pyRj	s(RR tdictRRKRRRsRlRtRRRkRRRRgRj(((sI/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/toml/decoder.pyRJzs				T	m			[	tTomlPreserveCommentDecodercBs&eZedZdZdZRS(cCs#i|_tt|j|dS(N(tsaved_commentstsuperRR(RR&((sI/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/toml/decoder.pyRs	cCs|||f|j|<dS(N(R(RRR)R%R'((sI/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/toml/decoder.pyRgscCsM||jkrdS|j|\}}}t|||||j||<dS(N(RR"R&(RRRxR)R%R'((sI/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/toml/decoder.pyRjs
(RR RRRgRj(((sI/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/toml/decoder.pyR
s	(/RRARRtreRtpip._vendor.toml.tzRRtxrangeRoRR-trangeRtchrRR
R
RtFileNotFoundErrorRHt	NameErrortIOErrortcompileRRRRtobjectR"R=RRIRMRmRCRRRt
_escapedcharstzipRRRRJR(((sI/opt/alt/python35/lib/python3.5/site-packages/pip/_vendor/toml/decoder.pyt<module>sJ					


	1c	/	#	
Back to Directory File Manager