Format: application/x-python-code
1 o
2
3 ��hR � @ sN d dl Z d dlmZ d dlmZmZmZmZmZm Z m
4 Z
5 mZmZm
6 Z
7 d dlmZ d dlmZmZmZmZ d dlmZ d dlZe jdk rLd dlmZmZ nd dlmZmZ e jd k r`d d
8 lmZ nd d
9 lmZ defdd
10 �Zeed�Z eed�Z!eed�Z"eed�Z#eed�Z$e"e#e$gZ%e!ge%�Z&edefdd��Z'dd� Z(e�)d�dd� �Z*e�)d�dd� �Z+dd� Z,e�)d�dd � �Z-e�)d�d!d"� �Z.e�)d�d#d$� �Z/e�)d�d%d&� �Z0d'd(� Z1d)d*� Z2d+d,� Z3d-d.� Z4d/d0� Z5d1d2� Z6d3d4� Z7d5d6� Z8d7d8� Z9ej:�;d9d:e<j=gd;e>j?gd<e@jAgg�d=d>� �ZBd?d@� ZCG dAdB� dB�ZDG dCdD� dD�ZEG dEdF� dF�ZFG dGdH� dH�ZGG dIdJ� dJ�ZHG dKdL� dL�ZIedMe<�ZJedNeD�ZKedOe<�ZLedPeD�ZMG dQdR� dRe
11 �ZNG dSdT� dTeN�ZOG dUdV� dVe
12 �ZPG dWdX� dX�ZQej:�;dYg dZ�d[d\d]gd^d\id_d]d]geI� d`eDdageI� dbeIdageE� dceDdageF� dceRdageDdceDdageHdceRdageD� ddeDdageQ� dee<dageQ� dfeDdageQ� dge<dageQ� dheDdageQ� dieQdageQ� djdad]geQ� dkedageQ� dledageQ� dmeSdageQ� dne>dageQ� doeQdageQ� dpe<dageGdqeDdagg�drds� �ZTej:�;dteQ� dudvggeQ� dwdxdyggeQ� dzd{ggeQ� d|g d}�gg�d~d� �ZUej:�;d�eQ� d|e<ed��gg�d�d�� �ZVej:�;d�g dZ�d�gd^d\id�gg�d�d�� �ZWej:�;d9d�d�gd�d�ggd�g d��gg�ej:�;d�e%�d�d�� ��ZXej:�;d9d�d\gd�d�gd�d�gd�d]gd�dgd�i gd�g gg�ej:�;d�e&�d�d�� ��ZYej:�;d9d�d�gd�d�gd�d�gg�ej:�;d�e%�d�d�� ��ZZej:�;d9d�d�gd�d�gd�d�gd�d�gd�d�gd�d�gd�d\gd�d�gd�d�gd�d\gd�d gg�ej:�;d�e%�d�d�� ��Z[ej:�;d9d�d]gd�dagd�dagd�d]gd�dagd�d]gd�d]gd�dagd�d]gd�dagd�dagd�d]gd�d]gd�dagd�d]gd�dagd�d]gd�d]gd�dagd�d]gd�dagd�dagd�d]gd�d]gd�d]gd�dagd�dagd�d]gg�ej:�;d�e%�d�dԄ ��Z\d�dք Z]d�d Z^d�dڄ Z_d�d܄ Z`ej:�;d�e&�d�dބ �Zad�d�� Zbd�d� Zcd�d� Zdd�d� Zeej:�;d�g d��ej:�;d�e!� e"� e#� g�d�d� ��Zfd�d� Zgd�d� Zhd�d�� Zid�d� Zje�)d�d�d�� �ZkdS )�� N)�contextmanager)
13 � Annotated�AnyStr�
14 NamedTuple�Literal�NewType�Optional�Protocol� TypeGuard�Union� TypedDict)�partial)�EvaluationContext�GuardRejection�guarded_eval�_unbind_method)�
15 decorators)� � )�Self�
16 LiteralString)r � )�
17 TypeAliasType�
18 evaluationc K s t |i | d�S )N��locals�globalsr )r )r �kwargs� r �Zc:\Users\shubh\Videos\agent\nova\Lib\site-packages\IPython/core/tests/test_guarded_eval.py�create_context% s r � forbidden�minimal�limited�unsafe� dangerous�modulec c s\ � dd l }z|j| }|j| = W n ty d }Y nw zd V W ||j| <