dash.core.properties

Defines template mixins for defining properties in classes.

Members

Interfaces

IDirtyable
interface IDirtyable

Requires implementation of the isDirty property.

Templates

ConditionalSetter
template ConditionalSetter(alias field, string condition, AccessModifier access = AccessModifier.Protected, string name = field.stringof[1 .. $])

Generates a setter for a field, that only sets if a condition is met.

DirtyGetter
template DirtyGetter(alias field, alias updateFunc, AccessModifier access = AccessModifier.Public, string name = field.stringof[1 .. $])

Generates a getter for a field that can be marked as dirty. Calls updateFunc if is dirty.

Getter
template Getter(alias field, AccessModifier access = AccessModifier.Public, string name = field.stringof[1 .. $])

Generates a getter for a field.

Property
template Property(alias field, AccessModifier setterAccess = AccessModifier.Protected, AccessModifier getterAccess = AccessModifier.Public, string name = field.stringof[1 .. $])

Generates a getter and setter for a field.

RefGetter
template RefGetter(alias field, AccessModifier access = AccessModifier.Public, string name = field.stringof[1 .. $])

Generates a getter for a field that returns a reference to it.

Setter
template Setter(alias field, AccessModifier access = AccessModifier.Protected, string name = field.stringof[1 .. $])

Generates a setter for a field.

ThisDirtyGetter
template ThisDirtyGetter(alias field, alias updateFunc, AccessModifier access = AccessModifier.Public, string name = field.stringof[1 .. $])

Like DirtyGetter, but instead of tracking if the field is dirty, it tracks if the this scope is dirty

Meta

Authors

Colden Cullen, ColdenCullen@gmail.com