annotate tests/mini/compile_delegatetuple.d @ 984:4c0df37d0421

Removing ldc.conf. (IMPORTANT: run 'cmake .' after pull) Added it to .hgignore. This gets rid of spurious differences caused by CMake regenerating it differently. Just run 'cmake .' to get it back in your local checkout.
author Frits van Bommel <fvbommel wxs.nl>
date Thu, 19 Feb 2009 13:50:05 +0100
parents cd7da2ba14d1
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
772
cd7da2ba14d1 Fix bug reported by downs. Related to delegate types within tuple template parameters.
Christian Kamm <kamm incasoftware de>
parents:
diff changeset
1 alias char[] string;
cd7da2ba14d1 Fix bug reported by downs. Related to delegate types within tuple template parameters.
Christian Kamm <kamm incasoftware de>
parents:
diff changeset
2 template Unstatic(T) { alias T Unstatic; }
cd7da2ba14d1 Fix bug reported by downs. Related to delegate types within tuple template parameters.
Christian Kamm <kamm incasoftware de>
parents:
diff changeset
3 template Unstatic(T: T[]) { alias T[] Unstatic; }
cd7da2ba14d1 Fix bug reported by downs. Related to delegate types within tuple template parameters.
Christian Kamm <kamm incasoftware de>
parents:
diff changeset
4 template StupleMembers(T...) {
cd7da2ba14d1 Fix bug reported by downs. Related to delegate types within tuple template parameters.
Christian Kamm <kamm incasoftware de>
parents:
diff changeset
5 static if (T.length) {
cd7da2ba14d1 Fix bug reported by downs. Related to delegate types within tuple template parameters.
Christian Kamm <kamm incasoftware de>
parents:
diff changeset
6 const int id=T[0..$-1].length;
cd7da2ba14d1 Fix bug reported by downs. Related to delegate types within tuple template parameters.
Christian Kamm <kamm incasoftware de>
parents:
diff changeset
7 const string str=StupleMembers!(T[0..$-1]).str~"Unstatic!(T["~id.stringof~"]) _"~id.stringof~"; ";
cd7da2ba14d1 Fix bug reported by downs. Related to delegate types within tuple template parameters.
Christian Kamm <kamm incasoftware de>
parents:
diff changeset
8 } else const string str="";
cd7da2ba14d1 Fix bug reported by downs. Related to delegate types within tuple template parameters.
Christian Kamm <kamm incasoftware de>
parents:
diff changeset
9 }
cd7da2ba14d1 Fix bug reported by downs. Related to delegate types within tuple template parameters.
Christian Kamm <kamm incasoftware de>
parents:
diff changeset
10
cd7da2ba14d1 Fix bug reported by downs. Related to delegate types within tuple template parameters.
Christian Kamm <kamm incasoftware de>
parents:
diff changeset
11 struct Stuple(T...) {
cd7da2ba14d1 Fix bug reported by downs. Related to delegate types within tuple template parameters.
Christian Kamm <kamm incasoftware de>
parents:
diff changeset
12 mixin(StupleMembers!(T).str);
cd7da2ba14d1 Fix bug reported by downs. Related to delegate types within tuple template parameters.
Christian Kamm <kamm incasoftware de>
parents:
diff changeset
13 }
cd7da2ba14d1 Fix bug reported by downs. Related to delegate types within tuple template parameters.
Christian Kamm <kamm incasoftware de>
parents:
diff changeset
14 Stuple!(string, void delegate(float)) foo;