Anons79 Mini Shell

Directory : /lib/python2.7/site-packages/ansible/template/
Upload File :
Current File : //lib/python2.7/site-packages/ansible/template/safe_eval.pyc

�
�Udac@`s�ddlmZmZmZeZddlZddlZddlm	Z
ddlmZddl
mZddlmZmZddlmZddlmZmZded	�ZdS(
i(tabsolute_importtdivisiontprint_functionN(t	constants(t	to_native(tcontainer_to_text(tstring_typestPY2(tbuiltins(t
filter_loaderttest_loaderc`s�|dkrin|}iid6td6dd6td6td6td6dd6}ttjtjtjtjtj	tj
tjtjtj
tjtjtjtjtjtjtjf��tjd dkr��jttjf��ntjd dkr�jttjf��ntjd dkrH�jttjf��ng}x-tj�D]}|j|j�j��q[Wg}x-t j�D]}|j|j!�j��q�Wt"j#||�d
tj$f���fd��Y}t%�t&�s
|r	�dfS�S|�}	ytj'�dd�}
|	j(|
�t)|
t*��d�}t+||t,|��}t-r�t.|�}n|r�|dfS|SWnGt/k
r�}
|r��dfS�St0k
r�}
|r��|
fS�SXdS(sV
    This is intended for allowing things like:
    with_items: a_list_variable

    Where Jinja2 would return a string but we do not want to allow it to
    call functions (outside of Jinja2, where the env is constrained).

    Based on:
    http://stackoverflow.com/questions/12523516/using-ast-and-whitelists-to-make-pythons-eval-safe
    t__builtins__tfalsetnullttruetTruetFalsetNoneiiiiitCleansingNodeVisitorc`s eZe���fd�ZRS(c`s�t|��kr%td���nmt|tj�r@t}nRt|tj�r�|r�tt|j	�r�|j	�kr�td|j	��q�nx'tj
|�D]}|j||�q�WdS(Nsinvalid expression (%s)sinvalid function: %s(ttypet	Exceptiont
isinstancetasttCallRtNamethasattrRtidtiter_child_nodest
generic_visit(tselftnodetinside_callt
child_node(tCALL_WHITELISTt
SAFE_NODEStexpr(s>/usr/lib/python2.7/site-packages/ansible/template/safe_eval.pyRws	!(t__name__t
__module__RR((R!R"R#(s>/usr/lib/python2.7/site-packages/ansible/template/safe_eval.pyRvstmodetevalN(ii(ii(ii(1RRRtsetRtAddtBinOptComparetDicttDivt
ExpressiontListtLoadtMulttNumRtStrtSubtUSubtTupletUnaryOptsystversion_infotupdatetSettNameConstanttConstantR	talltextendtfilterstkeysR
tteststCtDEFAULT_CALLABLE_WHITELISTtNodeVisitorRRtparsetvisittcompileRR'tdictRRtSyntaxErrorR(R#tlocalstinclude_exceptionstOUR_GLOBALStfilter_listtfilter_t	test_listttestRtcnvtparsed_treetcompiledtresultte((R!R"R#s>/usr/lib/python2.7/site-packages/ansible/template/safe_eval.pyt	safe_eval s�
%
	



(t
__future__RRRRt
__metaclass__RR8tansibleRRCtansible.module_utils._textRt+ansible.module_utils.common.text.convertersRtansible.module_utils.sixRRtansible.module_utils.six.movesRtansible.plugins.loaderR	R
RRRW(((s>/usr/lib/python2.7/site-packages/ansible/template/safe_eval.pyt<module>s

Anons79 File Manager Version 1.0, Coded By Anons79
Email: [email protected]