Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
Loading...
Searching...
No Matches
qv4setiterator_p.h
Go to the documentation of this file.
1// Copyright (C) 2018 Crimson AS <info@crimson.no>
2// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
3// Qt-Security score:significant
4
5#ifndef QV4SETITERATOR_P_H
6#define QV4SETITERATOR_P_H
7
8//
9// W A R N I N G
10// -------------
11//
12// This file is not part of the Qt API. It exists purely as an
13// implementation detail. This header file may change from version to
14// version without notice, or even be removed.
15//
16// We mean it.
17//
18
19#include "qv4object_p.h"
20#include "qv4iterator_p.h"
21
23
24namespace QV4 {
25
26namespace Heap {
27
28#define SetIteratorObjectMembers(class, Member)
29 Member(class, Pointer, Object *, iteratedSet)
30 Member(class, NoMark, IteratorKind, iterationKind)
31 Member(class, NoMark, quint32, setNextIndex)
32
34 DECLARE_MARKOBJECTS(SetIteratorObject)
35 void init(Object *obj, QV4::ExecutionEngine *engine)
36 {
37 Object::init();
38 this->iteratedSet.set(engine, obj);
39 this->setNextIndex = 0;
40 }
41};
42
43}
44
46{
47 V4_PROTOTYPE(iteratorPrototype)
49
50 static ReturnedValue method_next(const FunctionObject *b, const Value *thisObject, const Value *argv, int argc);
51};
52
54{
55 V4_OBJECT2(SetIteratorObject, Object)
57 V4_PROTOTYPE(setIteratorPrototype)
58
60};
61
62
63}
64
65QT_END_NAMESPACE
66
67#endif // QV4SETITERATOR_P_H
DECLARE_HEAP_OBJECT(StrictArgumentsObject, Object)
Definition qjsvalue.h:23
#define V4_NEEDS_DESTROY
#define Q_MANAGED_TYPE(type)
#define CHECK_EXCEPTION()
DEFINE_OBJECT_VTABLE(WeakSetCtor)
DEFINE_OBJECT_VTABLE(SetCtor)
DEFINE_OBJECT_VTABLE(SetObject)
void init(ExecutionEngine *engine)
static void markObjects(Heap::Base *that, MarkStack *markStack)
void init(ExecutionEngine *engine)
static ReturnedValue method_next(const FunctionObject *b, const Value *thisObject, const Value *argv, int argc)
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_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 ReturnedValue virtualCall(const FunctionObject *f, const Value *thisObject, const Value *argv, int argc)
static ReturnedValue virtualCallAsConstructor(const FunctionObject *f, const Value *argv, int argc, const Value *)
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)