@
disable const
static if(anySatisfy!(hasElaborateCopyConstructor, Types))
static if(!(allSatisfy!(isCopyable, Map!(InoutOf, Types)) && !anySatisfy!(hasPostblit, Map!(InoutOf, Types)) && allSatisfy!(isInout, Map!(InoutOf, Types))))
static if(!(allSatisfy!(isCopyable, Map!(ConstOf, Types))))