Skip to content

Commit

Permalink
Add ddoc example for isDynamicArray
Browse files Browse the repository at this point in the history
  • Loading branch information
JackStouffer committed Jun 2, 2016
1 parent 380623d commit e883238
Showing 1 changed file with 12 additions and 7 deletions.
19 changes: 12 additions & 7 deletions std/traits.d
Original file line number Diff line number Diff line change
Expand Up @@ -5409,22 +5409,27 @@ unittest
*/
enum bool isDynamicArray(T) = is(DynamicArrayTypeOf!T) && !isAggregateType!T;

///
unittest
{
static assert( isDynamicArray!(int[]));
static assert( isDynamicArray!(string));
static assert( isDynamicArray!(long[3][]));

static assert(!isDynamicArray!(int[5]));
static assert(!isDynamicArray!(typeof(null)));
}

unittest
{
foreach (T; TypeTuple!(int[], char[], string, long[3][], double[string][]))
foreach (T; AliasSeq!(int[], char[], string, long[3][], double[string][]))
{
foreach (Q; TypeQualifierList)
{
static assert( isDynamicArray!( Q!T ));
static assert(!isDynamicArray!( SubTypeOf!(Q!T) ));
}
}

static assert(!isDynamicArray!(int[5]));
static assert(!isDynamicArray!(typeof(null)));

//enum EDA : int[] { a = [1], b = [2] }
//static assert( isDynamicArray!EDA);
}

/**
Expand Down

0 comments on commit e883238

Please sign in to comment.