Linux vps-61133.fhnet.fr 4.9.0-19-amd64 #1 SMP Debian 4.9.320-2 (2022-06-30) x86_64
Apache/2.4.25 (Debian)
Server IP : 93.113.207.21 & Your IP : 216.73.216.112
Domains :
Cant Read [ /etc/named.conf ]
User : www-data
Terminal
Auto Root
Create File
Create Folder
Localroot Suggester
Backdoor Destroyer
Readme
/
usr /
lib /
python3 /
dist-packages /
zope /
interface /
Delete
Unzip
Name
Size
Permission
Date
Action
__pycache__
[ DIR ]
drwxrwxrwx
2020-08-25 15:28
common
[ DIR ]
drwxrwxrwx
2020-08-25 15:28
tests
[ DIR ]
drwxrwxrwx
2020-08-25 15:28
__init__.py
3.33
KB
-rwxrwxrwx
2016-09-05 08:11
_compat.py
1.73
KB
-rwxrwxrwx
2016-09-05 08:11
_flatten.py
1.03
KB
-rwxrwxrwx
2016-09-05 08:11
_zope_interface_coptimizations.cpython-35m-x86_64-linux-gnu.so
30.61
KB
-rwxrwxrwx
2016-10-25 21:58
adapter.py
22.29
KB
-rwxrwxrwx
2016-09-05 08:11
advice.py
7.37
KB
-rwxrwxrwx
2016-09-05 08:11
declarations.py
30.61
KB
-rwxrwxrwx
2016-09-05 08:11
document.py
3.89
KB
-rwxrwxrwx
2016-09-05 08:11
exceptions.py
1.95
KB
-rwxrwxrwx
2016-09-05 08:11
interface.py
19.92
KB
-rwxrwxrwx
2016-09-05 08:11
interfaces.py
42.06
KB
-rwxrwxrwx
2016-09-05 08:11
registry.py
22.49
KB
-rwxrwxrwx
2016-09-05 08:11
ro.py
1.96
KB
-rwxrwxrwx
2016-09-05 08:11
verify.py
4.62
KB
-rwxrwxrwx
2016-09-05 08:11
Save
Rename
############################################################################## # # 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)])