MCPcopy Create free account
hub / github.com/Snapchat/Valdi / onInitialize

Method onInitialize

valdi/src/valdi/quickjs/QuickJSJavaScriptContext.cpp:130–239  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

128}
129
130void QuickJSJavaScriptContext::onInitialize(Valdi::JSExceptionTracker& exceptionTracker) {
131 auto guard = _threadAccessChecker.guard();
132 auto globalObject = getGlobalObject(exceptionTracker);
133 if (!exceptionTracker) {
134 return;
135 }
136
137 auto functionValue = getObjectProperty(globalObject.get(), "Function", exceptionTracker);
138
139 if (!exceptionTracker) {
140 return;
141 }
142
143 _functionPrototype = JS_GetPrototype(_context, fromValdiJSValue(functionValue.get()));
144
145 _int8ArrayCtor = getConstructorFromObject(globalObject.get(), "Int8Array", exceptionTracker);
146 if (!exceptionTracker) {
147 return;
148 }
149 _int16ArrayCtor = getConstructorFromObject(globalObject.get(), "Int16Array", exceptionTracker);
150 if (!exceptionTracker) {
151 return;
152 }
153 _int32ArrayCtor = getConstructorFromObject(globalObject.get(), "Int32Array", exceptionTracker);
154 if (!exceptionTracker) {
155 return;
156 }
157 _uint8ArrayCtor = getConstructorFromObject(globalObject.get(), "Uint8Array", exceptionTracker);
158 if (!exceptionTracker) {
159 return;
160 }
161 _uint8ClampedArrayCtor = getConstructorFromObject(globalObject.get(), "Uint8ClampedArray", exceptionTracker);
162 if (!exceptionTracker) {
163 return;
164 }
165 _uint16ArrayCtor = getConstructorFromObject(globalObject.get(), "Uint16Array", exceptionTracker);
166 if (!exceptionTracker) {
167 return;
168 }
169 _uint32ArrayCtor = getConstructorFromObject(globalObject.get(), "Uint32Array", exceptionTracker);
170 if (!exceptionTracker) {
171 return;
172 }
173 _float32ArrayCtor = getConstructorFromObject(globalObject.get(), "Float32Array", exceptionTracker);
174 if (!exceptionTracker) {
175 return;
176 }
177 _float64ArrayCtor = getConstructorFromObject(globalObject.get(), "Float64Array", exceptionTracker);
178 if (!exceptionTracker) {
179 return;
180 }
181
182 _functionClassID = initializeClass(getBridgedFunctionClassDef(), exceptionTracker);
183 if (!exceptionTracker) {
184 return;
185 }
186
187 _wrappedObjectClassID = initializeClass(getWrappedObjectClassDef(), exceptionTracker);

Callers

nothing calls this directly

Calls 8

getWrappedObjectClassDefFunction · 0.85
JS_DupValueFunction · 0.85
guardMethod · 0.80
unsafeReleaseValueMethod · 0.80
fromValdiJSValueFunction · 0.70
getMethod · 0.65

Tested by

no test coverage detected