1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/medical-alliance-medical-blockchain

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Это зеркальный репозиторий, синхронизируется ежедневно с исходного репозитория.
Клонировать/Скачать
datatypes.py 1.2 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
lidunwei Отправлено 4 лет назад 629dab1
from eth_utils.toolz import (
concat,
)
import utils.formatters
def verify_attr(class_name, key, namespace):
if key not in namespace:
raise AttributeError(
"Property {0} not found on {1} class. "
"`{1}.factory` only accepts keyword arguments which are "
"present on the {1} class".format(key, class_name)
)
class PropertyCheckingFactory(type):
def __init__(cls, name, bases, namespace, **kargs):
# see PEP487. To accept kwargs in __new__, they need to be
# filtered out here.
super().__init__(name, bases, namespace)
def __new__(mcs, name, bases, namespace, normalizers=None):
all_bases = set(concat(base.__mro__ for base in bases))
all_keys = set(concat(base.__dict__.keys() for base in all_bases))
for key in namespace:
verify_attr(name, key, all_keys)
if normalizers:
processed_namespace = utils.formatters.apply_formatters_to_dict(
normalizers,
namespace,
)
else:
processed_namespace = namespace
return super().__new__(mcs, name, bases, processed_namespace)

Комментарий ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://gitlife.ru/oschina-mirror/medical-alliance-medical-blockchain.git
git@gitlife.ru:oschina-mirror/medical-alliance-medical-blockchain.git
oschina-mirror
medical-alliance-medical-blockchain
medical-alliance-medical-blockchain
master