view lphobos/std/traits.d @ 47:6d60e6049c4e trunk

[svn r51] dynamic array members in struct literals was broken
author lindquist
date Fri, 19 Oct 2007 17:00:35 +0200
parents 42bf2eb2973b
children 61615fa85940
line wrap: on
line source

module std.traits;
struct TypeHolder(S, T...) {
  S _ReturnType;
  T _ParameterTypeTuple;
}
TypeHolder!(S, T) *IFTI_gen(S, T...)(S delegate(T) dg) { return null; }
TypeHolder!(S, T) *IFTI_gen(S, T...)(S function(T) dg) { return null; }
template ParameterTypeTuple(T) {
  alias typeof(IFTI_gen(T.init)._ParameterTypeTuple) ParameterTypeTuple;
}
template ReturnType(T) {
  alias typeof(IFTI_gen(T.init)._ReturnType) ReturnType;
}
template isArray(T) { const bool isArray=false; }
template isArray(T: T[]) { const bool isArray=true; }