From 9e16d84f9e9c6e0c38763ea07b1c5d385100467e Mon Sep 17 00:00:00 2001 From: Eugen Wissner Date: Wed, 29 Nov 2017 19:53:28 +0100 Subject: [PATCH] Reintroduce isStruct, isClass and isInterface since they can be useful for generic programming. --- source/tanya/meta/trait.d | 30 +++++++++++++++++++++++++++--- 1 file changed, 27 insertions(+), 3 deletions(-) diff --git a/source/tanya/meta/trait.d b/source/tanya/meta/trait.d index f5d6494..b0b5922 100644 --- a/source/tanya/meta/trait.d +++ b/source/tanya/meta/trait.d @@ -275,13 +275,37 @@ enum bool isTemplate(alias T) = __traits(isTemplate, T); static assert(!isTemplate!(S!int)); } -deprecated("Use is(T == interface) instead") +/** + * Tests whether $(D_PARAM T) is an interface. + * + * Params: + * T = A type. + * + * Returns: $(D_KEYWORD true) if $(D_PARAM T) is an interface, + * $(D_KEYWORD false) otherwise. + */ enum bool isInterface(T) = is(T == interface); -deprecated("Use is(T == class) instead") +/** + * Tests whether $(D_PARAM T) is a class. + * + * Params: + * T = A type. + * + * Returns: $(D_KEYWORD true) if $(D_PARAM T) is a class, + * $(D_KEYWORD false) otherwise. + */ enum bool isClass(T) = is(T == class); -deprecated("Use is(T == struct) instead") +/** + * Tests whether $(D_PARAM T) is a struct. + * + * Params: + * T = A type. + * + * Returns: $(D_KEYWORD true) if $(D_PARAM T) is a struct, + * $(D_KEYWORD false) otherwise. + */ enum bool isStruct(T) = is(T == struct); /**