summaryrefslogtreecommitdiffstats
path: root/src/uscxml/plugins/datamodel/ecmascript/JavaScriptCore/dom/JSCTypedArrayCustom.cpp
diff options
context:
space:
mode:
authorStefan Radomski <github@mintwerk.de>2016-05-12 13:12:33 (GMT)
committerStefan Radomski <github@mintwerk.de>2016-05-12 13:12:33 (GMT)
commitb62e7979600feee23dc7cdb61042a8fc7673122b (patch)
treef7351372f37979dd2d048e0b68a16a4cd3b2aadb /src/uscxml/plugins/datamodel/ecmascript/JavaScriptCore/dom/JSCTypedArrayCustom.cpp
parent1b11b310be61e51b3ac5ebb83f7c8a33aef3d6e8 (diff)
downloaduscxml-b62e7979600feee23dc7cdb61042a8fc7673122b.zip
uscxml-b62e7979600feee23dc7cdb61042a8fc7673122b.tar.gz
uscxml-b62e7979600feee23dc7cdb61042a8fc7673122b.tar.bz2
Major Refactoring v2.0
Diffstat (limited to 'src/uscxml/plugins/datamodel/ecmascript/JavaScriptCore/dom/JSCTypedArrayCustom.cpp')
-rw-r--r--src/uscxml/plugins/datamodel/ecmascript/JavaScriptCore/dom/JSCTypedArrayCustom.cpp250
1 files changed, 0 insertions, 250 deletions
diff --git a/src/uscxml/plugins/datamodel/ecmascript/JavaScriptCore/dom/JSCTypedArrayCustom.cpp b/src/uscxml/plugins/datamodel/ecmascript/JavaScriptCore/dom/JSCTypedArrayCustom.cpp
deleted file mode 100644
index b5122e8..0000000
--- a/src/uscxml/plugins/datamodel/ecmascript/JavaScriptCore/dom/JSCTypedArrayCustom.cpp
+++ /dev/null
@@ -1,250 +0,0 @@
-/**
- * @file
- * @author 2012-2013 Stefan Radomski (stefan.radomski@cs.tu-darmstadt.de)
- * @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 <http://www.opensource.org/licenses/bsd-license>.
- * @endcond
- */
-
-#include "../../TypedArray.h"
-#include "JSCArrayBuffer.h"
-#include "JSCInt8Array.h"
-#include "JSCUint8Array.h"
-#include "JSCUint8ClampedArray.h"
-#include "JSCInt16Array.h"
-#include "JSCUint16Array.h"
-#include "JSCInt32Array.h"
-#include "JSCUint32Array.h"
-#include "JSCFloat32Array.h"
-#include "JSCFloat64Array.h"
-#include "JSCDataView.h"
-
-#define JSC_VALUE_TO_STRING(name, stringName)\
-size_t name##MaxSize = JSStringGetMaximumUTF8CStringSize(name);\
-char* name##Buffer = new char[name##MaxSize];\
-JSStringGetUTF8CString(name, name##Buffer, name##MaxSize);\
-std::string stringName(name##Buffer);\
-free(name##Buffer);\
-
-
-#define JSC_TYPED_ARRAY_GET_PROP_RETURN(type)\
-size_t propMaxSize = JSStringGetMaximumUTF8CStringSize(propertyName);\
-char* propBuffer = new char[propMaxSize];\
-JSStringGetUTF8CString(propertyName, propBuffer, propMaxSize);\
-std::string propName(propBuffer);\
-free(propBuffer);\
-if (strcmp(propName.c_str(), "prototype") == 0) {\
- JSStringRef prototypeName = JSStringCreateWithUTF8CString(#type);\
- JSValueRef prototype = JSObjectGetProperty(ctx, JSContextGetGlobalObject(ctx), prototypeName, exception);\
- assert(!JSValueIsUndefined(ctx, prototype) && !JSValueIsNull(ctx, prototype));\
- JSStringRelease(prototypeName);\
- return prototype;\
-}\
-JSStaticValue* prop = JSC##type::staticValues;\
-while(prop->name) {\
- if (strcmp(propName.c_str(), prop->name) == 0) {\
- return (prop->getProperty)(ctx, object, propertyName, exception);\
- }\
- prop++;\
-}\
-\
-JSC##type::JSC##type##Private* privObj = (JSC##type::JSC##type##Private*)JSObjectGetPrivate(object);\
-if (!privObj)\
- return JSValueMakeUndefined(ctx);\
-\
-uscxml::type* array = ((JSC##type::JSC##type##Private*)JSObjectGetPrivate(object))->nativeObj;\
-std::string base = "0123456789";\
-if (propName.find_first_not_of(base) != std::string::npos) {\
- return JSValueMakeUndefined(ctx);\
-}\
-unsigned long index = boost::lexical_cast<unsigned long>(propName);\
-return JSValueMakeNumber(ctx, array->get(index));
-
-
-
-#define JSC_TYPED_ARRAY_SET_PROP_RETURN(type)\
-if (!JSValueIsNumber(ctx, value)) {\
- return false;\
-}\
-size_t propMaxSize = JSStringGetMaximumUTF8CStringSize(propertyName);\
-char* propBuffer = new char[propMaxSize];\
-JSStringGetUTF8CString(propertyName, propBuffer, propMaxSize);\
-std::string propName(propBuffer);\
-free(propBuffer);\
-uscxml::type* array = ((JSC##type::JSC##type##Private*)JSObjectGetPrivate(object))->nativeObj;\
-std::string base = "0123456789";\
-if (propName.find_first_not_of(base) != std::string::npos) {\
- return JSValueMakeUndefined(ctx);\
-}\
-unsigned long index = boost::lexical_cast<unsigned long>(propName);\
-if (index >= array->getLength()) {\
- return false;\
-}\
-array->set(index, JSValueToNumber(ctx, value, exception));\
-return true;
-
-
-#define JSC_TYPED_ARRAY_HAS_PROP_RETURN(type)\
-size_t propertyNameMaxSize = JSStringGetMaximumUTF8CStringSize(propertyName);\
-char* propertyNameBuffer = new char[propertyNameMaxSize];\
-JSStringGetUTF8CString(propertyName, propertyNameBuffer, propertyNameMaxSize);\
-std::string propName(propertyNameBuffer);\
-free(propertyNameBuffer);\
-\
-if (strcmp(propName.c_str(), "prototype") == 0)\
- return true;\
-\
-if (strcmp(propName.c_str(), "length") == 0)\
- return true;\
-\
-JSStaticValue* prop = JSC##type::staticValues;\
-while(prop->name) {\
- if (strcmp(propName.c_str(), prop->name) == 0) {\
- return true;\
- }\
- prop++;\
-}\
-\
-JSC##type::JSC##type##Private* privObj = (JSC##type::JSC##type##Private*)JSObjectGetPrivate(object);\
-if (!privObj)\
- return false;\
-\
-uscxml::type* array = ((JSC##type::JSC##type##Private*)JSObjectGetPrivate(object))->nativeObj;\
-std::string base = "0123456789";\
-if (propName.find_first_not_of(base) != std::string::npos) {\
- return false;\
-}\
-unsigned long index = boost::lexical_cast<unsigned long>(propName);\
-if (array->getLength() > index)\
- return true;\
-return false;\
-
-namespace Arabica {
-namespace DOM {
-
-bool JSCInt8Array::hasPropertyCustomCallback(JSContextRef ctx, JSObjectRef object, JSStringRef propertyName) {
- JSC_TYPED_ARRAY_HAS_PROP_RETURN(Int8Array);
-}
-
-bool JSCInt16Array::hasPropertyCustomCallback(JSContextRef ctx, JSObjectRef object, JSStringRef propertyName) {
- JSC_TYPED_ARRAY_HAS_PROP_RETURN(Int16Array);
-}
-
-bool JSCInt32Array::hasPropertyCustomCallback(JSContextRef ctx, JSObjectRef object, JSStringRef propertyName) {
- JSC_TYPED_ARRAY_HAS_PROP_RETURN(Int32Array);
-}
-
-bool JSCUint8Array::hasPropertyCustomCallback(JSContextRef ctx, JSObjectRef object, JSStringRef propertyName) {
- JSC_TYPED_ARRAY_HAS_PROP_RETURN(Uint8Array);
-}
-
-bool JSCUint16Array::hasPropertyCustomCallback(JSContextRef ctx, JSObjectRef object, JSStringRef propertyName) {
- JSC_TYPED_ARRAY_HAS_PROP_RETURN(Uint16Array);
-}
-
-bool JSCUint32Array::hasPropertyCustomCallback(JSContextRef ctx, JSObjectRef object, JSStringRef propertyName) {
- JSC_TYPED_ARRAY_HAS_PROP_RETURN(Uint32Array);
-}
-
-bool JSCFloat32Array::hasPropertyCustomCallback(JSContextRef ctx, JSObjectRef object, JSStringRef propertyName) {
- JSC_TYPED_ARRAY_HAS_PROP_RETURN(Float32Array);
-}
-
-bool JSCFloat64Array::hasPropertyCustomCallback(JSContextRef ctx, JSObjectRef object, JSStringRef propertyName) {
- JSC_TYPED_ARRAY_HAS_PROP_RETURN(Float64Array);
-}
-
-bool JSCUint8ClampedArray::hasPropertyCustomCallback(JSContextRef ctx, JSObjectRef object, JSStringRef propertyName) {
- JSC_TYPED_ARRAY_HAS_PROP_RETURN(Uint8ClampedArray);
-}
-
-// -----------------
-
-JSValueRef JSCInt8Array::getPropertyCustomCallback(JSContextRef ctx, JSObjectRef object, JSStringRef propertyName, JSValueRef* exception) {
- JSC_TYPED_ARRAY_GET_PROP_RETURN(Int8Array);
-}
-
-JSValueRef JSCInt16Array::getPropertyCustomCallback(JSContextRef ctx, JSObjectRef object, JSStringRef propertyName, JSValueRef* exception) {
- JSC_TYPED_ARRAY_GET_PROP_RETURN(Int16Array);
-}
-
-JSValueRef JSCInt32Array::getPropertyCustomCallback(JSContextRef ctx, JSObjectRef object, JSStringRef propertyName, JSValueRef* exception) {
- JSC_TYPED_ARRAY_GET_PROP_RETURN(Int32Array);
-}
-
-JSValueRef JSCUint8Array::getPropertyCustomCallback(JSContextRef ctx, JSObjectRef object, JSStringRef propertyName, JSValueRef* exception) {
- JSC_TYPED_ARRAY_GET_PROP_RETURN(Uint8Array);
-}
-
-JSValueRef JSCUint16Array::getPropertyCustomCallback(JSContextRef ctx, JSObjectRef object, JSStringRef propertyName, JSValueRef* exception) {
- JSC_TYPED_ARRAY_GET_PROP_RETURN(Uint16Array);
-}
-
-JSValueRef JSCUint32Array::getPropertyCustomCallback(JSContextRef ctx, JSObjectRef object, JSStringRef propertyName, JSValueRef* exception) {
- JSC_TYPED_ARRAY_GET_PROP_RETURN(Uint32Array);
-}
-
-JSValueRef JSCFloat32Array::getPropertyCustomCallback(JSContextRef ctx, JSObjectRef object, JSStringRef propertyName, JSValueRef* exception) {
- JSC_TYPED_ARRAY_GET_PROP_RETURN(Float32Array);
-}
-
-JSValueRef JSCFloat64Array::getPropertyCustomCallback(JSContextRef ctx, JSObjectRef object, JSStringRef propertyName, JSValueRef* exception) {
- JSC_TYPED_ARRAY_GET_PROP_RETURN(Float64Array);
-}
-
-JSValueRef JSCUint8ClampedArray::getPropertyCustomCallback(JSContextRef ctx, JSObjectRef object, JSStringRef propertyName, JSValueRef* exception) {
- JSC_TYPED_ARRAY_GET_PROP_RETURN(Uint8ClampedArray);
-}
-
-// ----------------
-
-bool JSCInt8Array::setPropertyCustomCallback(JSContextRef ctx, JSObjectRef object, JSStringRef propertyName, JSValueRef value, JSValueRef* exception) {
- JSC_TYPED_ARRAY_SET_PROP_RETURN(Int8Array);
-}
-
-bool JSCInt16Array::setPropertyCustomCallback(JSContextRef ctx, JSObjectRef object, JSStringRef propertyName, JSValueRef value, JSValueRef* exception) {
- JSC_TYPED_ARRAY_SET_PROP_RETURN(Int16Array);
-}
-
-bool JSCInt32Array::setPropertyCustomCallback(JSContextRef ctx, JSObjectRef object, JSStringRef propertyName, JSValueRef value, JSValueRef* exception) {
- JSC_TYPED_ARRAY_SET_PROP_RETURN(Int32Array);
-}
-
-bool JSCUint8Array::setPropertyCustomCallback(JSContextRef ctx, JSObjectRef object, JSStringRef propertyName, JSValueRef value, JSValueRef* exception) {
- JSC_TYPED_ARRAY_SET_PROP_RETURN(Uint8Array);
-}
-
-bool JSCUint16Array::setPropertyCustomCallback(JSContextRef ctx, JSObjectRef object, JSStringRef propertyName, JSValueRef value, JSValueRef* exception) {
- JSC_TYPED_ARRAY_SET_PROP_RETURN(Uint16Array);
-}
-
-bool JSCUint32Array::setPropertyCustomCallback(JSContextRef ctx, JSObjectRef object, JSStringRef propertyName, JSValueRef value, JSValueRef* exception) {
- JSC_TYPED_ARRAY_SET_PROP_RETURN(Uint32Array);
-}
-
-bool JSCFloat32Array::setPropertyCustomCallback(JSContextRef ctx, JSObjectRef object, JSStringRef propertyName, JSValueRef value, JSValueRef* exception) {
- JSC_TYPED_ARRAY_SET_PROP_RETURN(Float32Array);
-}
-
-bool JSCFloat64Array::setPropertyCustomCallback(JSContextRef ctx, JSObjectRef object, JSStringRef propertyName, JSValueRef value, JSValueRef* exception) {
- JSC_TYPED_ARRAY_SET_PROP_RETURN(Float64Array);
-}
-
-bool JSCUint8ClampedArray::setPropertyCustomCallback(JSContextRef ctx, JSObjectRef object, JSStringRef propertyName, JSValueRef value, JSValueRef* exception) {
- JSC_TYPED_ARRAY_SET_PROP_RETURN(Uint8ClampedArray);
-}
-
-
-}
-} \ No newline at end of file