On 7/23/2010 10:21 PM, dsimcha wrote:
class Foo {
Type _val;
typeof(this) val(Type newVal) {
_val = newVal;
return this;
}
}
class Bar : Foo {
// More properties.
}
void main() {
auto bar = new Bar;
bar.val(someValue).barProperty(someOtherValue); // Won't work.
}
What about using templates? I haven't tested this code but it seems
like I've accomplished something similar before.
class Foo(T=Foo) {
Type _val;
T val(Type newVal) {
_val = newVal;
return this;
}
}
class Bar : Foo!(Bar) {
// More properties.
}