27 lines
487 B
C++
27 lines
487 B
C++
|
#pragma once
|
||
|
|
||
|
#include <google/protobuf/stubs/callback.h>
|
||
|
#include <functional>
|
||
|
|
||
|
namespace tinyrpc {
|
||
|
|
||
|
class TinypbClosure : public google::protobuf::Closure {
|
||
|
public:
|
||
|
explicit TinypbClosure(const std::function<void()>& cb) : m_callback(cb){}
|
||
|
~TinypbClosure() = default;
|
||
|
|
||
|
void Run() override {
|
||
|
if(m_callback) {
|
||
|
m_callback();
|
||
|
}
|
||
|
}
|
||
|
|
||
|
|
||
|
private:
|
||
|
std::function<void()> m_callback{};
|
||
|
|
||
|
|
||
|
|
||
|
};
|
||
|
|
||
|
}
|