changeset 20:42bf2eb2973b trunk

[svn r24] * Added a simple std.traits by downs
author lindquist
date Thu, 04 Oct 2007 04:28:30 +0200
parents 788401029ecf
children 8d45266bbabe
files lphobos/std/traits.d
diffstat 1 files changed, 15 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/lphobos/std/traits.d	Thu Oct 04 04:28:30 2007 +0200
@@ -0,0 +1,15 @@
+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; }