/** * @file * @author This file has been generated by generate-bindings.pl. DO NOT MODIFY! * @copyright Simplified BSD * * @cond * This program is free software: you can redistribute it and/or modify * it under the terms of the FreeBSD license as published by the FreeBSD * project. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. * * You should have received a copy of the FreeBSD license along with this * program. If not, see . * @endcond */ #ifndef V8ArrayBuffer_h #define V8ArrayBuffer_h #include #include "../../TypedArray.h" #include "DOM/Node.hpp" #include "string" #include "uscxml/plugins/datamodel/ecmascript/v8/V8DOM.h" #include namespace Arabica { namespace DOM { class V8ArrayBuffer { public: struct V8ArrayBufferPrivate { V8DOM* dom; uscxml::ArrayBuffer* nativeObj; }; V8_DESTRUCTOR(V8ArrayBufferPrivate); static bool hasInstance(v8::Handle); static v8::Handle md5Callback(const v8::Arguments&); static v8::Handle base64Callback(const v8::Arguments&); static v8::Handle sliceCallback(const v8::Arguments&); static v8::Handle isViewCallback(const v8::Arguments&); static v8::Handle byteLengthAttrGetter(v8::Local property, const v8::AccessorInfo& info); static v8::Handle mimeTypeAttrGetter(v8::Local property, const v8::AccessorInfo& info); static void mimeTypeAttrSetter(v8::Local property, v8::Local value, const v8::AccessorInfo& info); static v8::Handle constructor(const v8::Arguments&); static v8::Persistent Constr; static v8::Handle getConstructor() { if (Constr.IsEmpty()) { v8::Handle constr = v8::FunctionTemplate::New(constructor); Constr = v8::Persistent::New(constr); } return Constr; } static v8::Persistent Tmpl; static v8::Handle getTmpl() { if (Tmpl.IsEmpty()) { v8::Handle tmpl = v8::FunctionTemplate::New(); tmpl->SetClassName(v8::String::New("ArrayBuffer")); tmpl->ReadOnlyPrototype(); v8::Local instance = tmpl->InstanceTemplate(); v8::Local prototype = tmpl->PrototypeTemplate(); (void)prototype; // surpress unused warnings instance->SetInternalFieldCount(1); instance->SetAccessor(v8::String::NewSymbol("byteLength"), V8ArrayBuffer::byteLengthAttrGetter, 0, v8::External::New(0), static_cast(v8::DEFAULT), static_cast(v8::None)); instance->SetAccessor(v8::String::NewSymbol("mimeType"), V8ArrayBuffer::mimeTypeAttrGetter, V8ArrayBuffer::mimeTypeAttrSetter, v8::External::New(0), static_cast(v8::DEFAULT), static_cast(v8::None)); prototype->Set(v8::String::NewSymbol("md5"), v8::FunctionTemplate::New(V8ArrayBuffer::md5Callback, v8::Undefined()), static_cast(v8::DontDelete)); prototype->Set(v8::String::NewSymbol("base64"), v8::FunctionTemplate::New(V8ArrayBuffer::base64Callback, v8::Undefined()), static_cast(v8::DontDelete)); prototype->Set(v8::String::NewSymbol("slice"), v8::FunctionTemplate::New(V8ArrayBuffer::sliceCallback, v8::Undefined()), static_cast(v8::DontDelete)); prototype->Set(v8::String::NewSymbol("isView"), v8::FunctionTemplate::New(V8ArrayBuffer::isViewCallback, v8::Undefined()), static_cast(v8::DontDelete)); Tmpl = v8::Persistent::New(tmpl); } return Tmpl; } }; } } #endif // V8ArrayBuffer_h