view tests/mini/compile_delegatetuple.d @ 1083:c1e9f612e2e2

Fix for dual operand form of fistp, also make reg ST(0) explicit and fix lindquists previous code that allowed dual operand form of fstp but dissallowed the single operand form accidently
author Kelly Wilson <wilsonk cpsc.ucalgary.ca>
date Tue, 10 Mar 2009 06:23:26 -0600
parents cd7da2ba14d1
children
line wrap: on
line source

alias char[] string;
template Unstatic(T) { alias T Unstatic; }
template Unstatic(T: T[]) { alias T[] Unstatic; }
template StupleMembers(T...) {
  static if (T.length) {
      const int id=T[0..$-1].length;
      const string str=StupleMembers!(T[0..$-1]).str~"Unstatic!(T["~id.stringof~"]) _"~id.stringof~"; ";
  } else const string str="";
}

struct Stuple(T...) {
 mixin(StupleMembers!(T).str);
}     
Stuple!(string, void delegate(float)) foo;