__  __    __   __  _____      _            _          _____ _          _ _ 
 |  \/  |   \ \ / / |  __ \    (_)          | |        / ____| |        | | |
 | \  / |_ __\ V /  | |__) | __ ___   ____ _| |_ ___  | (___ | |__   ___| | |
 | |\/| | '__|> <   |  ___/ '__| \ \ / / _` | __/ _ \  \___ \| '_ \ / _ \ | |
 | |  | | |_ / . \  | |   | |  | |\ V / (_| | ||  __/  ____) | | | |  __/ | |
 |_|  |_|_(_)_/ \_\ |_|   |_|  |_| \_/ \__,_|\__\___| |_____/|_| |_|\___V 2.1
 if you need WebShell for Seo everyday contact me on Telegram
 Telegram Address : @jackleet
        
        
For_More_Tools: Telegram: @jackleet | Bulk Smtp support mail sender | Business Mail Collector | Mail Bouncer All Mail | Bulk Office Mail Validator | Html Letter private



Upload:

Command:

www-data@216.73.216.10: ~ $
# SPDX-License-Identifier: MIT

"""
Classes Without Boilerplate
"""

from functools import partial
from typing import Callable

from . import converters, exceptions, filters, setters, validators
from ._cmp import cmp_using
from ._compat import Protocol
from ._config import get_run_validators, set_run_validators
from ._funcs import asdict, assoc, astuple, evolve, has, resolve_types
from ._make import (
    NOTHING,
    Attribute,
    Factory,
    attrib,
    attrs,
    fields,
    fields_dict,
    make_class,
    validate,
)
from ._next_gen import define, field, frozen, mutable
from ._version_info import VersionInfo


s = attributes = attrs
ib = attr = attrib
dataclass = partial(attrs, auto_attribs=True)  # happy Easter ;)


class AttrsInstance(Protocol):
    pass


__all__ = [
    "Attribute",
    "AttrsInstance",
    "Factory",
    "NOTHING",
    "asdict",
    "assoc",
    "astuple",
    "attr",
    "attrib",
    "attributes",
    "attrs",
    "cmp_using",
    "converters",
    "define",
    "evolve",
    "exceptions",
    "field",
    "fields",
    "fields_dict",
    "filters",
    "frozen",
    "get_run_validators",
    "has",
    "ib",
    "make_class",
    "mutable",
    "resolve_types",
    "s",
    "set_run_validators",
    "setters",
    "validate",
    "validators",
]


def _make_getattr(mod_name: str) -> Callable:
    """
    Create a metadata proxy for packaging information that uses *mod_name* in
    its warnings and errors.
    """

    def __getattr__(name: str) -> str:
        dunder_to_metadata = {
            "__title__": "Name",
            "__copyright__": "",
            "__version__": "version",
            "__version_info__": "version",
            "__description__": "summary",
            "__uri__": "",
            "__url__": "",
            "__author__": "",
            "__email__": "",
            "__license__": "license",
        }
        if name not in dunder_to_metadata:
            msg = f"module {mod_name} has no attribute {name}"
            raise AttributeError(msg)

        import sys
        import warnings

        if sys.version_info < (3, 8):
            from importlib_metadata import metadata
        else:
            from importlib.metadata import metadata

        if name not in ("__version__", "__version_info__"):
            warnings.warn(
                f"Accessing {mod_name}.{name} is deprecated and will be "
                "removed in a future release. Use importlib.metadata directly "
                "to query for attrs's packaging metadata.",
                DeprecationWarning,
                stacklevel=2,
            )

        meta = metadata("attrs")
        if name == "__license__":
            return "MIT"
        if name == "__copyright__":
            return "Copyright (c) 2015 Hynek Schlawack"
        if name in ("__uri__", "__url__"):
            return meta["Project-URL"].split(" ", 1)[-1]
        if name == "__version_info__":
            return VersionInfo._from_version_string(meta["version"])
        if name == "__author__":
            return meta["Author-email"].rsplit(" ", 1)[0]
        if name == "__email__":
            return meta["Author-email"].rsplit("<", 1)[1][:-1]

        return meta[dunder_to_metadata[name]]

    return __getattr__


__getattr__ = _make_getattr(__name__)

Filemanager

Name Type Size Permission Actions
__pycache__ Folder 0755
__init__.py File 3.23 KB 0644
__init__.pyi File 16.58 KB 0644
_cmp.py File 3.93 KB 0644
_cmp.pyi File 399 B 0644
_compat.py File 2.48 KB 0644
_config.py File 843 B 0644
_funcs.py File 16.77 KB 0644
_make.py File 99.53 KB 0644
_next_gen.py File 6.06 KB 0644
_typing_compat.pyi File 469 B 0644
_version_info.py File 2.07 KB 0644
_version_info.pyi File 209 B 0644
converters.py File 3.54 KB 0644
converters.pyi File 406 B 0644
exceptions.py File 1.93 KB 0644
exceptions.pyi File 539 B 0644
filters.py File 1.44 KB 0644
filters.pyi File 225 B 0644
py.typed File 0 B 0644
setters.py File 1.37 KB 0644
setters.pyi File 567 B 0644
validators.py File 19.21 KB 0644
validators.pyi File 2.52 KB 0644
Filemanager