#ifndef HANDLE_WRAP_H_ #define HANDLE_WRAP_H_ namespace node { class HandleWrap { public: static void Initialize(v8::Handle target); static v8::Handle Close(const v8::Arguments& args); protected: HandleWrap(v8::Handle object, uv_handle_t* handle); virtual ~HandleWrap(); virtual void StateChange() {} v8::Persistent object_; private: static void OnClose(uv_handle_t* handle); // Using double underscore due to handle_ member in tcp_wrap. Probably // tcp_wrap should rename it's member to 'handle'. uv_handle_t* handle__; }; } // namespace node #endif // HANDLE_WRAP_H_