Boolean::Boolean(QScriptEnginePrivate *eng): Core(eng, QLatin1String("Boolean"), QScriptClassInfo::BooleanType) { newBoolean(&publicPrototype, false); eng->newConstructor(&ctor, this, publicPrototype); addPrototypeFunction(QLatin1String("toString"), method_toString, 0); addPrototypeFunction(QLatin1String("valueOf"), method_valueOf, 0); }
Variant::Variant(QScriptEnginePrivate *eng): Ecma::Core(eng, QLatin1String("QVariant"), QScriptClassInfo::VariantType) { newVariant(&publicPrototype, QVariant()); eng->newConstructor(&ctor, this, publicPrototype); addPrototypeFunction(QLatin1String("toString"), method_toString, 0); addPrototypeFunction(QLatin1String("valueOf"), method_valueOf, 0); }
RegExp::RegExp(QScriptEnginePrivate *eng): Core(eng, QLatin1String("RegExp"), QScriptClassInfo::RegExpType) { newRegExp(&publicPrototype, QString(), /*flags=*/0); eng->newConstructor(&ctor, this, publicPrototype); addPrototypeFunction(QLatin1String("exec"), method_exec, 1); addPrototypeFunction(QLatin1String("test"), method_test, 1); addPrototypeFunction(QLatin1String("toString"), method_toString, 1); }
Enumeration::Enumeration(QScriptEnginePrivate *eng): Ecma::Core(eng, QLatin1String("Enumeration"), QScriptClassInfo::EnumerationType) { classInfo()->setData(new EnumerationClassData(classInfo())); newEnumeration(&publicPrototype, eng->newArray()); eng->newConstructor(&ctor, this, publicPrototype); addPrototypeFunction(QLatin1String("toFront"), method_toFront, 0); addPrototypeFunction(QLatin1String("hasNext"), method_hasNext, 0); addPrototypeFunction(QLatin1String("next"), method_next, 0); }
void Function::initialize() { QScriptEnginePrivate *eng = engine(); eng->newConstructor(&ctor, this, publicPrototype); addPrototypeFunction(QLatin1String("toString"), method_toString, 1); addPrototypeFunction(QLatin1String("apply"), method_apply, 1); addPrototypeFunction(QLatin1String("call"), method_call, 1); addPrototypeFunction(QLatin1String("connect"), method_connect, 1); addPrototypeFunction(QLatin1String("disconnect"), method_disconnect, 1); QExplicitlySharedDataPointer<QScriptClassData> data(new FunctionClassData(classInfo())); classInfo()->setData(data); }
Number::Number(QScriptEnginePrivate *eng): Core(eng, QLatin1String("Number"), QScriptClassInfo::NumberType) { newNumber(&publicPrototype, 0); eng->newConstructor(&ctor, this, publicPrototype); addPrototypeFunction(QLatin1String("toString"), method_toString, 0); addPrototypeFunction(QLatin1String("toLocaleString"), method_toLocaleString, 0); addPrototypeFunction(QLatin1String("valueOf"), method_valueOf, 0); addPrototypeFunction(QLatin1String("toFixed"), method_toFixed, 0); addPrototypeFunction(QLatin1String("toExponential"), method_toExponential, 0); addPrototypeFunction(QLatin1String("toPrecision"), method_toPrecision, 0); QScriptValue::PropertyFlags flags = QScriptValue::Undeletable | QScriptValue::ReadOnly | QScriptValue::SkipInEnumeration; ctor.setProperty(QLatin1String("NaN"), QScriptValueImpl(eng, qSNaN()), flags); ctor.setProperty(QLatin1String("NEGATIVE_INFINITY"), QScriptValueImpl(eng, -qInf()), flags); ctor.setProperty(QLatin1String("POSITIVE_INFINITY"), QScriptValueImpl(eng, qInf()), flags); ctor.setProperty(QLatin1String("MAX_VALUE"), QScriptValueImpl(eng, 1.7976931348623158e+308), flags); #ifdef __INTEL_COMPILER # pragma warning( push ) # pragma warning(disable: 239) #endif ctor.setProperty(QLatin1String("MIN_VALUE"), QScriptValueImpl(eng, 5e-324), flags); #ifdef __INTEL_COMPILER # pragma warning( pop ) #endif }
void Object::initialize() { QScriptEnginePrivate *eng = engine(); eng->newConstructor(&ctor, this, publicPrototype); addPrototypeFunction(QLatin1String("toString"), method_toString, 1); addPrototypeFunction(QLatin1String("toLocaleString"), method_toLocaleString, 1); addPrototypeFunction(QLatin1String("valueOf"), method_valueOf, 0); addPrototypeFunction(QLatin1String("hasOwnProperty"), method_hasOwnProperty, 1); addPrototypeFunction(QLatin1String("isPrototypeOf"), method_isPrototypeOf, 1); addPrototypeFunction(QLatin1String("propertyIsEnumerable"), method_propertyIsEnumerable, 1); addPrototypeFunction(QLatin1String("__defineGetter__"), method_defineGetter, 2); addPrototypeFunction(QLatin1String("__defineSetter__"), method_defineSetter, 2); }
Error::Error(QScriptEnginePrivate *eng): Core(eng, QLatin1String("Error"), QScriptClassInfo::ErrorType) { eng->newFunction(&ctor, this); newErrorPrototype(&publicPrototype, QScriptValueImpl(), ctor, QLatin1String("Error")); addPrototypeFunction(QLatin1String("backtrace"), method_backtrace, 0); addPrototypeFunction(QLatin1String("toString"), method_toString, 0); // native errors evalErrorCtor = eng->createFunction(method_EvalError, 3, classInfo(), QLatin1String("EvalError")); rangeErrorCtor = eng->createFunction(method_RangeError, 3, classInfo(), QLatin1String("RangeError")); referenceErrorCtor = eng->createFunction(method_ReferenceError, 3, classInfo(), QLatin1String("ReferenceError")); syntaxErrorCtor = eng->createFunction(method_SyntaxError, 3, classInfo(), QLatin1String("SyntaxError")); typeErrorCtor = eng->createFunction(method_TypeError, 3, classInfo(), QLatin1String("TypeError")); uriErrorCtor = eng->createFunction(method_UriError, 3, classInfo(), QLatin1String("URIError")); newErrorPrototype(&evalErrorPrototype, publicPrototype, evalErrorCtor, QLatin1String("EvalError")); newErrorPrototype(&rangeErrorPrototype, publicPrototype, rangeErrorCtor, QLatin1String("RangeError")); newErrorPrototype(&referenceErrorPrototype, publicPrototype, referenceErrorCtor, QLatin1String("ReferenceError")); newErrorPrototype(&syntaxErrorPrototype, publicPrototype, syntaxErrorCtor, QLatin1String("SyntaxError")); newErrorPrototype(&typeErrorPrototype, publicPrototype, typeErrorCtor, QLatin1String("TypeError")); newErrorPrototype(&uriErrorPrototype, publicPrototype, uriErrorCtor, QLatin1String("URIError")); }