__ __ __ __ _____ _ _ _____ _ _ _ | \/ | \ \ / / | __ \ (_) | | / ____| | | | | | \ / |_ __\ V / | |__) | __ ___ ____ _| |_ ___ | (___ | |__ ___| | | | |\/| | '__|> < | ___/ '__| \ \ / / _` | __/ _ \ \___ \| '_ \ / _ \ | | | | | | |_ / . \ | | | | | |\ V / (_| | || __/ ____) | | | | __/ | | |_| |_|_(_)_/ \_\ |_| |_| |_| \_/ \__,_|\__\___| |_____/|_| |_|\___V 2.1 if you need WebShell for Seo everyday contact me on Telegram Telegram Address : @jackleetFor_More_Tools:
##############################################################################
#
# Copyright (c) 2003 Zope Foundation and Contributors.
# All Rights Reserved.
#
# This software is subject to the provisions of the Zope Public License,
# Version 2.1 (ZPL). A copy of the ZPL should accompany this distribution.
# THIS SOFTWARE IS PROVIDED "AS IS" AND ANY AND ALL EXPRESS OR IMPLIED
# WARRANTIES ARE DISCLAIMED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
# WARRANTIES OF TITLE, MERCHANTABILITY, AGAINST INFRINGEMENT, AND FITNESS
# FOR A PARTICULAR PURPOSE.
#
##############################################################################
"""Odd meta class that doesn't subclass type.
This is used for testing support for ExtensionClass in new interfaces.
>>> class A(object):
... __metaclass__ = MetaClass
... a = 1
...
>>> A.__name__
'A'
>>> A.__bases__ == (object,)
True
>>> class B(object):
... __metaclass__ = MetaClass
... b = 1
...
>>> class C(A, B): pass
...
>>> C.__name__
'C'
>>> int(C.__bases__ == (A, B))
1
>>> a = A()
>>> aa = A()
>>> a.a
1
>>> aa.a
1
>>> aa.a = 2
>>> a.a
1
>>> aa.a
2
>>> c = C()
>>> c.a
1
>>> c.b
1
>>> c.b = 2
>>> c.b
2
>>> C.c = 1
>>> c.c
1
>>> int(C.__class__.__class__ is C.__class__)
1
"""
# class OddClass is an odd meta class
class MetaMetaClass(type):
def __getattribute__(cls, name):
if name == '__class__':
return cls
# Under Python 3.6, __prepare__ gets requested
return type.__getattribute__(cls, name)
class MetaClass:
"""Odd classes
"""
def __init__(self, name, bases, dict):
self.__name__ = name
self.__bases__ = bases
self.__dict__.update(dict)
def __call__(self):
return OddInstance(self)
def __getattr__(self, name):
for b in self.__bases__:
v = getattr(b, name, self)
if v is not self:
return v
raise AttributeError(name)
def __repr__(self): # pragma: no cover
return "<odd class {} at {}>".format(self.__name__, hex(id(self)))
MetaClass = MetaMetaClass('MetaClass',
MetaClass.__bases__,
{k: v for k, v in MetaClass.__dict__.items()
if k not in ('__dict__',)})
class OddInstance:
def __init__(self, cls):
self.__dict__['__class__'] = cls
def __getattribute__(self, name):
dict = object.__getattribute__(self, '__dict__')
if name == '__dict__':
return dict
v = dict.get(name, self)
if v is not self:
return v
return getattr(dict['__class__'], name)
def __setattr__(self, name, v):
self.__dict__[name] = v
def __delattr__(self, name):
raise NotImplementedError()
def __repr__(self): # pragma: no cover
return "<odd {} instance at {}>".format(
self.__class__.__name__, hex(id(self)))
| Name | Type | Size | Permission | Actions |
|---|---|---|---|---|
| __pycache__ | Folder | 0755 |
|
|
| __init__.py | File | 3.87 KB | 0644 |
|
| advisory_testing.py | File | 897 B | 0644 |
|
| dummy.py | File | 911 B | 0644 |
|
| idummy.py | File | 889 B | 0644 |
|
| m1.py | File | 812 B | 0644 |
|
| odd.py | File | 2.94 KB | 0644 |
|
| test_adapter.py | File | 77.68 KB | 0644 |
|
| test_advice.py | File | 5.82 KB | 0644 |
|
| test_compile_flags.py | File | 1.26 KB | 0644 |
|
| test_declarations.py | File | 80.2 KB | 0644 |
|
| test_document.py | File | 16.5 KB | 0644 |
|
| test_element.py | File | 1.09 KB | 0644 |
|
| test_exceptions.py | File | 6.26 KB | 0644 |
|
| test_interface.py | File | 89.32 KB | 0644 |
|
| test_interfaces.py | File | 4.27 KB | 0644 |
|
| test_odd_declarations.py | File | 7.39 KB | 0644 |
|
| test_registry.py | File | 110.17 KB | 0644 |
|
| test_ro.py | File | 13.79 KB | 0644 |
|
| test_sorting.py | File | 1.89 KB | 0644 |
|
| test_verify.py | File | 18.74 KB | 0644 |
|