Hi again, The code below works for some cases but not for the Nullable!Type.
A way to fix it should be check the type and use ".isNull" for Nullabe!Type. But is there a simple way to test if value is null for every case?
import std.stdio, std.typecons, std.variant, std.conv; bool foo(T)(T t){ return (t is null); } class S{ Nullable!int i; } void main(){ string x = "a"; writeln(x is null," - " ,x.foo); string y = null; writeln(y is null," - ", y.foo); auto z = null; writeln(z is null," - ", z.foo); S s = new S(); writeln(s.i.isNull); // Ok //writeln(s.i is null); // Error //s.i.foo(2); // Error }