How to assign a class method as an interrupt handler?

You’re going to have to implement something akin to what the people in the Arduino-ESP32 already do to enable abitrary lambdas and members functions as interrupts functions – use std::function.

For their implementation, see the FunctionalInterrupt.* files and examples.

The base ISR function must be a static void function with no arguments, not a member function of the class. However, you can store the to be called function expression in a std::function and call into that object later, just like their implementation does.