This adds logic to help constrain mixin templates to statically only be allowed to be mixed into a specified type of scope. If it's mixed into the wrong type, it will static assert(0) with a helpful message.
enum MixinScope
{
function_, /// Mixed in inside a function.
class_, /// Mixed in inside a class.
struct_, /// Mixed in inside a struct.
module_, /// Mixed in inside a module.
}
This is a good candidate to move to lu, but let's merge it here first.
This adds logic to help constrain mixin templates to statically only be allowed to be mixed into a specified type of scope. If it's mixed into the wrong type, it will
static assert(0)
with a helpful message.This is a good candidate to move to lu, but let's merge it here first.