#include "static_assert.h" #include "hasher.h" #include "murmurhashutils.h" #include "inputdata.h" #include "hasher_impl.h" #include "asyncupdate.h" namespace MurmurHash { using v8::Object; using v8::Int32; using v8::Uint32; using v8::Function; using v8::ObjectTemplate; using v8::PropertyAttribute; using v8::ReadOnly; using v8::DontDelete; using v8::DontEnum; using Nan::MaybeLocal; #define SINGLE_ARG(...) __VA_ARGS__ namespace { static const char * const MESSAGE_ERROR_PENDING_UPDATE = "Asynchronous update still in progress"; } /** * @class * * Create MurmurHash utility * * new MurmurHash([seed|hash|serial][, endianness="BE"]) * * @param {number} seed - initial murmur hash seed as 32 bit integer * @param {MurmurHash} hash - an instance of another MurmurHash of the same type * @param {string|Buffer} serial - serialized state of the same MurmurHash type * @param {string} endianness - digest byte order: "BE", "LE" or "platform" **/ template