generated from jCloud/repository-template
style: format source code using Ruff
This commit is contained in:
41 files changed
+6061
-5670
No files matched your search
@@ -27,20 +27,22 @@ __all__ = [
|
||||
'PythonModuleNamespace',
|
||||
]
|
||||
|
||||
|
||||
class PythonNamespace:
|
||||
'''
|
||||
"""
|
||||
The base class for all Python namespaces such as modules or packages.
|
||||
|
||||
:param name: The name of the namespace.
|
||||
:type name: str
|
||||
'''
|
||||
"""
|
||||
|
||||
def __init__(self, name: str) -> None:
|
||||
assert_that_is_instance(name, str)
|
||||
|
||||
if not name.strip():
|
||||
raise InvalidNamespaceError(
|
||||
'invalid namespace',
|
||||
namespace_identifier = name,
|
||||
namespace_identifier=name,
|
||||
)
|
||||
|
||||
self.name = name
|
||||
@@ -48,6 +50,7 @@ class PythonNamespace:
|
||||
def __repr__(self) -> str:
|
||||
return f'{type(self).__name__}({self.name!r})'
|
||||
|
||||
|
||||
PythonPackageNamespaceDictType: TypeAlias = Dict[
|
||||
str,
|
||||
Union[
|
||||
@@ -56,15 +59,16 @@ PythonPackageNamespaceDictType: TypeAlias = Dict[
|
||||
],
|
||||
]
|
||||
|
||||
|
||||
class PythonPackageNamespace(PythonNamespace):
|
||||
'''
|
||||
"""
|
||||
A subclass of ``PythonNamespace`` for Python package namespaces.
|
||||
|
||||
:param name: The name of the namespace.
|
||||
:type name: str
|
||||
:param sub_namespaces: The sub-namespaces.
|
||||
:type sub_namespaces: list[PythonNamespace]
|
||||
'''
|
||||
"""
|
||||
|
||||
def __init__(
|
||||
self,
|
||||
@@ -78,7 +82,7 @@ class PythonPackageNamespace(PythonNamespace):
|
||||
self._sub_namespaces = sub_namespaces
|
||||
|
||||
def namespace(self, sub_namespaces: List[str]) -> PythonNamespace:
|
||||
'''
|
||||
"""
|
||||
Returns the namespace object with a specific identifier, such as
|
||||
``['package', 'subpackage', 'module']``.
|
||||
|
||||
@@ -91,7 +95,7 @@ class PythonPackageNamespace(PythonNamespace):
|
||||
|
||||
:return: The namespace.
|
||||
:rtype: PythonNamespace
|
||||
'''
|
||||
"""
|
||||
|
||||
if not sub_namespaces:
|
||||
raise InvalidNamespaceError('invalid namespace')
|
||||
@@ -115,7 +119,7 @@ class PythonPackageNamespace(PythonNamespace):
|
||||
self,
|
||||
package: PythonPackageNamespace,
|
||||
) -> PythonPackageNamespaceDictType:
|
||||
'''
|
||||
"""
|
||||
Returns the names of all sub-namespaces of the specified package
|
||||
namespace and keeps the package structure.
|
||||
|
||||
@@ -124,7 +128,7 @@ class PythonPackageNamespace(PythonNamespace):
|
||||
|
||||
:return: The names if all sub-namespaces.
|
||||
:rtype: PythonPackageNamespaceDictType
|
||||
'''
|
||||
"""
|
||||
|
||||
return {
|
||||
sn.name: (
|
||||
@@ -136,13 +140,13 @@ class PythonPackageNamespace(PythonNamespace):
|
||||
}
|
||||
|
||||
def sub_namespace_names(self) -> PythonPackageNamespaceDictType:
|
||||
'''
|
||||
"""
|
||||
Returns the names of all sub-namespaces and keeps the package
|
||||
structure.
|
||||
|
||||
:return: The names if all sub-namespaces.
|
||||
:rtype: PythonPackageNamespaceDictType
|
||||
'''
|
||||
"""
|
||||
|
||||
return self._sub_namespaces_names(self)
|
||||
|
||||
@@ -159,7 +163,7 @@ class PythonPackageNamespace(PythonNamespace):
|
||||
return type(self).__name__ + repr((self.name, self._sub_namespaces))
|
||||
|
||||
def __getitem__(self, name: str) -> PythonNamespace:
|
||||
'''
|
||||
"""
|
||||
Returns a namespace with the specified name.
|
||||
|
||||
:param name: The name of the namespace
|
||||
@@ -169,7 +173,7 @@ class PythonPackageNamespace(PythonNamespace):
|
||||
|
||||
:return: The namespace
|
||||
:rtype: PythonNamespace
|
||||
'''
|
||||
"""
|
||||
|
||||
for sub in self._sub_namespaces:
|
||||
if sub.name == name:
|
||||
@@ -177,11 +181,11 @@ class PythonPackageNamespace(PythonNamespace):
|
||||
|
||||
raise NamespaceNotFoundError(
|
||||
'no such namespace',
|
||||
namespace_identifier = name,
|
||||
namespace_identifier=name,
|
||||
)
|
||||
|
||||
def add(self, namespace: PythonNamespace) -> None:
|
||||
'''
|
||||
"""
|
||||
Adds a namespace.
|
||||
|
||||
:param namespace: The namespace to add.
|
||||
@@ -190,12 +194,12 @@ class PythonPackageNamespace(PythonNamespace):
|
||||
:raises NamespaceExistsError: If a namespace with the name of the
|
||||
namespace that is attempted to add
|
||||
already exists.
|
||||
'''
|
||||
"""
|
||||
try:
|
||||
self.__getitem__(namespace.name)
|
||||
raise NamespaceExistsError(
|
||||
'namespace already exists',
|
||||
namespace_identifier = namespace.name,
|
||||
namespace_identifier=namespace.name,
|
||||
)
|
||||
except NamespaceNotFoundError:
|
||||
self._sub_namespaces.append(namespace)
|
||||
@@ -204,13 +208,14 @@ class PythonPackageNamespace(PythonNamespace):
|
||||
def sub_namespaces(self) -> List[PythonNamespace]:
|
||||
return self._sub_namespaces
|
||||
|
||||
|
||||
class PythonModuleNamespace(PythonNamespace):
|
||||
'''
|
||||
"""
|
||||
A subclass of ``PythonNamespace`` for Python module namespaces.
|
||||
|
||||
:param name: The name of the namespace.
|
||||
:type name: str
|
||||
'''
|
||||
"""
|
||||
|
||||
def __init__(self, name: str) -> None:
|
||||
super().__init__(name)
|
||||
|
||||
Reference in new issue
Block a user