Annotation programming in my design code ..
Brian via Digitalmars-d
digitalmars-d at puremagic.com
Fri Jan 6 09:44:13 PST 2017
I would like to design features, how should I do?
coding:
class User
{
@GenerateProperty
int id;
@GenerateProperty
string name;
}
struct GenerateProperty
{
this(string propertyName)
{
propertyName = propertyName
}
string propertyName;
string getGenerateCode()
{
return "@property int " ~ propertyName ~ "() { return __" ~
propertyName ~ "; }\n at property int " ~ propertyName ~ "(int
value) { return __" ~ propertyName ~ " = value; }";
}
}
result code:
class User
{
@property int id() { return __id; }
@property int id(int value) { return __id = value; }
@property string name() { return __name; }
@property string name(int value) { return __name = value; }
private
{
int __id;
string __name;
}
}
More information about the Digitalmars-d
mailing list