30 bool protoSet =
false;
32 protoSet =
a->setProtoFromNewTarget(newTarget);
33 if (!protoSet && isWeak)
34 a->setPrototypeOf(
scope.engine->weakSetPrototype());
35 a->d()->isWeakSet = isWeak;
42 return scope.engine->throwTypeError();
46 return a.asReturnedValue();
53 if (
done->toBoolean())
54 return a.asReturnedValue();
56 adder->call(
a, nextValue, 1);
57 if (
scope.hasException()) {
65 return a.asReturnedValue();
70 return construct(
f, argv, argc, newTarget,
true);
81 return construct(
f, argv, argc, newTarget,
false);
90 defineDefaultProperty(
engine->id_constructor(), (
o = ctor));
97 defineReadonlyConfigurableProperty(
engine->symbol_toStringTag(),
val);
104 if ((!that || !that->d()->isWeakSet) ||
116 if (!that || !that->d()->isWeakSet)
118 if (!argc || !argv[0].isObject())
121 return Encode(that->d()->esTable->remove(argv[0]));
128 if (!that || !that->d()->isWeakSet)
130 if (!argc || !argv[0].isObject())
133 return Encode(that->d()->esTable->has(argv[0]));
143 defineDefaultProperty(
engine->id_constructor(), (
o = ctor));
147 defineDefaultProperty(
QStringLiteral(
"delete"), method_delete, 1);
148 defineDefaultProperty(
QStringLiteral(
"entries"), method_entries, 0);
149 defineDefaultProperty(
QStringLiteral(
"forEach"), method_forEach, 1);
151 defineAccessorProperty(
QStringLiteral(
"size"), method_get_size,
nullptr);
159 defineDefaultProperty(
engine->symbol_iterator(), valuesFn);
162 defineReadonlyConfigurableProperty(
engine->symbol_toStringTag(),
val);
179 esTable->removeUnmarkedKeys();
186 Object::markObjects(that, markStack);
193 if (!that || that->d()->isWeakSet)
204 if (!that || that->d()->isWeakSet)
207 that->d()->esTable->clear();
215 if (!that || that->d()->isWeakSet)
218 return Encode(that->d()->esTable->remove(argv[0]));
225 if (!that || that->d()->isWeakSet)
237 if (!that || that->d()->isWeakSet)
249 for (
uint i = 0;
i < that->d()->esTable->size(); ++
i) {
264 if (!that || that->d()->isWeakSet)
267 return Encode(that->d()->esTable->has(argv[0]));
274 if (!that || that->d()->isWeakSet)
277 return Encode(that->d()->esTable->size());
284 if (!that || that->d()->isWeakSet)
static QString fromLatin1(QByteArrayView ba)
This is an overloaded member function, provided for convenience. It differs from the above function o...
void markObjects(MarkStack *s, bool isWeakMap)
QList< QVariant > arguments
\qmltype Particle \inqmlmodule QtQuick.Particles
DBusConnection const char DBusError DBusBusType DBusError return DBusConnection DBusHandleMessageFunction void DBusFreeFunction return DBusConnection return DBusConnection return const char DBusError return DBusConnection DBusMessage dbus_uint32_t return DBusConnection dbus_bool_t DBusConnection DBusAddWatchFunction DBusRemoveWatchFunction DBusWatchToggledFunction void DBusFreeFunction return DBusConnection DBusDispatchStatusFunction void DBusFreeFunction DBusTimeout return DBusTimeout return DBusWatch return DBusWatch unsigned int return DBusError const DBusError return const DBusMessage return DBusMessage return DBusMessage return DBusMessage return DBusMessage return DBusMessage return DBusMessageIter * iter
GLboolean GLboolean GLboolean b
GLboolean GLboolean GLboolean GLboolean a
[7]
#define QStringLiteral(str)
#define CHECK_EXCEPTION()
#define DEFINE_OBJECT_VTABLE(classname)
static constexpr ReturnedValue undefined()
Heap::Object * newSetIteratorObject(Object *o)
Heap::String * newIdentifier(const QString &text)
ReturnedValue throwTypeError()
static Heap::FunctionObject * createBuiltinFunction(ExecutionEngine *engine, StringOrSymbol *nameOrSymbol, VTable::Call code, int argumentCount)
Heap::ExecutionContext * scope() const
void init(QV4::ExecutionContext *scope)
void removeUnmarkedKeys()
static void markObjects(Heap::Base *that, MarkStack *markStack)
void init(QV4::ExecutionContext *scope)
void defineReadonlyConfigurableProperty(const QString &name, const Value &value)
void defineReadonlyProperty(const QString &name, const Value &value)
static ReturnedValue call(ExecutionEngine *, const Value &, int)
static ReturnedValue call(ExecutionEngine *, const Value &, const Value &)
static ReturnedValue call(ExecutionEngine *, const Value &, Value *)
Value * alloc(qint64 nValues) const =delete
QML_NEARLY_ALWAYS_INLINE ReturnedValue asReturnedValue() const
static ReturnedValue method_get_size(const FunctionObject *, const Value *thisObject, const Value *argv, int argc)
static ReturnedValue method_entries(const FunctionObject *, const Value *thisObject, const Value *argv, int argc)
static ReturnedValue method_forEach(const FunctionObject *, const Value *thisObject, const Value *argv, int argc)
static ReturnedValue method_add(const FunctionObject *, const Value *thisObject, const Value *argv, int argc)
static ReturnedValue method_has(const FunctionObject *, const Value *thisObject, const Value *argv, int argc)
static ReturnedValue method_values(const FunctionObject *, const Value *thisObject, const Value *argv, int argc)
static ReturnedValue method_clear(const FunctionObject *, const Value *thisObject, const Value *argv, int argc)
void init(ExecutionEngine *engine, Object *ctor)
static ReturnedValue method_delete(const FunctionObject *, const Value *thisObject, const Value *argv, int argc)
static constexpr VTable::CallAsConstructor virtualCallAsConstructor
static constexpr VTable::Call virtualCall
static constexpr Value fromInt32(int i)
static constexpr Value undefinedValue()
static ReturnedValue construct(const FunctionObject *f, const Value *argv, int argc, const Value *, bool weakSet)
static ReturnedValue method_add(const FunctionObject *, const Value *thisObject, const Value *argv, int argc)
static ReturnedValue method_has(const FunctionObject *, const Value *thisObject, const Value *argv, int argc)
void init(ExecutionEngine *engine, Object *ctor)
static ReturnedValue method_delete(const FunctionObject *, const Value *thisObject, const Value *argv, int argc)