static struct Uda {int v;} enum E { a, b } @(E.b) struct S{} static assert(UdaOrDefault!(Uda, S, Uda(200)) == Uda(200)); static assert(UdaOrDefault!(E, S, E.a) == E.b);
See Implementation