Lines Matching refs:JSHandle

50 void Builtins::InitializeSObjectAndSFunction(const JSHandle<GlobalEnv> &env) const
54 JSHandle<JSHClass> sobjPrototypeHClass = CreateSObjectPrototypeHClass();
56 JSHandle<JSObject> sObjPrototype =
58 JSHandle<JSTaggedValue> sObjPrototypeVal(sObjPrototype);
61 JSHandle<JSHClass> sObjIHClass =
65 JSHandle<JSHClass> sFuncPrototypeHClass = CreateSFunctionPrototypeHClass(sObjPrototypeVal);
67 JSHandle<JSFunction> sFuncPrototype = factory_->NewSFunctionByHClass(
82 void Builtins::CopySObjectAndSFunction(const JSHandle<GlobalEnv> &env, const JSTaggedValue &srcEnv) const
93 void Builtins::InitializeSObject(const JSHandle<GlobalEnv> &env, const JSHandle<JSHClass> &sObjIHClass,
94 const JSHandle<JSObject> &sObjPrototype,
95 const JSHandle<JSFunction> &sFuncPrototype) const
99 JSHandle<JSHClass> sObjectFunctionHClass = CreateSObjectFunctionHClass(sFuncPrototype);
100 JSHandle<JSFunction> sObjectFunction =
109 SetSFunction(env, JSHandle<JSObject>(sObjectFunction), entry.GetName(), entry.GetEntrypoint(),
120 JSHandle<JSTaggedValue> protoGetter =
122 JSHandle<JSTaggedValue> protoSetter =
127 void Builtins::InitializeSArrayBuffer(const JSHandle<GlobalEnv> &env, const JSHandle<JSObject> &sObjPrototype,
128 const JSHandle<JSFunction> &sFuncPrototype) const
133 JSHandle<JSHClass> arrayBufferPrototypeHClass = CreateSArrayBufferPrototypeHClass(sObjPrototype);
134 JSHandle<JSObject> arrayBufferPrototype =
137 JSHandle<JSTaggedValue> arrayBufferPrototypeValue(arrayBufferPrototype);
141 JSHandle<JSHClass> arrayBufferIHClass = factory_->NewSEcmaHClass(
145 JSHandle<JSHClass> arrayBufferFuncHClass = CreateSArrayBufferFunctionHClass(sFuncPrototype);
147 JSHandle<JSFunction> arrayBufferFunction =
152 JSHandle<JSObject> globalObject(thread_, env->GetGlobalObject());
153 JSHandle<JSTaggedValue> nameString(factory_->NewFromUtf8ReadOnly("SendableArrayBuffer"));
154 PropertyDescriptor desc(thread_, JSHandle<JSTaggedValue>::Cast(arrayBufferFunction), true, false, true);
164 JSHandle<JSTaggedValue> lengthGetter =
167 JSHandle<JSObject>(arrayBufferPrototype), fieldIndex++, lengthGetter, globalConst->GetHandledUndefined());
170 JSHandle<JSTaggedValue> strTag(factory_->NewFromUtf8ReadOnly("SendableArrayBuffer"));
175 JSHandle<JSTaggedValue> speciesGetter =
178 JSHandle<JSObject>(arrayBufferFunction), fieldIndex++, speciesGetter, globalConst->GetHandledUndefined());
182 SetSFunction(env, JSHandle<JSObject>(arrayBufferFunction), entry.GetName(), entry.GetEntrypoint(), fieldIndex++,
190 void Builtins::InitializeSSet(const JSHandle<GlobalEnv> &env, const JSHandle<JSObject> &sObjPrototype,
191 const JSHandle<JSFunction> &sFuncPrototype) const
196 JSHandle<JSHClass> setPrototypeHClass = CreateSSetPrototypeHClass(sObjPrototype);
197 JSHandle<JSObject> setPrototype =
200 JSHandle<JSTaggedValue> setPrototypeValue(setPrototype);
203 JSHandle<JSHClass> setIHClass =
206 JSHandle<JSHClass> setFuncHClass = CreateSSetFunctionHClass(sFuncPrototype);
208 JSHandle<JSFunction> setFunction =
213 JSHandle<JSObject> globalObject(thread_, env->GetGlobalObject());
214 JSHandle<JSTaggedValue> nameString(factory_->NewFromUtf8ReadOnly("SendableSet"));
215 PropertyDescriptor desc(thread_, JSHandle<JSTaggedValue>::Cast(setFunction), true, false, true);
229 JSHandle<JSTaggedValue> keys(factory_->NewFromASCIIReadOnly("keys"));
230 JSHandle<JSTaggedValue> values(factory_->NewFromASCIIReadOnly("values"));
231 JSHandle<JSTaggedValue> valuesFunc =
232 JSObject::GetMethod(thread_, JSHandle<JSTaggedValue>::Cast(setPrototype), values);
237 JSHandle<JSTaggedValue> strTag(factory_->NewFromUtf8ReadOnly("SendableSet"));
241 JSHandle<JSTaggedValue> sizeGetter = CreateSGetterSetter(env, BuiltinsSharedSet::GetSize, "size",
250 JSHandle<JSTaggedValue> speciesGetter =
252 SetSAccessor(JSHandle<JSObject>(setFunction), fieldIndex, speciesGetter, globalConst->GetHandledUndefined());
258 void Builtins::InitializeSMap(const JSHandle<GlobalEnv> &env, const JSHandle<JSObject> &sObjPrototype,
259 const JSHandle<JSFunction> &sFuncPrototype) const
264 JSHandle<JSHClass> mapPrototypeHClass = CreateSMapPrototypeHClass(sObjPrototype);
265 JSHandle<JSObject> mapPrototype =
267 JSHandle<JSTaggedValue> mapPrototypeValue(mapPrototype);
270 JSHandle<JSHClass> mapIHClass =
273 JSHandle<JSHClass> mapFuncHClass = CreateSMapFunctionHClass(sFuncPrototype);
275 JSHandle<JSFunction> mapFunction =
279 JSHandle<JSObject> globalObject(thread_, env->GetGlobalObject());
280 JSHandle<JSTaggedValue> nameString(factory_->NewFromUtf8ReadOnly("SendableMap"));
281 PropertyDescriptor desc(thread_, JSHandle<JSTaggedValue>::Cast(mapFunction), true, false, true);
294 JSHandle<JSTaggedValue> strTag(factory_->NewFromUtf8ReadOnly("SendableMap"));
298 JSHandle<JSTaggedValue> sizeGetter = CreateSGetterSetter(env, BuiltinsSharedMap::GetSize, "size",
303 JSHandle<JSTaggedValue> entries(factory_->NewFromASCIIReadOnly("entries"));
304 JSHandle<JSTaggedValue> entriesFunc =
305 JSObject::GetMethod(thread_, JSHandle<JSTaggedValue>::Cast(mapPrototype), entries);
311 JSHandle<JSTaggedValue> speciesGetter =
313 SetSAccessor(JSHandle<JSObject>(mapFunction), fieldIndex, speciesGetter, globalConst->GetHandledUndefined());
319 void Builtins::InitializeSModuleNamespace(const JSHandle<GlobalEnv> &env, const JSHandle<JSHClass> &sObjIHClass) const
323 JSHandle<JSObject> moduleNamespacePrototype = factory_->NewSharedOldSpaceJSObjectWithInit(sObjIHClass);
324 JSHandle<JSTaggedValue> moduleNamespacePrototypeValue(moduleNamespacePrototype);
329 JSHandle<JSHClass> moduleNamespaceHClass = factory_->NewSEcmaHClass(ModuleNamespace::SIZE, 0,
338 void Builtins::InitializeSAsyncFunction(const JSHandle<GlobalEnv> &env,
339 const JSHandle<JSHClass> &sObjIHClass) const
342 JSHandle<JSObject> sAsyncFuncPrototype = factory_->NewSharedOldSpaceJSObjectWithInit(sObjIHClass);
346 JSHandle<JSHClass> sAsyncFuncIHClass = factory_->NewSEcmaHClass(JSAsyncFunction::SIZE, 0,
347 JSType::JS_SHARED_ASYNC_FUNCTION, JSHandle<JSTaggedValue>(sAsyncFuncPrototype), emptySLayout);
349 JSHandle<JSFunction> sAsyncFuncFunction = factory_->NewSFunctionByHClass(
352 JSObject::SetPrototype(thread_, JSHandle<JSObject>(sAsyncFuncFunction), env->GetSFunctionFunction());
356 JSHandle<JSTaggedValue> sAsyncFuncPrototypeVal(thread_, sAsyncFuncPrototype.GetTaggedValue());
357 JSHandle<JSHClass> sAsyncFuncClass = factory_->CreateSFunctionClass(
362 void Builtins::InitializeSFunction(const JSHandle<GlobalEnv> &env,
363 const JSHandle<JSFunction> &sFuncPrototype) const
370 JSHandle<JSHClass> sFuncIHClass = factory_->NewSEcmaHClass(JSSharedFunction::SIZE, 0, JSType::JS_SHARED_FUNCTION,
371 JSHandle<JSTaggedValue>(sFuncPrototype), emptySLayout);
375 JSHandle<JSHClass> sFuncHClass = CreateSFunctionHClass(sFuncPrototype);
377 JSHandle<JSFunction> sFuncFunction = factory_->NewSFunctionByHClass(
384 JSHandle<JSTaggedValue> sFuncPrototypeVal(sFuncPrototype);
385 JSHandle<JSHClass> functionClass =
389 JSHandle<JSHClass> functionClassWithProto =
394 JSHandle<JSHClass> functionClassWithoutAccessor =
399 JSHandle<JSObject> sFuncPrototypeObj(sFuncPrototype);
417 JSHandle<JSHClass> Builtins::CreateSObjectFunctionHClass(const JSHandle<JSFunction> &sFuncPrototype) const
425 JSHandle<LayoutInfo> layout = factory_->CreateSLayoutInfo(length);
429 JSHandle<JSTaggedValue> keyString(factory_->NewFromUtf8ReadOnly(each.first));
432 JSHandle<JSHClass> sobjPrototypeHClass =
434 JSHandle<JSTaggedValue>(sFuncPrototype), JSHandle<JSTaggedValue>(layout));
440 JSHandle<JSHClass> Builtins::CreateSObjectPrototypeHClass() const
443 JSHandle<JSTaggedValue> nullHandle = globalConst->GetHandledNull();
451 JSHandle<LayoutInfo> layout = factory_->CreateSLayoutInfo(length);
455 JSHandle<JSTaggedValue> keyString(factory_->NewFromUtf8ReadOnly(each.first));
459 JSHandle<JSHClass> sobjPrototypeHClass =
461 JSHandle<JSTaggedValue>(layout));
465 JSHandle<JSHClass> Builtins::CreateSFunctionHClass(const JSHandle<JSFunction> &sFuncPrototype) const
473 JSHandle<LayoutInfo> layout = factory_->CreateSLayoutInfo(length);
477 JSHandle<JSTaggedValue> keyString(factory_->NewFromUtf8ReadOnly(each.GetName()));
480 JSHandle<JSHClass> sobjPrototypeHClass =
482 JSHandle<JSTaggedValue>(sFuncPrototype), JSHandle<JSTaggedValue>(layout));
488 JSHandle<JSHClass> Builtins::CreateSArrayBufferFunctionHClass(const JSHandle<JSFunction> &sFuncPrototype) const
497 JSHandle<JSTaggedValue> keyString;
498 JSHandle<LayoutInfo> layout = factory_->CreateSLayoutInfo(length);
505 keyString = JSHandle<JSTaggedValue>(factory_->NewFromUtf8ReadOnly(key));
509 JSHandle<JSHClass> sobjPrototypeHClass =
511 JSHandle<JSTaggedValue>(sFuncPrototype), JSHandle<JSTaggedValue>(layout));
517 JSHandle<JSHClass> Builtins::CreateSSetFunctionHClass(const JSHandle<JSFunction> &sFuncPrototype) const
526 JSHandle<JSTaggedValue> keyString;
527 JSHandle<LayoutInfo> layout = factory_->CreateSLayoutInfo(length);
534 keyString = JSHandle<JSTaggedValue>(factory_->NewFromUtf8ReadOnly(key));
538 JSHandle<JSHClass> sobjPrototypeHClass =
540 JSHandle<JSTaggedValue>(sFuncPrototype), JSHandle<JSTaggedValue>(layout));
546 JSHandle<JSHClass> Builtins::CreateSMapFunctionHClass(const JSHandle<JSFunction> &sFuncPrototype) const
555 JSHandle<JSTaggedValue> keyString;
556 JSHandle<LayoutInfo> layout = factory_->CreateSLayoutInfo(length);
563 keyString = JSHandle<JSTaggedValue>(factory_->NewFromUtf8ReadOnly(key));
567 JSHandle<JSHClass> sobjPrototypeHClass =
569 JSHandle<JSTaggedValue>(sFuncPrototype), JSHandle<JSTaggedValue>(layout));
575 JSHandle<JSHClass> Builtins::CreateSFunctionPrototypeHClass(const JSHandle<JSTaggedValue> &sObjPrototypeVal) const
584 JSHandle<LayoutInfo> layout = factory_->CreateSLayoutInfo(length);
585 JSHandle<JSTaggedValue> keyString;
592 keyString = JSHandle<JSTaggedValue>(factory_->NewFromUtf8ReadOnly(each.GetName()));
596 JSHandle<JSHClass> sobjPrototypeHClass =
598 JSHandle<JSTaggedValue>(layout));
603 JSHandle<JSHClass> Builtins::CreateSArrayBufferPrototypeHClass(const JSHandle<JSObject> &sObjPrototype) const
613 JSHandle<LayoutInfo> layout = factory_->CreateSLayoutInfo(length);
614 JSHandle<JSTaggedValue> keyString;
621 keyString = JSHandle<JSTaggedValue>(factory_->NewFromUtf8ReadOnly(key));
625 JSHandle<JSHClass> sArrayBufferPrototypeHClass =
627 JSHandle<JSTaggedValue>(sObjPrototype),
628 JSHandle<JSTaggedValue>(layout));
632 JSHandle<JSHClass> Builtins::CreateSSetPrototypeHClass(const JSHandle<JSObject> &sObjPrototype) const
642 JSHandle<LayoutInfo> layout = factory_->CreateSLayoutInfo(length);
643 JSHandle<JSTaggedValue> keyString;
652 keyString = JSHandle<JSTaggedValue>(factory_->NewFromUtf8ReadOnly(key));
656 JSHandle<JSHClass> sSetPrototypeHClass =
658 JSHandle<JSTaggedValue>(sObjPrototype),
659 JSHandle<JSTaggedValue>(layout));
663 JSHandle<JSHClass> Builtins::CreateSMapPrototypeHClass(const JSHandle<JSObject> &sObjPrototype) const
673 JSHandle<LayoutInfo> layout = factory_->CreateSLayoutInfo(length);
674 JSHandle<JSTaggedValue> keyString;
683 keyString = JSHandle<JSTaggedValue>(factory_->NewFromUtf8ReadOnly(key));
687 JSHandle<JSHClass> sMapPrototypeHClass =
689 JSHandle<JSTaggedValue>(sObjPrototype),
690 JSHandle<JSTaggedValue>(layout));
694 JSHandle<JSHClass> Builtins::CreateSArrayPrototypeHClass(const JSHandle<JSObject> &sObjPrototype) const
704 JSHandle<LayoutInfo> layout = factory_->CreateSLayoutInfo(length);
705 JSHandle<JSTaggedValue> keyString;
714 keyString = JSHandle<JSTaggedValue>(factory_->NewFromUtf8ReadOnly(key));
718 JSHandle<JSHClass> sArrayPrototypeHClass =
720 JSHandle<JSTaggedValue>(sObjPrototype),
721 JSHandle<JSTaggedValue>(layout));
725 JSHandle<JSHClass> Builtins::CreateSArrayFunctionHClass(const JSHandle<JSFunction> &sFuncPrototype) const
734 JSHandle<JSTaggedValue> keyString;
735 JSHandle<LayoutInfo> layout = factory_->CreateSLayoutInfo(length);
743 keyString = JSHandle<JSTaggedValue>(factory_->NewFromUtf8ReadOnly(key));
747 JSHandle<JSHClass> sobjPrototypeHClass =
749 JSHandle<JSTaggedValue>(sFuncPrototype), JSHandle<JSTaggedValue>(layout));
755 void Builtins::SetSFunctionName(const JSHandle<JSFunction> &ctor, std::string_view name) const
757 JSHandle<JSTaggedValue> nameString(factory_->NewFromUtf8ReadOnly(name));
761 void Builtins::SetSFunctionName(const JSHandle<JSFunction> &ctor, const JSHandle<JSTaggedValue> &name) const
767 void Builtins::SetSFunctionLength(const JSHandle<JSFunction> &ctor, int length) const
774 void Builtins::SetSFunctionPrototype(const JSHandle<JSFunction> &ctor, const JSTaggedValue &prototype) const
780 void Builtins::InitializeSCtor(const JSHandle<JSHClass> &protoHClass, const JSHandle<JSFunction> &ctor,
789 JSHandle<JSFunction> Builtins::NewSFunction(const JSHandle<GlobalEnv> &env, const JSHandle<JSTaggedValue> &key,
793 JSHandle<JSHClass> hclass = JSHandle<JSHClass>::Cast(env->GetSFunctionClassWithoutAccessor());
794 JSHandle<JSFunction> function = factory_->NewSFunctionByHClass(reinterpret_cast<void *>(func),
802 void Builtins::SetSFunction(const JSHandle<GlobalEnv> &env, const JSHandle<JSObject> &obj, std::string_view key,
806 JSHandle<JSTaggedValue> keyString(factory_->NewFromUtf8ReadOnly(key));
810 void Builtins::SetSFunction(const JSHandle<GlobalEnv> &env, const JSHandle<JSObject> &obj,
811 const JSHandle<JSTaggedValue> &key, EcmaEntrypoint func, uint32_t index, int length,
814 JSHandle<JSFunction> function(NewSFunction(env, key, func, length, builtinId));
818 void Builtins::SetSAccessor(const JSHandle<JSObject> &obj, uint32_t index,
819 const JSHandle<JSTaggedValue> &getter, const JSHandle<JSTaggedValue> &setter) const
821 JSHandle<AccessorData> accessor = factory_->NewSAccessorData();
827 JSHandle<JSTaggedValue> Builtins::CreateSGetterSetter(const JSHandle<GlobalEnv> &env, EcmaEntrypoint func,
830 JSHandle<JSTaggedValue> funcName(factory_->NewFromUtf8ReadOnly(name));
831 JSHandle<JSFunction> function = NewSFunction(env, funcName, func, length);
832 return JSHandle<JSTaggedValue>(function);
835 void Builtins::SharedStrictModeForbiddenAccessCallerArguments(const JSHandle<GlobalEnv> &env, uint32_t &index,
836 const JSHandle<JSObject> &prototype) const
838 JSHandle<JSHClass> hclass = JSHandle<JSHClass>::Cast(env->GetSFunctionClassWithoutProto());
839 JSHandle<JSFunction> func =
844 SetSAccessor(prototype, index++, JSHandle<JSTaggedValue>(func), JSHandle<JSTaggedValue>(func));
846 SetSAccessor(prototype, index++, JSHandle<JSTaggedValue>(func), JSHandle<JSTaggedValue>(func));
849 void Builtins::InitializeSSymbolAttributes(const JSHandle<GlobalEnv> &env)
851 JSHandle<JSTaggedValue> hasInstanceSymbol(
853 JSHandle<JSTaggedValue> isConcatSpreadableSymbol(
855 JSHandle<JSTaggedValue> toStringTagSymbol(
857 JSHandle<JSTaggedValue> asyncIteratorSymbol(
859 JSHandle<JSTaggedValue> matchSymbol(
861 JSHandle<JSTaggedValue> searchSymbol(
863 JSHandle<JSTaggedValue> toPrimitiveSymbol(
865 JSHandle<JSTaggedValue> unscopablesSymbol(
867 JSHandle<JSTaggedValue> nativeBindingSymbol(
877 [[maybe_unused]] JSHandle<EcmaString> string = factory_->NewFromUtf8ReadOnly(description); \
883 JSHandle<JSSymbol> key##Symbol = factory_->NewSEmptySymbol(); \
884 JSHandle<EcmaString> key##String = factory_->NewFromUtf8ReadOnly(description); \
896 JSHandle<JSObject> Builtins::InitializeArrayPrototype(JSHandle<JSHClass> &arrBaseFuncInstanceHClass) const
898 JSHandle<JSObject> arrFuncPrototype = factory_->NewSharedOldSpaceJSObjectWithInit(arrBaseFuncInstanceHClass);
906 JSHandle<JSHClass> Builtins::InitializeArrayPrototypeHClass(const JSHandle<JSObject> &arrFuncPrototype) const
908 JSHandle<JSTaggedValue> arrFuncPrototypeValue(arrFuncPrototype);
909 JSHandle<LayoutInfo> layout = factory_->CreateSLayoutInfo(1);
915 JSHandle<JSHClass> arrFuncInstanceHClass = factory_->NewSEcmaHClass(
916 JSSharedArray::SIZE, 1, JSType::JS_SHARED_ARRAY, arrFuncPrototypeValue, JSHandle<JSTaggedValue>::Cast(layout));
921 void Builtins::InitializeSharedArray(const JSHandle<GlobalEnv> &env, const JSHandle<JSObject> &sObjIHClass,
922 JSHandle<JSFunction> &sFuncPrototype) const
927 JSHandle<JSHClass> arrBaseFuncInstanceHClass = CreateSArrayPrototypeHClass(sObjIHClass);
930 JSHandle<JSObject> arrFuncPrototype = InitializeArrayPrototype(arrBaseFuncInstanceHClass);
932 JSHandle<JSHClass> arrFuncInstanceHClass = InitializeArrayPrototypeHClass(arrFuncPrototype);
936 JSHandle<JSHClass> arrayFuncHClass = CreateSArrayFunctionHClass(sFuncPrototype);
939 JSHandle<JSFunction> arrayFunction =
946 JSHandle<JSObject> globalObject(thread_, env->GetGlobalObject());
947 JSHandle<JSTaggedValue> nameString(factory_->NewFromUtf8ReadOnly("SendableArray"));
948 PropertyDescriptor desc(thread_, JSHandle<JSTaggedValue>::Cast(arrayFunction), false, false, false);
957 JSHandle<JSTaggedValue> values(factory_->NewFromASCIIReadOnly("values"));
958 JSHandle<JSTaggedValue> valuesFunc =
959 JSObject::GetMethod(thread_, JSHandle<JSTaggedValue>::Cast(arrFuncPrototype), values);
963 SetSFunction(env, JSHandle<JSObject>(arrayFunction), entry.GetName(), entry.GetEntrypoint(), funcFieldIndex++,
971 JSHandle<JSTaggedValue> speciesGetter =
973 SetSAccessor(JSHandle<JSObject>(arrayFunction), funcFieldIndex++, speciesGetter,
977 JSHandle<JSTaggedValue> unscopablesGetter =
979 SetSAccessor(JSHandle<JSObject>(arrFuncPrototype), protoFieldIndex++, unscopablesGetter,
988 void Builtins::InitializeS##Type(const JSHandle<GlobalEnv> &env, const JSHandle<JSHClass> &arrFuncClass) const \
994 JSHandle<JSObject> arrFuncPrototype = factory_->NewSharedOldSpaceJSObjectWithInit(arrFuncClass); \
995 JSHandle<JSTaggedValue> arrFuncPrototypeValue(arrFuncPrototype); \
997 JSHandle<JSHClass> arrFuncInstanceHClass = factory_->NewSEcmaHClass( \
999 JSHandle<JSHClass> arrFuncInstanceHClassOnHeap = factory_->NewSEcmaHClass( \
1004 JSHandle<JSHClass> specificTypedArrayFuncClass = JSHandle<JSHClass>::Cast( \
1006 JSHandle<JSFunction> arrayFunction = factory_->NewSFunctionByHClass( \
1010 JSHandle<JSObject> globalObject(thread_, env->GetGlobalObject()); \
1011 JSHandle<JSTaggedValue> nameString(factory_->NewFromUtf8ReadOnly(#sendableName)); \
1012 PropertyDescriptor desc(thread_, JSHandle<JSTaggedValue>::Cast(arrayFunction), false, false, false); \
1020 JSHandle<JSObject>(arrayFunction)->SetPropertyInlinedProps(thread_, fieldIndex, \
1031 void Builtins::InitializeSTypedArray(const JSHandle<GlobalEnv> &env, const JSHandle<JSObject> &sObjPrototype,
1032 const JSHandle<JSFunction> &sFuncPrototype) const
1037 JSHandle<JSHClass> typedArrFuncPrototypeHClass = CreateSTypedArrayPrototypeHClass(sObjPrototype);
1038 JSHandle<JSObject> typedArrFuncPrototype = factory_->NewSharedOldSpaceJSObjectWithInit(typedArrFuncPrototypeHClass);
1039 JSHandle<JSTaggedValue> typedArrFuncPrototypeValue(typedArrFuncPrototype);
1042 JSHandle<JSHClass> typedArrFuncInstanceHClass = CreateSSpecificTypedArrayInstanceHClass(
1045 JSHandle<JSHClass> typedArrFuncHClass = CreateSTypedArrayFunctionHClass(sFuncPrototype);
1047 JSHandle<JSFunction> typedArrayFunction =
1063 JSHandle<JSTaggedValue> getter = CreateSGetterSetter(env, entry.GetEntrypoint(),
1069 JSHandle<JSTaggedValue> values(factory_->NewFromASCIIReadOnly("values"));
1070 JSHandle<JSTaggedValue> valuesFunc =
1071 JSObject::GetMethod(thread_, JSHandle<JSTaggedValue>::Cast(typedArrFuncPrototype), values);
1076 JSHandle<JSTaggedValue> toStringTagGetter =
1083 SetSFunction(env, JSHandle<JSObject>(typedArrayFunction), entry.GetName(), entry.GetEntrypoint(),
1088 JSHandle<JSTaggedValue> speciesGetter =
1090 SetSAccessor(JSHandle<JSObject>(typedArrayFunction), funcFieldIndex++, speciesGetter,
1096 JSHandle<JSHClass> specificTypedArrayFuncClass = CreateSSpecificTypedArrayFuncHClass(typedArrayFunction);
1105 JSHandle<JSHClass> Builtins::CreateSTypedArrayPrototypeHClass(const JSHandle<JSObject> &sObjPrototype) const
1115 JSHandle<LayoutInfo> layout = factory_->CreateSLayoutInfo(length);
1116 JSHandle<JSTaggedValue> keyString;
1125 keyString = JSHandle<JSTaggedValue>(factory_->NewFromUtf8ReadOnly(key));
1129 JSHandle<JSHClass> sTypedArrayPrototypeHClass =
1131 JSHandle<JSTaggedValue>(sObjPrototype),
1132 JSHandle<JSTaggedValue>(layout));
1136 JSHandle<JSHClass> Builtins::CreateSTypedArrayFunctionHClass(const JSHandle<JSFunction> &sFuncPrototype) const
1145 JSHandle<JSTaggedValue> keyString;
1146 JSHandle<LayoutInfo> layout = factory_->CreateSLayoutInfo(length);
1153 keyString = JSHandle<JSTaggedValue>(factory_->NewFromUtf8ReadOnly(key));
1157 JSHandle<JSHClass> sobjPrototypeHClass =
1159 JSHandle<JSTaggedValue>(sFuncPrototype), JSHandle<JSTaggedValue>(layout));
1165 JSHandle<JSHClass> Builtins::CreateSSpecificTypedArrayFuncHClass(const JSHandle<JSFunction> &sFuncPrototype) const
1173 JSHandle<JSTaggedValue> keyString;
1174 JSHandle<LayoutInfo> layout = factory_->CreateSLayoutInfo(length);
1178 keyString = JSHandle<JSTaggedValue>(factory_->NewFromUtf8ReadOnly(key));
1181 JSHandle<JSHClass> sobjPrototypeHClass =
1183 JSHandle<JSTaggedValue>(sFuncPrototype), JSHandle<JSTaggedValue>(layout));
1189 JSHandle<JSHClass> Builtins::CreateSSpecificTypedArrayInstanceHClass(const JSHandle<JSObject> &sObjPrototype) const
1197 JSHandle<LayoutInfo> layout = factory_->CreateSLayoutInfo(length);
1198 JSHandle<JSTaggedValue> keyString;
1202 keyString = JSHandle<JSTaggedValue>(factory_->NewFromUtf8ReadOnly(key));
1205 JSHandle<JSHClass> sSpecificTypedArrayPrototypeHClass =
1207 JSHandle<JSTaggedValue>(sObjPrototype),
1208 JSHandle<JSTaggedValue>(layout));