Line data Source code
1 : #pragma once 2 : 3 : #include <memory> 4 : 5 : #include "envoy/common/pure.h" 6 : 7 : namespace Envoy { 8 : namespace Common { 9 : 10 : /** 11 : * Handle for a callback that can be removed. Destruction of the handle removes the 12 : * callback. 13 : */ 14 : class CallbackHandle { 15 : public: 16 4527 : virtual ~CallbackHandle() = default; 17 : }; 18 : 19 : using CallbackHandlePtr = std::unique_ptr<CallbackHandle>; 20 : 21 : } // namespace Common 22 : } // namespace Envoy