Changeset 397
- Timestamp:
- 10/14/07 18:48:59 (1 year ago)
- Files:
-
- candidate/phobos/std/typetuple.d (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
candidate/phobos/std/typetuple.d
r294 r397 64 64 * { 65 65 * writefln("The index of long is ", 66 * IndexOf!(long, TypeTuple!(int, long, double)));66 * indexOf!(long, TypeTuple!(int, long, double))); 67 67 * // prints: The index of long is 1 68 68 * } 69 69 * --- 70 70 */ 71 template IndexOf(T, TList...)72 { 73 static if (TList.length == 0) 74 const int IndexOf = -1;75 else static if (is(T == TList[0])) 76 const int IndexOf = 0;77 else 78 const int IndexOf =79 ( IndexOf!(T, TList[1 .. length]) == -1)71 template indexOf(T, TList...) 72 { 73 static if (TList.length == 0) 74 const int indexOf = -1; 75 else static if (is(T == TList[0])) 76 const int indexOf = 0; 77 else 78 const int indexOf = 79 (indexOf!(T, TList[1 .. length]) == -1) 80 80 ? -1 81 : 1 + IndexOf!(T, TList[1 .. length]); 82 } 81 : 1 + indexOf!(T, TList[1 .. length]); 82 } 83 84 /// Kept for backwards compatibility 85 alias indexOf IndexOf; 83 86 84 87 /**
