HEX

Warning: set_time_limit() [function.set-time-limit]: Cannot set time limit - prohibited by configuration in /home/u547966/brikov.ru/www/wp-content/plugins/admin-menu-editor/menu-editor.php on line 745
Server: Apache
System: Linux 4.19.0-0.bpo.9-amd64 x86_64 at red40
User: u547966 (5490)
PHP: 5.3.29-mh2
Disabled: syslog, dl, popen, proc_open, proc_nice, proc_get_status, proc_close, proc_terminate, posix_mkfifo, chown, chgrp, accelerator_reset, opcache_reset, accelerator_get_status, opcache_get_status, pcntl_alarm, pcntl_fork, pcntl_waitpid, pcntl_wait, pcntl_wifexited, pcntl_wifstopped, pcntl_wifsignaled, pcntl_wifcontinued, pcntl_wexitstatus, pcntl_wtermsig, pcntl_wstopsig, pcntl_signal, pcntl_signal_dispatch, pcntl_get_last_error, pcntl_strerror, pcntl_sigprocmask, pcntl_sigwaitinfo, pcntl_sigtimedwait, pcntl_exec, pcntl_getpriority, pcntl_setpriority
Upload Files
File: //usr/lib/python3.7/lib2to3/fixes/__pycache__/fix_tuple_params.cpython-37.pyc
B

5a@sdZddlmZddlmZddlmZddlmZmZm	Z	m
Z
mZmZddZ
Gdd	d	ejZd
dZdd
ZgdfddZddZdS)a:Fixer for function definitions with tuple parameters.

def func(((a, b), c), d):
    ...

    ->

def func(x, d):
    ((a, b), c) = x
    ...

It will also support lambdas:

    lambda (x, y): x + y -> lambda t: t[0] + t[1]

    # The parens are a syntax error in Python 3
    lambda (x): x + y -> lambda x: x + y
)pytree)token)
fixer_base)AssignNameNewlineNumber	SubscriptsymscCst|tjo|jdjtjkS)N)
isinstancerNodechildrentyperSTRING)stmtr4/usr/lib/python3.7/lib2to3/fixes/fix_tuple_params.pyis_docstringsrc@s(eZdZdZdZdZddZddZdS)	FixTupleParamsTa
              funcdef< 'def' any parameters< '(' args=any ')' >
                       ['->' any] ':' suite=any+ >
              |
              lambda=
              lambdef< 'lambda' args=vfpdef< '(' inner=any ')' >
                       ':' body=any
              >
              csd|kr||Sg|d}|d}|djdjtjkrZd}|djdj}tnd}d}ttjddfd
d	}|jt	j
kr||n@|jt	jkrx2t|jD]$\}}	|	jt	j
kr||	|dkdqWsdSxD]}
|d|
_
qW|}|dkrd
d_n&t|dj|r8|d_|d}xD]}
|d|
_
q>W|dj||<x4t|d|tdD]}||dj|_qW|ddS)Nlambdasuiteargsrrz; Fcs\t}|}d|_t||}|r2d|_||tt	j
|gdS)Nr )rnew_namecloneprefixrreplaceappendrr
r
Zsimple_stmt)Z	tuple_arg
add_prefixnargr)end	new_linesselfrrhandle_tupleCs
z.FixTupleParams.transform.<locals>.handle_tuple)r"r)F)transform_lambdarrrINDENTvaluerrZLeafr
ZtfpdefZ
typedargslist	enumerateparentrrrangelenZchanged)r'noderesultsrrstartindentr(ir$lineZafterr)r%r&r'r	transform.sF




 zFixTupleParams.transformc
Cs|d}|d}t|d}|jtjkrD|}d|_||dSt|}t|}|	t
|}t|dd}	||	xd|D]X}
|
jtjkr|
j
|krdd||
j
D}ttj|	g|}|
j|_|
|qWdS)Nrbodyinnerr)rcSsg|]}|qSr)r).0crrr
<listcomp>sz3FixTupleParams.transform_lambda.<locals>.<listcomp>)
simplify_argsrrNAMErrr find_paramsmap_to_indexr
tuple_namerZ
post_orderr+rr
r
Zpower)
r'r0r1rr7r8ZparamsZto_indexZtup_nameZ	new_paramr#Z
subscriptsnewrrrr)ns(
zFixTupleParams.transform_lambdaN)__name__
__module____qualname__Z	run_orderZ
BM_compatibleZPATTERNr6r)rrrrrs

@rcCsR|jtjtjfkr|S|jtjkrBx|jtjkr<|jd}q$W|Std|dS)NrzReceived unexpected node %s)rr
Zvfplistrr=vfpdefrRuntimeError)r0rrrr<sr<cCs<|jtjkrt|jdS|jtjkr,|jSdd|jDS)NrcSs g|]}|jtjkrt|qSr)rrCOMMAr>)r9r:rrrr;szfind_params.<locals>.<listcomp>)rr
rEr>rrr=r+)r0rrrr>s
r>NcCs^|dkri}xLt|D]@\}}ttt|g}t|trJt|||dq||||<qW|S)N)d)r,r	rstrrlistr?)
param_listrrHr4objZtrailerrrrr?s
r?cCs@g}x0|D](}t|tr(|t|q
||q
Wd|S)N_)rrJr!r@join)rKlrLrrrr@s

r@)__doc__rrZpgen2rrZ
fixer_utilrrrrr	r
rZBaseFixrr<r>r?r@rrrr<module>s l