File: platform.py

package info (click to toggle)
python-cerberus 1.3.7-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 7,532 kB
  • sloc: python: 5,239; makefile: 130
file content (61 lines) | stat: -rw-r--r-- 1,159 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
""" Platform-dependent objects """

import sys

if sys.flags.optimize == 2:
    raise RuntimeError("Cerberus can't be run with Python's optimization level 2.")


if sys.version_info < (3,):
    _int_types = (int, long)  # noqa: F821
    _str_type = basestring  # noqa: F821
else:
    _int_types = (int,)
    _str_type = str


if sys.version_info < (3, 3):
    from collections import (
        Callable,
        Container,
        Hashable,
        Iterable,
        Mapping,
        MutableMapping,
        Sequence,
        Set,
        Sized,
    )
else:
    from collections.abc import (
        Callable,
        Container,
        Hashable,
        Iterable,
        Mapping,
        MutableMapping,
        Sequence,
        Set,
        Sized,
    )

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


__all__ = (
    "_int_types",
    "_str_type",
    "importlib_metadata",
    Callable.__name__,
    Container.__name__,
    Hashable.__name__,
    Iterable.__name__,
    Mapping.__name__,
    MutableMapping.__name__,
    Sequence.__name__,
    Set.__name__,
    Sized.__name__,
)