1#!/usr/bin/env python3
2"""
3
4
5"""
6
7# Imports:
8from __future__ import annotations
9
10# ##-- stdlib imports
11import datetime
12import enum
13import functools as ftz
14import itertools as itz
15import logging as logmod
16import pathlib as pl
17import re
18import time
19import types
20import collections
21import contextlib
22import hashlib
23from copy import deepcopy
24from uuid import UUID, uuid1
25from weakref import ref
26import atexit # for @atexit.register
27import faulthandler
28# ##-- end stdlib imports
29
30from .core import MetalordCore
31
32# ##-- types
33# isort: off
34import abc
35import collections.abc
36from typing import TYPE_CHECKING, cast, assert_type, assert_never
37from typing import Generic, NewType
38# Protocols:
39from typing import Protocol, runtime_checkable
40# Typing Decorators:
41from typing import no_type_check, final, override, overload
42
43if TYPE_CHECKING:
44 from jgdv import Maybe
45 from typing import Final
46 from typing import ClassVar, Any, LiteralString
47 from typing import Never, Self, Literal
48 from typing import TypeGuard
49 from collections.abc import Iterable, Iterator, Callable, Generator
50 from collections.abc import Sequence, Mapping, MutableMapping, Hashable
51
52##--|
53
54# isort: on
55# ##-- end types
56
57##-- logging
58logging = logmod.getLogger(__name__)
59##-- end logging
60
61# Vars:
62
63# Body:
64
[docs]
65class MLRegistry(MetalordCore):
66 """
67 TODO: Metaclass for keeping a registry of objects
68 """
69 pass
70
[docs]
71class MLSubclassRegistry(MLRegistry):
72 """
73 TODO: Metaclass for keeping a registry tree of subclasses
74 """
75 pass
76
[docs]
77class MLInstRegistry(MLRegistry):
78 """
79 TODO: Metaclass for keeping a registry of object instances
80 """
81 pass