checkedint-aware wrapper for std.traits.isSigned
foreach (T; AliasSeq!(int, double)) assert(isBasicSigned!T && isSigned!T); assert(!isBasicSigned!(SmartInt!int)); assert( isSigned!(SmartInt!int)); foreach (T; AliasSeq!(ushort, int[], bool)) assert(!(isBasicSigned!T || isSigned!T));
See Implementation
checkedint-aware wrapper for std.traits.isSigned