Same as withVariant, but the argument is nullable
Mix<T> withMaybeVariant(Variant<T>? variant) { if (variant == null) return this; return withVariant(variant); }