PlasmaCalcs.tools.properties.simple_property

PlasmaCalcs.tools.properties.simple_property(internal_name, *, doc=None, default=NO_VALUE, setdefault=NO_VALUE, setdefaultvia=NO_VALUE, setable=True, delable=True, valid=UNSET, validate_from=UNSET, validate_default=False)
return a property with a setter and getter method for internal_name.
default: NO_VALUE or any object
if provided, getter uses this default if this attr has not been set.
setdefault: NO_VALUE or callable of 0 arguments
if provided, getter uses setdefault() if this attr has not been set.
(if internal_name is unset, getter sets self.{internal_name} = setdefault(),
then returns value at self.{internal_name}. Does not recalculate each time.)
E.g. setdefault = dict, creates a new dict.
(using default=dict() would share the dict amongst all instances;
using setdefault=dict creates a new dict for each instance when needed.)
setdefaultvia: NO_VALUE or str
if provided, getter uses self.{setdefaultvia}() if attr has not been set.
(if internal_name is unset, getter sets self.{internal_name} = self.{setdefaultvia}(),
then returns value at self.{internal_name}. Does not recalculate each time.)
E.g. setdefault = ‘_default_val’ –> getter calls & returns self._default_val(),
and remembers result, saving it to self.{internal_name}.
setable: bool
whether to allow this attribute to be set (i.e., define fset.)
delable: bool
whether to allow this attribute to be set (i.e., define fdel.)
valid: UNSET or iterable
if provided, only allow setting to values in valid.
validate_from: UNSET or str
if provided, get list of valid values from getattr(self, validate_from).
validate_default: bool
whether to apply validation to the results of setdefault() or setdefaultvia().
disabled by default, for efficiency.