o
    2g                     @  sV   d dl mZ d dlZd dlmZmZmZ d dlmZ d dl	m
Z
 G dd dejZdS )    )annotationsN)getter_namesetter_nameslot_key)ClassIR)NameGeneratorc                   @  s*   e Zd Zd
ddZd
ddZd
ddZd	S )TestEmitClassreturnNonec                 C  s,   g d}t |dd d}|g dksJ d S )N)__add____radd__
__rshift____rrshift____setitem____delitem__c                 S  s   t | S )N)r   )x r   Q/home/garg/my-data/venv/lib/python3.10/site-packages/mypyc/test/test_emitclass.py<lambda>   s    z-TestEmitClass.test_slot_key.<locals>.<lambda>)key)r   r   r   r   r   r   )sorted)selfattrssr   r   r   test_slot_key   s   zTestEmitClass.test_slot_keyc                 C  0   t ddd}tdgg}t|d|dksJ d S )Ntesting	SomeClassmodule_namenamemoduptesting___SomeClass_set_up)r   r   r   r   cls	generatorr   r   r   test_setter_name   s   zTestEmitClass.test_setter_namec                 C  r   )Nr   r   r   r!   downtesting___SomeClass_get_down)r   r   r   r$   r   r   r   test_getter_name   s   zTestEmitClass.test_getter_nameN)r	   r
   )__name__
__module____qualname__r   r'   r*   r   r   r   r   r   
   s    

r   )
__future__r   unittestmypyc.codegen.emitclassr   r   r   mypyc.ir.class_irr   mypyc.namegenr   TestCaser   r   r   r   r   <module>   s    