3 lá˜_‰ã@sddlmZmZmZddlZddlZddlZddlZddlZGdd„de ƒZ e Z e Z dd„Z dd„Zd d „Zd d „Zd d„ZeedƒrŽejZn d$dd„Zeedƒr®d%dd„Zn d&dd„ZGdd„deƒZeedƒrÚejZnejZdd„ZGdd„deƒZGdd„deƒZd d!„Zd"d#„Z dS)'é)Úabsolute_importÚdivisionÚprint_functionNc@s eZdZdS)ÚCryptographyDeprecationWarningN)Ú__name__Ú __module__Ú __qualname__©r r ú/usr/lib64/python3.6/utils.pyrsrcCst|tƒstdj|ƒƒ‚dS)Nz{} must be bytes)Ú isinstanceÚbytesÚ TypeErrorÚformat)ÚnameÚvaluer r r Ú _check_bytess rc Cs4y t|ƒWn"tk r.tdj|ƒƒ‚YnXdS)Nz{} must be bytes-like)Ú memoryviewr r)rrr r r Ú_check_byteslike s rcst‡fdd„ƒS)Ncs t|ˆƒS)N)Úgetattr)Úself)rr r Ú(sz$read_only_property..)Úproperty)rr )rr Úread_only_property'srcs‡fdd„}|S)Ncstˆ|ƒˆj|ƒ|S)N)Úverify_interfaceÚregister)Úklass)Úifacer r Úregister_decorator,s  z.register_interface..register_decoratorr )rrr )rr Úregister_interface+s rcs‡‡fdd„}|S)Ncsˆrtˆ|ƒˆj|ƒ|S)N)rr)r)rÚ predicater r r5s  z1register_interface_if..register_decoratorr )rrrr )rrr Úregister_interface_if4sr Ú from_bytesFcCsttj|ƒdƒS)Né)ÚintÚbinasciiZhexlify)ÚdataÚ byteorderZsignedr r r Úint_from_bytesBsr'Úto_bytescCs |j|p|jƒddpddƒS)NéééZbig)r(Ú bit_length)ÚintegerÚlengthr r r Ú int_to_bytesKsr/cCs:d|}|dkrt|ƒ}n|d}tj|j||d@ƒƒS)Nz%xér+)Úlenr$Z unhexlifyÚzfill)r-r.Z hex_stringÚnr r r r/Ss  c@s eZdZdS)ÚInterfaceNotImplementedN)rrrr r r r r4\sr4Ú signaturecCszxt|jD]j}t||ƒs&tdj||ƒƒ‚tt||ƒtjƒr:qtt||ƒƒ}tt||ƒƒ}||krtdj||||ƒƒ‚qWdS)Nz{} is missing a {!r} methodzK{}.{}'s signature differs from the expected. Expected: {!r}. Received: {!r}) Ú__abstractmethods__Úhasattrr4rr rÚabcÚabstractpropertyr5)rrÚmethodZsigÚactualr r r rfs  rc@seZdZdd„ZdS)Ú_DeprecatedValuecCs||_||_||_dS)N)rÚmessageÚ warning_class)rrr=r>r r r Ú__init__ysz_DeprecatedValue.__init__N)rrrr?r r r r r<xsr<c@s4eZdZdd„Zdd„Zdd„Zdd„Zd d „Zd S) Ú_ModuleWithDeprecationscCs||jd<dS)NÚ_module)Ú__dict__)rÚmoduler r r r?€sz _ModuleWithDeprecations.__init__cCs4t|j|ƒ}t|tƒr0tj|j|jdd�|j}|S)Nr0)Ú stacklevel) rrAr r<ÚwarningsÚwarnr=r>r)rÚattrÚobjr r r Ú __getattr__ƒs   z#_ModuleWithDeprecations.__getattr__cCst|j||ƒdS)N)ÚsetattrrA)rrGrr r r Ú __setattr__Šsz#_ModuleWithDeprecations.__setattr__cCs:t|j|ƒ}t|tƒr*tj|j|jdd�t|j|ƒdS)Nr0)rD) rrAr r<rErFr=r>Údelattr)rrGrHr r r Ú __delattr__�s  z#_ModuleWithDeprecations.__delattr__cCsdgt|jƒS)NrA)ÚdirrA)rr r r Ú__dir__”sz_ModuleWithDeprecations.__dir__N)rrrr?rIrKrMrOr r r r r@s r@cCs.tj|}t|tƒs"t|ƒtj|<t|||ƒS)N)ÚsysÚmodulesr r@r<)rZ module_namer=r>rCr r r Ú deprecated˜s  rRcs(djˆƒ‰tƒ‰‡‡‡fdd„}t|ƒS)Nz _cached_{}cs0t|ˆˆƒ}|ˆk r|Sˆ|ƒ}t|ˆ|ƒ|S)N)rrJ)ÚinstanceÚcacheÚresult)Ú cached_nameÚfuncÚsentinelr r Úinner£s   zcached_property..inner)rÚobjectr)rWrYr )rVrWrXr Úcached_propertyŸs r[)F)N)N)!Z __future__rrrr8r$ÚinspectrPrEÚ UserWarningrZPersistentlyDeprecated2017ZPersistentlyDeprecated2019rrrrr r7r#r!r'r/Ú Exceptionr4r5Z getargspecrrZr<r@rRr[r r r r Ús8