Ultimate functor class which can read/write to l-values/r-values
Assuming C++20, we can constrain the template (similar to your attempt at static_assert).  The key is that Args... can contain rvalue-references, but we need to convert those to lvalue types, because that's what we present to the function:
#include &lt;concepts&gt;


    template&lt;typename... Args&gt;
    inline auto operator()(Args&amp;&amp;... args)
        requires std::invocable&lt;Functor, std::add_lvalue_reference_t&lt;Args&gt;...&gt;

I don't see anything else I would propose improving.