On Wednesday, 2 December 2020 at 12:59:52 UTC, Paul Backus wrote:
No, this is not a bug, because Nullable!T currently has an implicit conversion to T via `alias this`. [1] However, this implicit conversion is deprecated, and will be removed in a future release. Once that happens, `isTuple!NT` will be `false`, as you'd expect.

[1] http://phobos.dpldocs.info/std.typecons.Nullable.1.html#alias-this

I guess it's a moot point because the implicit conversion is deprecated, but it seems strange to me that isTuple behaves like canBeUsedAsTuple.

Seems like the reasonable thing to do with a Nullable!(Tuple!Whatever) would be to check isTuple!(TemplateArgsOf!MyNullable)

Thanks for the response

Reply via email to