Enum member isNullAssignable

template that resolves to true if an object of type T can be assigned to null

enum isNullAssignable(T) = is(typeof((inout int = 0) { T t = T.init; t = null; } ));