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
qv4managed.cpp
Go to the documentation of this file.
1// Copyright (C) 2016 The Qt Company Ltd.
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#include "qv4managed_p.h"
6#include <private/qv4mm_p.h>
7
8using namespace QV4;
9
11
13
14QString Managed::typeToString(Type t) {
15 const char *s = nullptr;
16 switch (t) {
17 case Type_Invalid:
18 return QString();
19 case Type_String:
20 s = "String";
21 break;
22 case Type_Symbol:
23 s = "Symbol";
24 break;
25 case Type_Object:
26 s = "Object";
27 break;
28 case Type_ArrayObject:
29 s = "Array";
30 break;
31 case Type_FunctionObject:
32 s = "Function";
33 break;
34 case Type_GeneratorObject:
35 s = "Generator";
36 break;
37 case Type_BooleanObject:
38 s = "Boolean";
39 break;
40 case Type_NumberObject:
41 s = "Number";
42 break;
43 case Type_StringObject:
44 s = "String";
45 break;
46 case Type_SymbolObject:
47 s = "Symbol";
48 break;
49 case Type_DateObject:
50 s = "Date";
51 break;
52 case Type_RegExpObject:
53 s = "RegExp";
54 break;
55 case Type_ErrorObject:
56 s = "Error";
57 break;
58 case Type_ArgumentsObject:
59 s = "Arguments";
60 break;
61 case Type_JsonObject:
62 s = "JSON";
63 break;
64 case Type_ProxyObject:
65 s = "ProxyObject";
66 break;
67 case Type_MathObject:
68 s = "Math";
69 break;
70 case Type_UrlObject:
71 s = "URL";
72 break;
73 case Type_UrlSearchParamsObject:
74 s = "URLSearchParams";
75 break;
76
77 case Type_ExecutionContext:
78 s = "__ExecutionContext";
79 break;
80 case Type_MapIteratorObject:
81 s = "Map Iterator";
82 break;
83 case Type_SetIteratorObject:
84 s = "Set Iterator";
85 break;
86 case Type_ArrayIteratorObject:
87 s = "Array Iterator";
88 break;
89 case Type_StringIteratorObject:
90 s = "String Iterator";
91 break;
92 case Type_ForInIterator:
93 s = "__ForIn Iterator";
94 break;
95 case Type_InternalClass:
96 s = "__InternalClass";
97 break;
98 case Type_RegExp:
99 s = "__RegExp";
100 break;
101
102 case Type_V4Sequence:
103 s = "V4Sequence";
104 break;
105 case Type_QmlListProperty:
106 s = "QML List";
107 break;
108 case Type_V4QObjectWrapper:
109 s = "V4QObjectWrapper";
110 break;
111 case Type_QMLTypeWrapper:
112 s = "QMLTypeWrapper";
113 break;
114 case Type_V4ReferenceObject:
115 s = "V4ReferenceObject";
116 break;
117 case Type_QMLValueTypeWrapper:
118 s = "QMLValueTypeWrapper";
119 break;
120 case Type_MemberData:
121 s = "__MemberData";
122 break;
123 case Type_ArrayData:
124 s = "__ArrayData";
125 break;
126 case Type_StringOrSymbol:
127 s = "__StringOrSymbol";
128 break;
129 }
130 return QString::fromLatin1(s);
131
132}
133
134QString Managed::className() const
135{
136 return typeToString(Type(vtable()->type));
137}
138
139bool Managed::virtualIsEqualTo(Managed *, Managed *)
140{
141 return false;
142}
143
144
145OwnPropertyKeyIterator::~OwnPropertyKeyIterator()
146{
147}
DEFINE_MANAGED_VTABLE(Managed)
DEFINE_MANAGED_VTABLE(InternalClass)