registry
TOC
- Attributes:
- 🅰 _name_re - TODO: Maybe some methods need to be cleared.
- 🅰 _private_flag - TODO: Maybe some methods need to be cleared.
- 🅰 _ClassType - TODO: Maybe some methods need to be cleared.
- Functions:
- Classes:
- 🅲 RegistryMeta
- 🅲 Registry - A registry that stores functions and classes by name.
Attributes
🅰 _name_re
_name_re = re.compile("^[A-Za-z0-9_]+$") #TODO: Maybe some methods need to be cleared.
🅰 _private_flag
_private_flag: str = "__" #TODO: Maybe some methods need to be cleared.
🅰 _ClassType
_ClassType = Type[Any] #TODO: Maybe some methods need to be cleared.
Functions
🅵 _is_pure_ascii
def _is_pure_ascii(name: str) -> None:
if not _name_re.match(name):
raise ValueError(
f"Unexpected name, only support ASCII letters, ASCII digits, underscores, and dashes, but got {name}."
)
🅵 _is_function_or_class
def _is_function_or_class(module: Any) -> bool:
return inspect.isfunction(module) or inspect.isclass(module)
🅵 _default_filter_func
def _default_filter_func(values: Sequence[Any]) -> bool:
return all(v for v in values)
🅵 _default_match_func
_default_match_func
def _default_match_func(m: str, base_module: ModuleType) -> bool:
if not m.startswith("__"):
m = getattr(base_module, m)
if inspect.isfunction(m) or inspect.isclass(m):
return True
return False