1 //String types 2 static assert( isSomeString!string); 3 static assert( isSomeString!(wchar[])); 4 static assert( isSomeString!(dchar[])); 5 static assert( isSomeString!(typeof("aaa"))); 6 static assert( isSomeString!(const(char)[])); 7 8 //Non string types 9 static assert(!isSomeString!int); 10 static assert(!isSomeString!(int[])); 11 static assert(!isSomeString!(byte[])); 12 static assert(!isSomeString!(typeof(null))); 13 static assert(!isSomeString!(char[4])); 14 15 enum ES : string { a = "aaa", b = "bbb" } 16 static assert(!isSomeString!ES); 17 18 static struct Stringish 19 { 20 string str; 21 alias str this; 22 } 23 static assert(!isSomeString!Stringish);
Detect whether T is one of the built-in string types.
The built-in string types are Char[], where Char is any of char, wchar or dchar, with or without qualifiers.
Static arrays of characters (like char[80]) are not considered built-in string types.