Mini Shell
"""Sentinel class for constants with useful reprs"""
# Copyright (c) IPython Development Team.
# Distributed under the terms of the Modified BSD License.
from __future__ import annotations
import typing as t
class Sentinel:
def __init__(self, name: str, module: t.Any, docstring: str | None = None) -> None:
self.name = name
self.module = module
if docstring:
self.__doc__ = docstring
def __repr__(self) -> str:
return str(self.module) + "." + self.name
def __copy__(self) -> Sentinel:
return self
def __deepcopy__(self, memo: t.Any) -> Sentinel:
return self
Zerion Mini Shell 1.0