digitalmars.D - Additional kind of template parameter: IdentifierParameter ?
- Norbert Nemec (35/35) May 18 2004 Hi there,
Hi there,
looking at the mixin specification, it seems to me that a very useful
extension would be the introduction of a new kind of template parameter:
-------------------------------------------
template MyMember(TYPE,identifier NAME) {
TYPE NAME;
}
class MyClass {
mixin MyMember!(int,FooBar);
}
int main() {
MyClass A = new MyClass;
A.FooBar = 5;
};
-------------------------------------------
Of course, to make this really powerful, one would need some way of
manipulating identifiers, as it is possible with the C preprocessor
-------------------------------------------
template MyProperty(TYPE,identifier NAME) {
}
class MyClass {
mixin MyProperty!(int,FooBar);
}
int main() {
MyClass A = new MyClass;
A.FooBar = 5;
}
-------------------------------------------
Anyway, before deciding on a syntax for this, I would really like to have
some better understanding about the compile-time-language in general. I
believe, in the long term, there should be a way to convert between
identifiers and constant strings at compile time.
May 18 2004








Norbert Nemec <Norbert.Nemec gmx.de>