From: Lars Knoll Date: Wed, 6 Mar 2013 08:55:15 +0000 (+0100) Subject: Add stubs for all the methods in the v8 API X-Git-Tag: upstream/5.2.1~669^2~659^2~159 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=8ae2796ca972668573b9bb9069bcc79358a08417;p=platform%2Fupstream%2Fqtdeclarative.git Add stubs for all the methods in the v8 API Qt Qml and Qt Quick now link against V4 :) Change-Id: I8320875bdeab91d800fbf530b0d57a67dc872188 Reviewed-by: Simon Hausmann --- diff --git a/src/v4/qcalculatehash_p.h b/src/v4/qcalculatehash_p.h index 9eedbfc..36c5a68 100644 --- a/src/v4/qcalculatehash_p.h +++ b/src/v4/qcalculatehash_p.h @@ -55,11 +55,18 @@ #include #include - +#include "qv4v8.h" QT_BEGIN_NAMESPACE -uint32_t calculateHash(const quint8* chars, int length); -uint32_t calculateHash(const quint16* chars, int length); +inline uint32_t calculateHash(const quint8* chars, int length) +{ + return v8::String::ComputeHash((char *)chars, length); +} + +inline uint32_t calculateHash(const quint16* chars, int length) +{ + return v8::String::ComputeHash((uint16_t *)chars, length); +} QT_END_NAMESPACE diff --git a/src/v4/qv4v8.cpp b/src/v4/qv4v8.cpp index 05c9618..bba1ca6 100644 --- a/src/v4/qv4v8.cpp +++ b/src/v4/qv4v8.cpp @@ -61,6 +61,9 @@ namespace v8 { #define Q_D(obj) QQmlJS::VM::Value *d = reinterpret_cast(obj) +#define ValuePtr(obj) reinterpret_cast(obj) +#define ConstValuePtr(obj) reinterpret_cast(obj) + void gcProtect(void *handle) { Q_D(handle); @@ -75,383 +78,1037 @@ void gcUnprotect(void *handle) currentEngine()->memoryManager->unprotect(m); } -#define ValuePtr(obj) reinterpret_cast(obj) -#define ConstValuePtr(obj) reinterpret_cast(obj) -bool Value::IsUndefined() const { return ConstValuePtr(this)->isUndefined(); } -bool Value::IsNull() const { return ConstValuePtr(this)->isNull(); } +ScriptOrigin::ScriptOrigin(Handle resource_name, Handle resource_line_offset, Handle resource_column_offset) +{ + m_fileName = resource_name->ToString()->asQString(); + m_lineNumber = resource_line_offset->ToInt32()->Value(); + m_columnNumber = resource_column_offset->ToInt32()->Value(); +} -bool Value::IsTrue() const +Handle ScriptOrigin::ResourceName() const { - return ConstValuePtr(this)->isBoolean() && ConstValuePtr(this)->booleanValue(); + Q_UNIMPLEMENTED(); } -bool Value::IsFalse() const +Handle ScriptOrigin::ResourceLineOffset() const { - return !IsTrue(); + Q_UNIMPLEMENTED(); } -bool Value::IsString() const +Handle ScriptOrigin::ResourceColumnOffset() const { - return ConstValuePtr(this)->isString(); + Q_UNIMPLEMENTED(); } -bool Value::IsFunction() const + +Local