view cutils/util/cm.py @ 280:f3e0b479928c

treesum: FIX: Also check for that backslashes are nor in u8name or u8path and encode them
author Franz Glasner <fzglas.hg@dom66.de>
date Sun, 23 Feb 2025 10:01:09 +0100
parents 0f4febf646f5
children 48430941c18c
line wrap: on
line source

# -*- coding: utf-8 -*-
# :-
# :Copyright: (c) 2020-2025 Franz Glasner
# :License:   BSD-3-Clause
# :-
r"""Context manager extensions and compatibility.

"""

from __future__ import print_function, absolute_import


__all__ = ["nullcontext"]


try:
    from contextlib import nullcontext
except ImportError:
    class nullcontext(object):

        """Compatibility implementation for systems that are missing yet
        a standard :class:`contextlib.nullcontext`.

        """

        __slots__ = ("thing", )

        def __init__(self, thing=None):
            self.thing = thing

        def __enter__(self):
            return self.thing

        def __exit__(self, *args, **kwds):
            pass