Reply to Brian,

On Wed, 25 Feb 2009 22:08:43 +0000, BCS wrote:

template BaseT(){
typeof(this) foo()(int x_) {
this.x = x_;
return this;
}
}
class Base {
int x;
mixin BaseT!();
}
template DerivedT()
{
typeof(this) bar(int y_) {
return this;
}
mixin BaseT!();
}
class Derived : Base {
mixin DerivedT!();
}
hmm.. is that really the best way? if the function has 10 lines of
code and is mixed into to 15 classes thatll give me 15 times the code
for that one function i think. also gets a bit tricky when i want to
override some of the functions. (by using another class in between
base and derived?). i think i need a new plan..


you could stuff all the functonality into non-mixedin functions and only mix in shells

template DerivedT()
{
 typeof(this) bar(int y_) {
   do_bar(y_);
   return this;
 }
}


Reply via email to