Добавлены основные файлы проекта

This commit is contained in:
2024-09-26 19:10:17 +03:00
parent 600cdd073d
commit 3f8df54bae
4 changed files with 106 additions and 0 deletions
+2
View File
@@ -0,0 +1,2 @@
__pycache__
dist
+41
View File
@@ -0,0 +1,41 @@
[project]
name = "configurator"
version ="0.1"
authors = [
{ name="RemiZOffAlex", email="remizoffalex@gmail.com" },
]
maintainers = [
{ name="RemiZOffAlex", email="remizoffalex@gmail.com" },
]
description = "Configuration Manager"
requires-python = ">=3.10"
classifiers = [
"Environment :: Console",
"Intended Audience :: Developers",
"Intended Audience :: Information Technology",
"Intended Audience :: System Administrators",
"Operating System :: POSIX :: BSD :: FreeBSD",
"Operating System :: POSIX :: Linux",
"Programming Language :: Formal",
"Programming Language :: Python",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
"Topic :: Software Development :: Code Generators",
"Topic :: Software Development :: Compilers",
"Topic :: Software Development :: Libraries",
]
keywords = ["config", "configurator", "configuration management"]
dependencies = [
"pyyaml",
"middleware@git+https://codex.r10x.net/RemiZOffAlex/middleware",
]
[build-system]
requires = ["flit_core >=3.2,<4"]
build-backend = "flit_core.buildapi"
[tool.flit.sdist]
include = []
exclude = []
+2
View File
@@ -0,0 +1,2 @@
__author__ = 'RemiZOffAlex'
__email__ = 'remizoffalex@mail.ru'
+61
View File
@@ -0,0 +1,61 @@
__author__ = 'RemiZOffAlex'
__email__ = 'remizoffalex@mail.ru'
from middleware.common import middleware
class Config:
@middleware
def __init__(self, value):
self.__value__ = value
@middleware
def __contains__(self, key):
if key in self.__value__:
return True
else:
return False
@middleware
def __delitem__(self, key):
del self.__value__[key]
@middleware
def __getattr__(self, key):
value = self.__value__[key]
if isinstance(value, dict):
result = Config(value)
elif isinstance(value, list):
result = Config(value)
else:
result = value
return result
@middleware
def __getitem__(self, key):
# if isinstance(self.__value__, dict):
value = self.__value__[key]
if isinstance(value, dict):
result = Config(value)
elif isinstance(value, list):
result = Config(value)
else:
result = value
return result
@middleware
def __iter__(self):
for name in self.__value__.keys():
yield name
@middleware
def __len__(self):
return len(self.__value__)
@middleware
def __repr__(self):
return '<{cls} at {id}>'.format(cls=self.__class__.__name__, id=id(self))
@middleware
def __setitem__(self, key, value):
self.__value__[key] = value