$78 GRAYBYTE WORDPRESS FILE MANAGER $14

SERVER : premium201.web-hosting.com #1 SMP Wed Mar 26 12:08:09 UTC 2025
SERVER IP : 104.21.15.130 | ADMIN IP 216.73.217.149
OPTIONS : CRL = ON | WGT = ON | SDO = OFF | PKEX = OFF
DEACTIVATED : NONE

/opt/cloudlinux/venv/lib/python3.11/site-packages/attr/

HOME
Current File : /opt/cloudlinux/venv/lib/python3.11/site-packages/attr//filters.py
# SPDX-License-Identifier: MIT

"""
Commonly useful filters for `attr.asdict`.
"""

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 isinstance(cls, type)),
        frozenset(cls for cls in what if isinstance(cls, str)),
        frozenset(cls for cls in what if isinstance(cls, Attribute)),
    )


def include(*what):
    """
    Include *what*.

    :param what: What to include.
    :type what: `list` of classes `type`, field names `str` or
        `attrs.Attribute`\\ s

    :rtype: `callable`

    .. versionchanged:: 23.1.0 Accept strings with field names.
    """
    cls, names, attrs = _split_what(what)

    def include_(attribute, value):
        return (
            value.__class__ in cls
            or attribute.name in names
            or attribute in attrs
        )

    return include_


def exclude(*what):
    """
    Exclude *what*.

    :param what: What to exclude.
    :type what: `list` of classes `type`, field names `str` or
        `attrs.Attribute`\\ s.

    :rtype: `callable`

    .. versionchanged:: 23.3.0 Accept field name string as input argument
    """
    cls, names, attrs = _split_what(what)

    def exclude_(attribute, value):
        return not (
            value.__class__ in cls
            or attribute.name in names
            or attribute in attrs
        )

    return exclude_


Current_dir [ NOT WRITEABLE ] Document_root [ WRITEABLE ]


[ Back ]
NAME
SIZE
LAST TOUCH
USER
CAN-I?
FUNCTIONS
..
--
9 Apr 2026 8.31 AM
root / root
0755
__pycache__
--
11 Feb 2026 9.32 AM
root / root
0755
__init__.py
3.165 KB
20 Jan 2026 1.01 PM
root / root
0644
__init__.pyi
17.196 KB
20 Jan 2026 1.01 PM
root / root
0644
_cmp.py
4.002 KB
20 Jan 2026 1.01 PM
root / root
0644
_cmp.pyi
0.39 KB
20 Jan 2026 1.01 PM
root / root
0644
_compat.py
5.667 KB
20 Jan 2026 1.01 PM
root / root
0644
_config.py
0.807 KB
20 Jan 2026 1.01 PM
root / root
0644
_funcs.py
16.338 KB
20 Jan 2026 1.01 PM
root / root
0644
_make.py
94.706 KB
20 Jan 2026 1.01 PM
root / root
0644
_next_gen.py
6.124 KB
20 Jan 2026 1.01 PM
root / root
0644
_typing_compat.pyi
0.458 KB
20 Jan 2026 1.01 PM
root / root
0644
_version_info.py
2.071 KB
20 Jan 2026 1.01 PM
root / root
0644
_version_info.pyi
0.204 KB
20 Jan 2026 1.01 PM
root / root
0644
converters.py
3.518 KB
20 Jan 2026 1.01 PM
root / root
0644
converters.pyi
0.396 KB
20 Jan 2026 1.01 PM
root / root
0644
exceptions.py
1.846 KB
20 Jan 2026 1.01 PM
root / root
0644
exceptions.pyi
0.526 KB
20 Jan 2026 1.01 PM
root / root
0644
filters.py
1.436 KB
20 Jan 2026 1.01 PM
root / root
0644
filters.pyi
0.22 KB
20 Jan 2026 1.01 PM
root / root
0644
py.typed
0 KB
20 Jan 2026 1.01 PM
root / root
0644
setters.py
1.367 KB
20 Jan 2026 1.01 PM
root / root
0644
setters.pyi
0.554 KB
20 Jan 2026 1.01 PM
root / root
0644
validators.py
20.217 KB
20 Jan 2026 1.01 PM
root / root
0644
validators.pyi
2.52 KB
20 Jan 2026 1.01 PM
root / root
0644

GRAYBYTE WORDPRESS FILE MANAGER @ 2025 CONTACT ME
Static GIF