Linux vmi284606.contaboserver.net 4.15.0-213-generic #224-Ubuntu SMP Mon Jun 19 13:30:12 UTC 2023 x86_64
Apache/2.4.57 (Ubuntu)
: 167.86.127.34 | : 216.73.217.31
Cant Read [ /etc/named.conf ]
7.2.24-0ubuntu0.18.04.17
root
Terminal
AUTO ROOT
Adminer
Backdoor Destroyer
Linux Exploit
Lock Shell
Lock File
Create User
CREATE RDP
PHP Mailer
BACKCONNECT
UNLOCK SHELL
HASH IDENTIFIER
README
+ Create Folder
+ Create File
/
usr /
lib /
python3 /
dist-packages /
zope /
interface /
[ HOME SHELL ]
Name
Size
Permission
Action
__pycache__
[ DIR ]
drwxr-xr-x
common
[ DIR ]
drwxr-xr-x
tests
[ DIR ]
drwxr-xr-x
__init__.py
3.33
KB
-rw-r--r--
_compat.py
1.73
KB
-rw-r--r--
_flatten.py
1.03
KB
-rw-r--r--
_zope_interface_coptimizations...
30.55
KB
-rw-r--r--
adapter.py
22.29
KB
-rw-r--r--
advice.py
7.37
KB
-rw-r--r--
declarations.py
30.61
KB
-rw-r--r--
document.py
3.89
KB
-rw-r--r--
exceptions.py
1.95
KB
-rw-r--r--
interface.py
19.92
KB
-rw-r--r--
interfaces.py
42.06
KB
-rw-r--r--
registry.py
22.49
KB
-rw-r--r--
ro.py
1.96
KB
-rw-r--r--
verify.py
4.62
KB
-rw-r--r--
Delete
Unzip
Zip
${this.title}
Close
Code Editor : ro.py
############################################################################## # # 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. # ############################################################################## """Compute a resolution order for an object and its bases """ __docformat__ = 'restructuredtext' def _mergeOrderings(orderings): """Merge multiple orderings so that within-ordering order is preserved Orderings are constrained in such a way that if an object appears in two or more orderings, then the suffix that begins with the object must be in both orderings. For example: >>> _mergeOrderings([ ... ['x', 'y', 'z'], ... ['q', 'z'], ... [1, 3, 5], ... ['z'] ... ]) ['x', 'y', 'q', 1, 3, 5, 'z'] """ seen = {} result = [] for ordering in reversed(orderings): for o in reversed(ordering): if o not in seen: seen[o] = 1 result.insert(0, o) return result def _flatten(ob): result = [ob] i = 0 for ob in iter(result): i += 1 # The recursive calls can be avoided by inserting the base classes # into the dynamically growing list directly after the currently # considered object; the iterator makes sure this will keep working # in the future, since it cannot rely on the length of the list # by definition. result[i:i] = ob.__bases__ return result def ro(object): """Compute a "resolution order" for an object """ return _mergeOrderings([_flatten(object)])
Close