Tj Holowaychuk
14 years ago
2 changed files with 75 additions and 0 deletions
@ -0,0 +1,59 @@ |
|||||
|
|
||||
|
#include <node.h> |
||||
|
#include <node_buffer.h> |
||||
|
#include <node_version.h> |
||||
|
#include <v8.h> |
||||
|
#include "buffer_compat.h" |
||||
|
|
||||
|
|
||||
|
#if NODE_MINOR_VERSION < 3 |
||||
|
|
||||
|
|
||||
|
char *BufferData(node::Buffer *b) { |
||||
|
return b->data(); |
||||
|
} |
||||
|
|
||||
|
|
||||
|
size_t BufferLength(node::Buffer *b) { |
||||
|
return b->length(); |
||||
|
} |
||||
|
|
||||
|
|
||||
|
char *BufferData(v8::Local<v8::Object> buf_obj) { |
||||
|
v8::HandleScope scope; |
||||
|
node::Buffer *buf = node::ObjectWrap::Unwrap<node::Buffer>(buf_obj); |
||||
|
return buf->data(); |
||||
|
} |
||||
|
|
||||
|
|
||||
|
size_t BufferLength(v8::Local<v8::Object> buf_obj) { |
||||
|
v8::HandleScope scope; |
||||
|
node::Buffer *buf = node::ObjectWrap::Unwrap<node::Buffer>(buf_obj); |
||||
|
return buf->length(); |
||||
|
} |
||||
|
|
||||
|
#else // NODE_VERSION
|
||||
|
|
||||
|
|
||||
|
char *BufferData(node::Buffer *b) { |
||||
|
return node::Buffer::Data(b->handle_); |
||||
|
} |
||||
|
|
||||
|
|
||||
|
size_t BufferLength(node::Buffer *b) { |
||||
|
return node::Buffer::Length(b->handle_); |
||||
|
} |
||||
|
|
||||
|
|
||||
|
char *BufferData(v8::Local<v8::Object> buf_obj) { |
||||
|
v8::HandleScope scope; |
||||
|
return node::Buffer::Data(buf_obj); |
||||
|
} |
||||
|
|
||||
|
|
||||
|
size_t BufferLength(v8::Local<v8::Object> buf_obj) { |
||||
|
v8::HandleScope scope; |
||||
|
return node::Buffer::Length(buf_obj); |
||||
|
} |
||||
|
|
||||
|
#endif // NODE_VERSION
|
@ -0,0 +1,16 @@ |
|||||
|
|
||||
|
#ifndef buffer_compat_h |
||||
|
#define buffer_compat_h |
||||
|
|
||||
|
#include <node.h> |
||||
|
#include <node_buffer.h> |
||||
|
#include <v8.h> |
||||
|
|
||||
|
char *BufferData(node::Buffer *b); |
||||
|
size_t BufferLength(node::Buffer *b); |
||||
|
|
||||
|
char *BufferData(v8::Local<v8::Object> buf_obj); |
||||
|
size_t BufferLength(v8::Local<v8::Object> buf_obj); |
||||
|
|
||||
|
|
||||
|
#endif // buffer_compat_h
|
Loading…
Reference in new issue