### Related area Wire ### Hardware specification - ### Is your feature request related to a problem? ``` class MyClass: { void setup() { i2cinput.onRequest([this]() { // dothings }); } }; ``` void (*user_onRequest)(void); void (*user_onReceive)(int); void onReceive(void (*)(int)) override; void onRequest(void (*)(void)) override; ### Describe the solution you'd like this instead 🤔 std::function<void()> user_onRequest; std::function<void(int)> user_onReceive; void onReceive(std::function<void(int)> function); void onRequest(std::function<void()> function); ### Describe alternatives you've considered manually changing the lib locally ### Additional context _No response_ ### I have checked existing list of Feature requests and the Contribution Guide - [x] I confirm I have checked existing list of Feature requests and Contribution Guide.