Hackfut Security File Manager
Current Path:
/opt/alt/python38/lib/python3.8/site-packages/attr
opt
/
alt
/
python38
/
lib
/
python3.8
/
site-packages
/
attr
/
📁
..
📄
__init__.py
(1.13 KB)
📁
__pycache__
📄
_compat.py
(4.19 KB)
📄
_config.py
(514 B)
📄
_funcs.py
(7.71 KB)
📄
_make.py
(48.14 KB)
📄
converters.py
(531 B)
📄
exceptions.py
(1.08 KB)
📄
filters.py
(1.12 KB)
📄
validators.py
(4.84 KB)
Editing: filters.py
""" Commonly useful filters for :func:`attr.asdict`. """ from __future__ import absolute_import, division, print_function from ._compat import isclass from ._make import Attribute def _split_what(what): """ Returns a tuple of `frozenset`s of classes and attributes. """ return ( frozenset(cls for cls in what if isclass(cls)), frozenset(cls for cls in what if isinstance(cls, Attribute)), ) def include(*what): """ Whitelist *what*. :param what: What to whitelist. :type what: :class:`list` of :class:`type` or :class:`attr.Attribute`\ s :rtype: :class:`callable` """ cls, attrs = _split_what(what) def include_(attribute, value): return value.__class__ in cls or attribute in attrs return include_ def exclude(*what): """ Blacklist *what*. :param what: What to blacklist. :type what: :class:`list` of classes or :class:`attr.Attribute`\ s. :rtype: :class:`callable` """ cls, attrs = _split_what(what) def exclude_(attribute, value): return value.__class__ not in cls and attribute not in attrs return exclude_
Upload File
Create Folder