AttributeProperty tries spawning child instances of default value (#2697).

This commit is contained in:
Johnny 2022-08-02 23:47:52 +00:00
parent 03425df669
commit 86fcdf4528

View file

@ -202,6 +202,21 @@ class AttributeProperty:
self._lockstring = lockstring
self._autocreate = autocreate
self._key = ""
@property
def _default(self):
"""
Tries returning a new instance of default if callable.
"""
try:
return self.__default()
except:
return self.__default
@_default.setter
def _default(self, value):
self.__default = value
def __set_name__(self, cls, name):
"""