smalloc: expose ExternalArraySize
authorTrevor Norris <trev.norris@gmail.com>
Tue, 20 Aug 2013 17:12:29 +0000 (10:12 -0700)
committerTrevor Norris <trev.norris@gmail.com>
Tue, 20 Aug 2013 18:07:37 +0000 (11:07 -0700)
Useful to correctly determine the byte size of the external memory that
needs to be allocated for an external array.

src/smalloc.cc
src/smalloc.h

index 8100fbf..d97194b 100644 (file)
@@ -69,7 +69,7 @@ static bool using_alloc_cb;
 
 
 // return size of external array type, or 0 if unrecognized
-static inline size_t ExternalArraySize(enum ExternalArrayType type) {
+size_t ExternalArraySize(enum ExternalArrayType type) {
   switch (type) {
     case v8::kExternalUnsignedByteArray:
       return sizeof(uint8_t);
index d1b04eb..029f0d9 100644 (file)
@@ -42,6 +42,11 @@ static const unsigned int kMaxLength = 0x3fffffff;
 NODE_EXTERN typedef void (*FreeCallback)(char* data, void* hint);
 
 /**
+ * Return byte size of external array type.
+ */
+NODE_EXTERN size_t ExternalArraySize(enum v8::ExternalArrayType type);
+
+/**
  * Allocate external memory and set to passed object. If data is passed then
  * will use that instead of allocating new.
  *