#ifndef node_h #define node_h #include #include #include namespace node { #define NODE_SYMBOL(name) v8::String::NewSymbol(name) #define NODE_METHOD(name) v8::Handle name (const v8::Arguments& args) #define NODE_SET_METHOD(obj, name, callback) \ obj->Set(NODE_SYMBOL(name), v8::FunctionTemplate::New(callback)->GetFunction()) #define NODE_UNWRAP(type, value) static_cast(node::ObjectWrap::Unwrap(value)) enum encoding {UTF8, RAW}; void fatal_exception (v8::TryCatch &try_catch); void eio_warmup (void); // call this before creating a new eio event. class ObjectWrap { public: ObjectWrap (v8::Handle handle); virtual ~ObjectWrap ( ); protected: static void* Unwrap (v8::Handle handle); v8::Persistent handle_; private: static void MakeWeak (v8::Persistent _, void *data); }; } // namespace node #endif // node_h