std::function binding support