python (3.12.0)

(root)/
lib/
python3.12/
idlelib/
__pycache__/
pyparse.cpython-312.opt-2.pyc

̑eMH	ddlZed\ZZZZZejdejejzjZejdejjZ
ejdejejzjZejdejjZejdejjZejdejjZGd	d
eZej+eddZej/d
dDej/ddDej/ddDGddZedk(rddlmZeddyy)Nz
    ^
    [ \t]*
    (?: while
    |   else
    |   def
    |   return
    |   assert
    |   break
    |   class
    |   continue
    |   elif
    |   try
    |   except
    |   raise
    |   import
    |   yield
    )
    \b
z'
    [ \t]*
    (?: \# \S .* )?
    \n
aK
    \""" [^"\\]* (?:
                     (?: \\. | "(?!"") )
                     [^"\\]*
                 )*
    (?: \""" )?

|   " [^"\\\n]* (?: \\. [^"\\\n]* )* "?

|   ''' [^'\\]* (?:
                   (?: \\. | '(?!'') )
                   [^'\\]*
                )*
    (?: ''' )?

|   ' [^'\\\n]* (?: \\. [^'\\\n]* )* '?
zM
    [ \t]*
    [^\s#\\]    # if we match, m.end()-1 is the interesting char
z_
    \s*
    (?: return
    |   break
    |   continue
    |   raise
    |   pass
    )
    \b
z
    [^[\](){}#'"\\]+
ceZdZ	dZy)ParseMapcy)Nx)selfkeys  C/BuggyBox/python/3.12.0/bootstrap/lib/python3.12/idlelib/pyparse.py__missing__zParseMap.__missing__rsN)__name__
__module____qualname__rrr
rrrfs	r
rrc#HK|]}t|tdfyw)(Nord.0cs  r	<genexpr>rx/Ac!fc#h
/ "z({[c#HK|]}t|tdfyw))Nrrs  rrryrrz)}]c#HK|]}t|t|fywNrrs  rrrzs2!c!fc!f
2rz"'\
#c`eZdZdZdZdZdZdZdZdZ	dZ
d	Zd
ZdZ
dZd
ZdZy)Parserc ||_||_yr)indentwidthtabwidth)r	r#r$s   r__init__zParser.__init__s& 
r
c ||_d|_yNr)codestudy_level)r	ss  rset_codezParser.set_codes	r
c	|jd}}t|}tdD]k}|jdd|}|dkrnQ|jdd|dz}t	|||}|r(||js|j}n|}m|5t	|}|r&||js|j}|S|dz}t	||x}r,|j
\}}||s|}t	||x}r,|S)Nrz:
r
)r(lenrangerfind_synchrestartspan)	r	is_char_in_stringr(poslimittriesimr*s	         rfind_good_parse_startzParser.find_good_parse_starts 	IItc
D	1X		E

5!U+A1u

4A&*Aq%(A*17795ggiE		;A*17795ggiJ
!GD!$$a$668DAq$Q'D!$$a$
r
c:	|dkDr|j|d|_yyr')r()r	los  rset_loz
Parser.set_los&	
6		"#DIr
c^	|jdk\ryd|_|j}|jt}|j	dd}|j	dd}|j	dd}|j	dd}|j	dd}t
}dx}}dgx|_}|j}dt|}}||kr2||}	|dz}|	dk(r|	dk(r|dz}|dk(r||.|	d	k(r|dz}9|	d
k(r|r|dz
}F|	dk(s|	dk(r|	}
||dz
|d
z|
dzk(r|
dz}
|}t|
dz
}||z}||kr`||}	|dz}|	dk(r||dz
||z|
k(r||z}nQ|	dk(r|dz}|dk(r|dk(r||n4G|	dk(r||dk(r|dz}|dz}_||kr`|dz
|k(rt}nt}|	dk(r|jd|}||dk(r|dz}|dz|k(rt}|dz}||kr2|tk7r|tk7r|dkDrt}||_|d|k7r	||yy)Nr.xxxxxxxxxxxxxxxz
xr-rrr"'\#)r)r(	translatetransreplaceC_NONE	goodlinesappendr/C_STRING_FIRST_LINEC_STRING_NEXT_LINESfindC_BACKSLASH	C_BRACKETcontinuation)
r	r(rVlevellnorO	push_goodr9nchquotefirstlnows
             r_study1zParser._study1s	q yy~~e$||J,||FC(||D#&||D#&||E4(&'S($$	#d)1!eaB!ASyTzAgA:cNSy	Sy!AIESyB#I!AaC=EAI-!AIEJNaC!eaB!ASy AaC!}-aCTz!Ag6$z )#! Tz7d?"%'CaC 3!e@aH,(;':SyIIdA&Aw$AgQ3!8#.L!Ak!et
// 33	$L(
R=CcN r
c:|j|jSr)r_rVr	s rget_continuation_typezParser.get_continuation_typeKs   r
c$	|jdk\ry|jd|_|j|j}}t	|dz
}t	|}|rK|}t||dz
||D]}|j
dd|dz
dz}t||r|dz
}nn|rK|dk(r|}|c|_|_	d}g}|j}	|dfg}
||krt|||}|rF|j}|dz
}||k\r||dvr|dz
}||k\r||dvr||k\r||}|}||k\rn?||}
|
dvr,|	||
j|t	|f|
}|dz}|
dvr)|r|d	=|
}|dz}|
j|t	|f|
d
k(s|
dk(rZ|
j|t	|dzf|
}t|||j}|
j|t	|f!|
dk(rS|
j|t	|dzf|jd||dz}|
j|t	|fy|dz}||dk7r|
||z}|dz}||kr||_|r|d	nd|_t#|
|_y)
NrFr.r-r 	
([{)]}rJrDrErI)r)r_r(rOr/r0r1_junkre
stmt_startstmt_endrP_chew_ordinaryreend_match_stringrerSlastchlastopenbracketpostuplestmt_bracketing)r	r(rOr9pqnothingrnstack
push_stack
bracketingr:newpr[s              r_study2zParser._study2Os	$q ))T^^i	NQIA 1Q31>
1JJtQ!,q0
1
a aC
6A)*A&\\
!fX
!e q!,Auuw1H1faG!3!A1faG!36!!WF6aBU{1
!!1c%j/2aCU{b	aC!!1c%j/2SyB#I!!1c%jl"34#D!Q/335!!1c%j/2Sy!!1c%jl"34IIdAq)A-!!1c%j/2!AAw$d1g!A{!eB/4%)$$Z0r
c	|j|j}|j}t|}|j	dd|dzx}}|dz}||krAt||}|r|j
dz
}d}nA|jd|dzx}}||krA|x}}||dvr
|dz}||dvr
|j}t|||j|j|zS)Nr-rr. 	)ryror(r/r1_itemrerlrSr#
expandtabsr$)r	jr(rZorigir9r:extras        rcompute_bracket_indentzParser.compute_bracket_indents		
##yyIJJtQ*Q..
aC!ea AEEGaK		$*Q..A!eMAq'U"aCq'U"$$E4!9''

67%??r
cR	|j|j}|d|dz
S)NrJ)r_rO)r	rOs  rget_num_lines_in_stmtzParser.get_num_lines_in_stmts.	
	
NN	}y},,r
c	|j|j}|j}||dvr
|dz}||dvr
|}|jd|dz}dx}}||kr||}|dvr|dz}|dz}ni|dvr
|r|dz
}|dz}nX|dk(s|dk(rt	|||j}n2|d	k(rn2|dk(r"|d
k(r|dk(s
||dz
dvr||dzd
k7rd}n|dz}||kr|r |dz}t
jd|||du}|s|}||d
vr
|dz}||d
vr
t||j|j|jdzS)Nr{r.r-rrfrgrDrErI=z=<>!z\s*\\re)ryr(rirSrmrlrematchr/r}r$)r	r(r9startposendposfoundrWr[s        rcompute_backslash_indentzParser.compute_backslash_indents	
	
yyOO1g!A1g4*Q.&jaBU{	aCu!AIEaCsbCi#D!V488:s!c	Fd1Q3iv5!9#aC+&j.!AHHXtAf~6$>EAq'(aCq'(4*55%)]]45789	9r
c	|j|j|j}}|}|j}||kr||dvr|dz}||kr||dvr|||S)Nr{r.)ryrirjr()r	r9rZr~r(s     rget_base_indent_stringzParser.get_base_indent_string,sl		


1
yy!eQ5(AA!eQ5(Aayr
cB	|j|jdk(S)N:)ryrnras ris_block_openerzParser.is_block_opener8sF{{c!!r
ch	|jt|j|jduSr)ry_closerer(riras ris_block_closerzParser.is_block_closer=s(G		4??34??r
c<	|j|jSr)ryrqras rget_last_stmt_bracketingzParser.get_last_stmt_bracketingBs		
###r
N)rrrr%r+r;r>r_rbryrrrrrrrrr
rr!r!}sP!
2h'DL!y1v@>-79r
"
@
$r
r!__main__)mainzidlelib.idle_test.test_pyparserF)	verbosity)rr0rNrTrQrRrUcompileVERBOSE	MULTILINEsearchr2rrhDOTALLrmr|rrkdictrfromkeysrLupdater!runittestrrr
r<module>rs
$)8!)i2::&ZZ",,' &!''	."**ZZ		"** ZZ"))! #U!*"**ZZ2::	ZZ		 2::ZZ

t
"	%*c*//////2z22K$K$\z	)Q7r