• Home
  • Raw
  • Download

Lines Matching full:vm

213 Local<PrimitiveRef> JSValueRef::Undefined(const EcmaVM *vm)  in Undefined()  argument
216 vm->GetJSThread()->GlobalConstants()->GetHandledUndefined()); in Undefined()
219 Local<PrimitiveRef> JSValueRef::Null(const EcmaVM *vm) in Null() argument
222 vm->GetJSThread()->GlobalConstants()->GetHandledNull()); in Null()
225 Local<PrimitiveRef> JSValueRef::Hole(const EcmaVM *vm) in Hole() argument
228 vm->GetJSThread()->GlobalConstants()->GetHandledHole()); in Hole()
231 Local<PrimitiveRef> JSValueRef::True(const EcmaVM *vm) in True() argument
234 vm->GetJSThread()->GlobalConstants()->GetHandledTrue()); in True()
237 Local<PrimitiveRef> JSValueRef::False(const EcmaVM *vm) in False() argument
240 vm->GetJSThread()->GlobalConstants()->GetHandledFalse()); in False()
243 Local<ObjectRef> JSValueRef::ToObject(const EcmaVM *vm) in ToObject() argument
245 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in ToObject()
247 return Undefined(vm); in ToObject()
252 RETURN_VALUE_IF_ABRUPT(thread, JSValueRef::Undefined(vm)); in ToObject()
256 Local<ObjectRef> JSValueRef::ToEcmaObject(const EcmaVM *vm) in ToEcmaObject() argument
258 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in ToEcmaObject()
263 RETURN_VALUE_IF_ABRUPT(thread, JSValueRef::Undefined(vm)); in ToEcmaObject()
267 return Undefined(vm); in ToEcmaObject()
270 Local<ObjectRef> JSValueRef::ToEcmaObjectWithoutSwitchState(const EcmaVM *vm) in ToEcmaObjectWithoutSwitchState() argument
272 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in ToEcmaObjectWithoutSwitchState()
275 RETURN_VALUE_IF_ABRUPT(thread, JSValueRef::Undefined(vm)); in ToEcmaObjectWithoutSwitchState()
279 Local<StringRef> JSValueRef::ToString(const EcmaVM *vm) in ToString() argument
281 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in ToString()
287 RETURN_VALUE_IF_ABRUPT(thread, JSValueRef::Undefined(vm)); in ToString()
292 Local<NativePointerRef> JSValueRef::ToNativePointer(const EcmaVM *vm) in ToNativePointer() argument
294 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in ToNativePointer()
302 bool JSValueRef::BooleaValue(const EcmaVM *vm) in BooleaValue() argument
304 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in BooleaValue()
308 int64_t JSValueRef::IntegerValue(const EcmaVM *vm) in IntegerValue() argument
310 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, 0); in IntegerValue()
326 uint32_t JSValueRef::Uint32Value(const EcmaVM *vm) in Uint32Value() argument
328 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, 0); in Uint32Value()
342 int32_t JSValueRef::Int32Value(const EcmaVM *vm) in Int32Value() argument
344 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, 0); in Int32Value()
428 Local<BooleanRef> JSValueRef::ToBoolean(const EcmaVM *vm) in ToBoolean() argument
430 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in ToBoolean()
438 Local<BigIntRef> JSValueRef::ToBigInt(const EcmaVM *vm) in ToBigInt() argument
440 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in ToBigInt()
445 RETURN_VALUE_IF_ABRUPT(thread, JSValueRef::Undefined(vm)); in ToBigInt()
449 Local<NumberRef> JSValueRef::ToNumber(const EcmaVM *vm) in ToNumber() argument
451 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in ToNumber()
456 RETURN_VALUE_IF_ABRUPT(thread, JSValueRef::Undefined(vm)); in ToNumber()
460 bool JSValueRef::IsStrictEquals(const EcmaVM *vm, Local<JSValueRef> value) in IsStrictEquals() argument
462 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, false); in IsStrictEquals()
470 Local<StringRef> JSValueRef::Typeof(const EcmaVM *vm) in Typeof() argument
472 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in Typeof()
478 bool JSValueRef::InstanceOf(const EcmaVM *vm, Local<JSValueRef> value) in InstanceOf() argument
480 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, false); in InstanceOf()
520 bool JSValueRef::IsBigInt(const EcmaVM *vm) in IsBigInt() argument
522 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsBigInt()
541 bool JSValueRef::IsString(const EcmaVM *vm) in IsString() argument
543 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsString()
547 bool JSValueRef::IsStringWithoutSwitchState(const EcmaVM *vm) in IsStringWithoutSwitchState() argument
549 CROSS_THREAD_CHECK(vm); in IsStringWithoutSwitchState()
553 bool JSValueRef::IsSymbol(const EcmaVM *vm) in IsSymbol() argument
555 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsSymbol()
559 bool JSValueRef::IsObject(const EcmaVM *vm) in IsObject() argument
561 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsObject()
565 bool JSValueRef::IsObjectWithoutSwitchState(const EcmaVM *vm) in IsObjectWithoutSwitchState() argument
567 CROSS_THREAD_CHECK(vm); in IsObjectWithoutSwitchState()
571 bool JSValueRef::IsNativeBindingObject(const EcmaVM *vm) in IsNativeBindingObject() argument
573 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsNativeBindingObject()
582 bool JSValueRef::IsArray(const EcmaVM *vm) in IsArray() argument
584 CROSS_THREAD_CHECK(vm); in IsArray()
585 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsArray()
589 bool JSValueRef::IsJSArray(const EcmaVM *vm) in IsJSArray() argument
591 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsJSArray()
595 bool JSValueRef::IsConstructor(const EcmaVM *vm) in IsConstructor() argument
597 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsConstructor()
602 bool JSValueRef::IsFunction(const EcmaVM *vm) in IsFunction() argument
604 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsFunction()
609 bool JSValueRef::IsJSFunction(const EcmaVM *vm) in IsJSFunction() argument
611 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsJSFunction()
616 bool JSValueRef::IsProxy(const EcmaVM *vm) in IsProxy() argument
618 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsProxy()
622 bool JSValueRef::IsPromise(const EcmaVM *vm) in IsPromise() argument
624 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsPromise()
628 bool JSValueRef::IsDataView(const EcmaVM *vm) in IsDataView() argument
630 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsDataView()
634 bool JSValueRef::IsTypedArray(const EcmaVM *vm) in IsTypedArray() argument
636 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsTypedArray()
640 bool JSValueRef::IsNativePointer(const EcmaVM *vm) in IsNativePointer() argument
642 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsNativePointer()
646 bool JSValueRef::IsDate(const EcmaVM *vm) in IsDate() argument
648 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsDate()
652 bool JSValueRef::IsError(const EcmaVM *vm) in IsError() argument
654 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsError()
658 bool JSValueRef::IsMap(const EcmaVM *vm) in IsMap() argument
660 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsMap()
664 bool JSValueRef::IsSet(const EcmaVM *vm) in IsSet() argument
666 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsSet()
670 bool JSValueRef::IsWeakRef(const EcmaVM *vm) in IsWeakRef() argument
672 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsWeakRef()
676 bool JSValueRef::IsWeakMap(const EcmaVM *vm) in IsWeakMap() argument
678 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsWeakMap()
682 bool JSValueRef::IsWeakSet(const EcmaVM *vm) in IsWeakSet() argument
684 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsWeakSet()
688 bool JSValueRef::IsRegExp(const EcmaVM *vm) in IsRegExp() argument
690 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsRegExp()
694 bool JSValueRef::IsArrayIterator(const EcmaVM *vm) in IsArrayIterator() argument
696 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsArrayIterator()
700 bool JSValueRef::IsStringIterator(const EcmaVM *vm) in IsStringIterator() argument
702 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsStringIterator()
706 bool JSValueRef::IsSetIterator(const EcmaVM *vm) in IsSetIterator() argument
708 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsSetIterator()
712 bool JSValueRef::IsMapIterator(const EcmaVM *vm) in IsMapIterator() argument
714 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsMapIterator()
718 bool JSValueRef::IsArrayBuffer(const EcmaVM *vm) in IsArrayBuffer() argument
720 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsArrayBuffer()
724 bool JSValueRef::IsBuffer(const EcmaVM *vm) in IsBuffer() argument
726 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsBuffer()
730 bool JSValueRef::IsUint8Array(const EcmaVM *vm) in IsUint8Array() argument
732 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsUint8Array()
736 bool JSValueRef::IsInt8Array(const EcmaVM *vm) in IsInt8Array() argument
738 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsInt8Array()
742 bool JSValueRef::IsUint8ClampedArray(const EcmaVM *vm) in IsUint8ClampedArray() argument
744 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsUint8ClampedArray()
748 bool JSValueRef::IsInt16Array(const EcmaVM *vm) in IsInt16Array() argument
750 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsInt16Array()
754 bool JSValueRef::IsUint16Array(const EcmaVM *vm) in IsUint16Array() argument
756 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsUint16Array()
760 bool JSValueRef::IsInt32Array(const EcmaVM *vm) in IsInt32Array() argument
762 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsInt32Array()
766 bool JSValueRef::IsUint32Array(const EcmaVM *vm) in IsUint32Array() argument
768 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsUint32Array()
772 bool JSValueRef::IsFloat32Array(const EcmaVM *vm) in IsFloat32Array() argument
774 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsFloat32Array()
778 bool JSValueRef::IsFloat64Array(const EcmaVM *vm) in IsFloat64Array() argument
780 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsFloat64Array()
784 bool JSValueRef::IsBigInt64Array(const EcmaVM *vm) in IsBigInt64Array() argument
786 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsBigInt64Array()
790 bool JSValueRef::IsBigUint64Array(const EcmaVM *vm) in IsBigUint64Array() argument
792 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsBigUint64Array()
796 bool JSValueRef::IsJSSharedInt8Array(const EcmaVM *vm) in IsJSSharedInt8Array() argument
798 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsJSSharedInt8Array()
802 bool JSValueRef::IsJSSharedUint8Array([[maybe_unused]]const EcmaVM *vm) in IsJSSharedUint8Array() argument
804 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsJSSharedUint8Array()
808 bool JSValueRef::IsJSSharedUint8ClampedArray([[maybe_unused]]const EcmaVM *vm) in IsJSSharedUint8ClampedArray() argument
810 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsJSSharedUint8ClampedArray()
814 bool JSValueRef::IsJSSharedInt16Array(const EcmaVM *vm) in IsJSSharedInt16Array() argument
816 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsJSSharedInt16Array()
820 bool JSValueRef::IsJSSharedUint16Array(const EcmaVM *vm) in IsJSSharedUint16Array() argument
822 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsJSSharedUint16Array()
826 bool JSValueRef::IsJSSharedInt32Array(const EcmaVM *vm) in IsJSSharedInt32Array() argument
828 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsJSSharedInt32Array()
832 bool JSValueRef::IsJSSharedFloat32Array(const EcmaVM *vm) in IsJSSharedFloat32Array() argument
834 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsJSSharedFloat32Array()
838 bool JSValueRef::IsJSSharedUint32Array(const EcmaVM *vm) in IsJSSharedUint32Array() argument
840 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsJSSharedUint32Array()
844 bool JSValueRef::IsJSPrimitiveRef(const EcmaVM *vm) in IsJSPrimitiveRef() argument
846 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsJSPrimitiveRef()
850 bool JSValueRef::IsJSPrimitiveNumber(const EcmaVM *vm) in IsJSPrimitiveNumber() argument
852 JSThread *thread = vm->GetJSThread(); in IsJSPrimitiveNumber()
856 …return IsJSPrimitiveRef(vm) ? JSPrimitiveRef::Cast(obj->GetTaggedObject())->IsNumber(thread) : fal… in IsJSPrimitiveNumber()
859 bool JSValueRef::IsJSPrimitiveInt(const EcmaVM *vm) in IsJSPrimitiveInt() argument
861 JSThread *thread = vm->GetJSThread(); in IsJSPrimitiveInt()
865 … return IsJSPrimitiveRef(vm) ? JSPrimitiveRef::Cast(obj->GetTaggedObject())->IsInt(thread) : false; in IsJSPrimitiveInt()
868 bool JSValueRef::IsJSPrimitiveBoolean(const EcmaVM *vm) in IsJSPrimitiveBoolean() argument
870 JSThread *thread = vm->GetJSThread(); in IsJSPrimitiveBoolean()
874 …return IsJSPrimitiveRef(vm) ? JSPrimitiveRef::Cast(obj->GetTaggedObject())->IsBoolean(thread) : fa… in IsJSPrimitiveBoolean()
877 bool JSValueRef::IsJSPrimitiveString(const EcmaVM *vm) in IsJSPrimitiveString() argument
879 JSThread *thread = vm->GetJSThread(); in IsJSPrimitiveString()
883 …return IsJSPrimitiveRef(vm) ? JSPrimitiveRef::Cast(obj->GetTaggedObject())->IsString(thread) : fal… in IsJSPrimitiveString()
886 bool JSValueRef::IsJSPrimitiveSymbol(const EcmaVM *vm) in IsJSPrimitiveSymbol() argument
888 JSThread *thread = vm->GetJSThread(); in IsJSPrimitiveSymbol()
892 …return IsJSPrimitiveRef(vm) ? JSPrimitiveRef::Cast(obj->GetTaggedObject())->IsSymbol(thread) : fal… in IsJSPrimitiveSymbol()
895 bool JSValueRef::IsGeneratorObject(const EcmaVM *vm) in IsGeneratorObject() argument
897 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsGeneratorObject()
901 bool JSValueRef::IsModuleNamespaceObject(const EcmaVM *vm) in IsModuleNamespaceObject() argument
903 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsModuleNamespaceObject()
907 bool JSValueRef::IsNativeModuleFailureInfoObject(const EcmaVM *vm) in IsNativeModuleFailureInfoObject() argument
909 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsNativeModuleFailureInfoObject()
913 bool JSValueRef::IsSharedArrayBuffer(const EcmaVM *vm) in IsSharedArrayBuffer() argument
915 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsSharedArrayBuffer()
919 bool JSValueRef::IsSendableArrayBuffer(const EcmaVM *vm) in IsSendableArrayBuffer() argument
921 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsSendableArrayBuffer()
925 bool JSValueRef::IsJSLocale(const EcmaVM *vm) in IsJSLocale() argument
927 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsJSLocale()
931 bool JSValueRef::IsJSDateTimeFormat(const EcmaVM *vm) in IsJSDateTimeFormat() argument
933 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsJSDateTimeFormat()
937 bool JSValueRef::IsJSRelativeTimeFormat(const EcmaVM *vm) in IsJSRelativeTimeFormat() argument
939 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsJSRelativeTimeFormat()
943 bool JSValueRef::IsJSIntl(const EcmaVM *vm) in IsJSIntl() argument
945 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsJSIntl()
949 bool JSValueRef::IsJSNumberFormat(const EcmaVM *vm) in IsJSNumberFormat() argument
951 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsJSNumberFormat()
955 bool JSValueRef::IsJSCollator(const EcmaVM *vm) in IsJSCollator() argument
957 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsJSCollator()
961 bool JSValueRef::IsJSPluralRules(const EcmaVM *vm) in IsJSPluralRules() argument
963 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsJSPluralRules()
967 bool JSValueRef::IsJSListFormat(const EcmaVM *vm) in IsJSListFormat() argument
969 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsJSListFormat()
973 bool JSValueRef::IsAsyncGeneratorObject(const EcmaVM *vm) in IsAsyncGeneratorObject() argument
975 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsAsyncGeneratorObject()
979 bool JSValueRef::IsAsyncFunction(const EcmaVM *vm) in IsAsyncFunction() argument
981 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsAsyncFunction()
985 bool JSValueRef::IsConcurrentFunction(const EcmaVM *vm) in IsConcurrentFunction() argument
987 JSThread *thread = vm->GetJSThread(); in IsConcurrentFunction()
994 bool JSValueRef::IsArgumentsObject(const EcmaVM *vm) in IsArgumentsObject() argument
996 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsArgumentsObject()
1000 bool JSValueRef::IsGeneratorFunction(const EcmaVM *vm) in IsGeneratorFunction() argument
1002 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsGeneratorFunction()
1006 bool JSValueRef::IsAsyncGeneratorFunction(const EcmaVM *vm) in IsAsyncGeneratorFunction() argument
1008 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsAsyncGeneratorFunction()
1012 bool JSValueRef::IsArrayList(const EcmaVM *vm) in IsArrayList() argument
1014 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsArrayList()
1018 bool JSValueRef::IsDeque(const EcmaVM *vm) in IsDeque() argument
1020 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsDeque()
1024 bool JSValueRef::IsHashMap(const EcmaVM *vm) in IsHashMap() argument
1026 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsHashMap()
1030 bool JSValueRef::IsHashSet(const EcmaVM *vm) in IsHashSet() argument
1032 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsHashSet()
1036 bool JSValueRef::IsLightWeightMap(const EcmaVM *vm) in IsLightWeightMap() argument
1038 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsLightWeightMap()
1042 bool JSValueRef::IsLightWeightSet(const EcmaVM *vm) in IsLightWeightSet() argument
1044 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsLightWeightSet()
1048 bool JSValueRef::IsLinkedList(const EcmaVM *vm) in IsLinkedList() argument
1050 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsLinkedList()
1054 bool JSValueRef::IsLinkedListIterator(const EcmaVM *vm) in IsLinkedListIterator() argument
1056 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsLinkedListIterator()
1060 bool JSValueRef::IsList(const EcmaVM *vm) in IsList() argument
1062 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsList()
1066 bool JSValueRef::IsPlainArray(const EcmaVM *vm) in IsPlainArray() argument
1068 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsPlainArray()
1072 bool JSValueRef::IsQueue(const EcmaVM *vm) in IsQueue() argument
1074 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsQueue()
1078 bool JSValueRef::IsStack(const EcmaVM *vm) in IsStack() argument
1080 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsStack()
1084 bool JSValueRef::IsTreeMap(const EcmaVM *vm) in IsTreeMap() argument
1086 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsTreeMap()
1090 bool JSValueRef::IsTreeSet(const EcmaVM *vm) in IsTreeSet() argument
1092 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsTreeSet()
1096 bool JSValueRef::IsVector(const EcmaVM *vm) in IsVector() argument
1098 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsVector()
1102 bool JSValueRef::IsBitVector(const EcmaVM *vm) in IsBitVector() argument
1104 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsBitVector()
1108 bool JSValueRef::IsSendableObject(const EcmaVM *vm) in IsSendableObject() argument
1110 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsSendableObject()
1111 return IsJSShared(vm) && IsObject(vm); in IsSendableObject()
1114 bool JSValueRef::IsJSShared(const EcmaVM *vm) in IsJSShared() argument
1116 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsJSShared()
1120 bool JSValueRef::IsSharedArray(const EcmaVM *vm) in IsSharedArray() argument
1122 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsSharedArray()
1126 bool JSValueRef::IsSharedTypedArray(const EcmaVM *vm) in IsSharedTypedArray() argument
1128 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsSharedTypedArray()
1132 bool JSValueRef::IsSharedSet(const EcmaVM *vm) in IsSharedSet() argument
1134 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsSharedSet()
1138 bool JSValueRef::IsSharedMap(const EcmaVM *vm) in IsSharedMap() argument
1140 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsSharedMap()
1144 bool JSValueRef::IsSharedMapIterator(const EcmaVM *vm) in IsSharedMapIterator() argument
1146 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsSharedMapIterator()
1155 void *JSValueRef::GetNativePointerValue(const EcmaVM* vm, bool &isNativePointer) in GetNativePointerValue() argument
1157 return GetNativePointerValueImpl(vm, isNativePointer); in GetNativePointerValue()
1161 void *JSValueRef::GetNativePointerValueImpl(const EcmaVM* vm, bool &isNativePointer) in GetNativePointerValueImpl() argument
1163 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in GetNativePointerValueImpl()
1169 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, nullptr); in GetNativePointerValueImpl()
1174 bool JSValueRef::IsDetachedArraybuffer(const EcmaVM *vm, bool &isArrayBuffer) in IsDetachedArraybuffer() argument
1176 JSThread *thread = vm->GetJSThread(); in IsDetachedArraybuffer()
1179 if (!IsArrayBuffer(vm)) { in IsDetachedArraybuffer()
1188 void JSValueRef::DetachedArraybuffer(const EcmaVM *vm, bool &isArrayBuffer) in DetachedArraybuffer() argument
1190 auto thread = vm->GetJSThread(); in DetachedArraybuffer()
1192 if (IsArrayBuffer(vm)) { in DetachedArraybuffer()
1199 } else if (IsSendableArrayBuffer(vm)) { in DetachedArraybuffer()
1211 void JSValueRef::GetDataViewInfo(const EcmaVM *vm, in GetDataViewInfo() argument
1218 auto thread = vm->GetJSThread(); in GetDataViewInfo()
1220 if (!IsDataView(vm)) { in GetDataViewInfo()
1249 void JSValueRef::TryGetArrayLength(const EcmaVM *vm, bool *isPendingException, in TryGetArrayLength() argument
1252 JSThread *thread = vm->GetJSThread(); in TryGetArrayLength()
1269 bool JSValueRef::IsJsGlobalEnv(const EcmaVM *vm) in IsJsGlobalEnv() argument
1271 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsJsGlobalEnv()
1277 const EcmaVM *vm, Local<ArrayBufferRef> arrayBuffer, uint32_t byteOffset, uint32_t byteLength) in New() argument
1279 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in New()
1281 ObjectFactory *factory = vm->GetFactory(); in New()
1285 RETURN_VALUE_IF_ABRUPT(thread, JSValueRef::Undefined(vm)); in New()
1290 const EcmaVM *vm, Local<ArrayBufferRef> arrayBuffer, uint32_t byteOffset, uint32_t byteLength) in NewWithoutSwitchState() argument
1292 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in NewWithoutSwitchState()
1296 return JSValueRef::Hole(vm); in NewWithoutSwitchState()
1298 ObjectFactory *factory = vm->GetFactory(); in NewWithoutSwitchState()
1300 RETURN_VALUE_IF_ABRUPT(thread, JSValueRef::Undefined(vm)); in NewWithoutSwitchState()
1318 Local<ArrayBufferRef> DataViewRef::GetArrayBuffer(const EcmaVM *vm) in GetArrayBuffer() argument
1320 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in GetArrayBuffer()
1330 Local<JSValueRef> PrimitiveRef::GetValue(const EcmaVM *vm) in GetValue() argument
1332 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in GetValue()
1345 Local<NumberRef> NumberRef::New(const EcmaVM *vm, double input) in New() argument
1349 CROSS_THREAD_CHECK(vm); in New()
1357 Local<NumberRef> NumberRef::New(const EcmaVM *vm, int32_t input) in New() argument
1361 CROSS_THREAD_CHECK(vm); in New()
1366 Local<NumberRef> NumberRef::New(const EcmaVM *vm, uint32_t input) in New() argument
1370 CROSS_THREAD_CHECK(vm); in New()
1375 Local<NumberRef> NumberRef::New(const EcmaVM *vm, int64_t input) in New() argument
1379 CROSS_THREAD_CHECK(vm); in New()
1392 Local<JSValueRef> MapRef::Get(const EcmaVM *vm, Local<JSValueRef> key) in Get() argument
1394 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in Get()
1401 Local<JSValueRef> MapRef::Get(const EcmaVM *vm, const char *utf8) in Get() argument
1403 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in Get()
1406 ObjectFactory *factory = vm->GetFactory(); in Get()
1412 void MapRef::Set(const EcmaVM *vm, Local<JSValueRef> key, Local<JSValueRef> value) in Set() argument
1414 CROSS_THREAD_AND_EXCEPTION_CHECK(vm); in Set()
1420 void MapRef::Set(const EcmaVM *vm, const char *utf8, Local<JSValueRef> value) in Set() argument
1422 CROSS_THREAD_AND_EXCEPTION_CHECK(vm); in Set()
1425 ObjectFactory *factory = vm->GetFactory(); in Set()
1430 bool MapRef::Has(const EcmaVM *vm, Local<JSValueRef> key) in Has() argument
1432 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, false); in Has()
1439 bool MapRef::Has(const EcmaVM *vm, const char *utf8) in Has() argument
1441 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, false); in Has()
1444 ObjectFactory *factory = vm->GetFactory(); in Has()
1450 void MapRef::Delete(const EcmaVM *vm, Local<JSValueRef> key) in Delete() argument
1452 CROSS_THREAD_AND_EXCEPTION_CHECK(vm); in Delete()
1458 void MapRef::Clear(const EcmaVM *vm) in Clear() argument
1460 CROSS_THREAD_AND_EXCEPTION_CHECK(vm); in Clear()
1466 Local<MapRef> MapRef::New(const EcmaVM *vm) in New() argument
1468 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in New()
1481 int32_t MapRef::GetSize(const EcmaVM *vm) in GetSize() argument
1484 JSThread *thread = vm->GetJSThread(); in GetSize()
1490 int32_t MapRef::GetTotalElements(const EcmaVM *vm) in GetTotalElements() argument
1493 JSThread *thread = vm->GetJSThread(); in GetTotalElements()
1500 Local<JSValueRef> MapRef::GetKey(const EcmaVM *vm, int entry) in GetKey() argument
1502 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in GetKey()
1509 Local<JSValueRef> MapRef::GetValue(const EcmaVM *vm, int entry) in GetValue() argument
1511 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in GetValue()
1518 Local<MapIteratorRef> MapRef::GetEntries(const EcmaVM *vm) in GetEntries() argument
1520 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in GetEntries()
1521 DCHECK_SPECIAL_VALUE_WITH_RETURN(this, JSValueRef::Undefined(vm)); in GetEntries()
1529 Local<MapIteratorRef> MapRef::GetKeys(const EcmaVM *vm) in GetKeys() argument
1531 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in GetKeys()
1532 DCHECK_SPECIAL_VALUE_WITH_RETURN(this, JSValueRef::Undefined(vm)); in GetKeys()
1539 Local<MapIteratorRef> MapRef::GetValues(const EcmaVM *vm) in GetValues() argument
1541 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in GetValues()
1542 DCHECK_SPECIAL_VALUE_WITH_RETURN(this, JSValueRef::Undefined(vm)); in GetValues()
1550 Local<SendableMapRef> SendableMapRef::New(const EcmaVM *vm) in New() argument
1552 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in New()
1554 ObjectFactory *factory = vm->GetFactory(); in New()
1555 JSHandle<GlobalEnv> env = vm->GetGlobalEnv(); in New()
1568 Local<JSValueRef> SendableMapRef::Get(const EcmaVM *vm, Local<JSValueRef> key) in Get() argument
1570 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in Get()
1577 Local<JSValueRef> SendableMapRef::Get(const EcmaVM *vm, const char *utf8) in Get() argument
1579 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in Get()
1582 ObjectFactory *factory = vm->GetFactory(); in Get()
1588 void SendableMapRef::Set(const EcmaVM *vm, Local<JSValueRef> key, Local<JSValueRef> value) in Set() argument
1590 CROSS_THREAD_AND_EXCEPTION_CHECK(vm); in Set()
1596 void SendableMapRef::Set(const EcmaVM *vm, const char *utf8, Local<JSValueRef> value) in Set() argument
1598 CROSS_THREAD_AND_EXCEPTION_CHECK(vm); in Set()
1601 ObjectFactory *factory = vm->GetFactory(); in Set()
1606 bool SendableMapRef::Has(const EcmaVM *vm, Local<JSValueRef> key) in Has() argument
1608 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, false); in Has()
1615 bool SendableMapRef::Has(const EcmaVM *vm, const char *utf8) in Has() argument
1617 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, false); in Has()
1620 ObjectFactory *factory = vm->GetFactory(); in Has()
1626 void SendableMapRef::Delete(const EcmaVM *vm, Local<JSValueRef> key) in Delete() argument
1628 CROSS_THREAD_AND_EXCEPTION_CHECK(vm); in Delete()
1634 void SendableMapRef::Clear(const EcmaVM *vm) in Clear() argument
1636 CROSS_THREAD_AND_EXCEPTION_CHECK(vm); in Clear()
1642 uint32_t SendableMapRef::GetSize(const EcmaVM *vm) in GetSize() argument
1644 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, 0); in GetSize()
1651 uint32_t SendableMapRef::GetTotalElements(const EcmaVM *vm) in GetTotalElements() argument
1653 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, 0); in GetTotalElements()
1661 Local<JSValueRef> SendableMapRef::GetKey(const EcmaVM *vm, int entry) in GetKey() argument
1663 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in GetKey()
1671 Local<JSValueRef> SendableMapRef::GetValue(const EcmaVM *vm, int entry) in GetValue() argument
1673 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in GetValue()
1681 Local<SendableMapIteratorRef> SendableMapRef::GetEntries(const EcmaVM *vm) in GetEntries() argument
1683 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in GetEntries()
1684 DCHECK_SPECIAL_VALUE_WITH_RETURN(this, JSValueRef::Undefined(vm)); in GetEntries()
1692 Local<SendableMapIteratorRef> SendableMapRef::GetKeys(const EcmaVM *vm) in GetKeys() argument
1694 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in GetKeys()
1695 DCHECK_SPECIAL_VALUE_WITH_RETURN(this, JSValueRef::Undefined(vm)); in GetKeys()
1703 Local<SendableMapIteratorRef> SendableMapRef::GetValues(const EcmaVM *vm) in GetValues() argument
1705 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in GetValues()
1706 DCHECK_SPECIAL_VALUE_WITH_RETURN(this, JSValueRef::Undefined(vm)); in GetValues()
1715 Local<SendableSetRef> SendableSetRef::New(const EcmaVM *vm) in New() argument
1717 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in New()
1719 ObjectFactory *factory = vm->GetFactory(); in New()
1720 JSHandle<GlobalEnv> env = vm->GetGlobalEnv(); in New()
1733 uint32_t SendableSetRef::GetSize(const EcmaVM *vm) in GetSize() argument
1735 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, 0); in GetSize()
1742 uint32_t SendableSetRef::GetTotalElements(const EcmaVM *vm) in GetTotalElements() argument
1744 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, 0); in GetTotalElements()
1752 Local<JSValueRef> SendableSetRef::GetValue(const EcmaVM *vm, int entry) in GetValue() argument
1754 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in GetValue()
1762 void SendableSetRef::Add(const EcmaVM *vm, Local<JSValueRef> value) in Add() argument
1764 CROSS_THREAD_AND_EXCEPTION_CHECK(vm); in Add()
1779 Local<JSValueRef> MapIteratorRef::GetKind(const EcmaVM *vm) in GetKind() argument
1781 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in GetKind()
1804 Local<MapIteratorRef> MapIteratorRef::New(const EcmaVM *vm, Local<MapRef> map) in New() argument
1806 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in New()
1811 …JSMapIterator::CreateMapIterator(vm->GetJSThread(), JSHandle<JSTaggedValue>::Cast(jsMap), iterKind… in New()
1812 RETURN_VALUE_IF_ABRUPT(thread, JSValueRef::Undefined(vm)); in New()
1816 ecmascript::EcmaRuntimeCallInfo *MapIteratorRef::GetEcmaRuntimeCallInfo(const EcmaVM *vm) in GetEcmaRuntimeCallInfo() argument
1818 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, nullptr); in GetEcmaRuntimeCallInfo()
1829 Local<ArrayRef> MapIteratorRef::Next(const EcmaVM *vm, ecmascript::EcmaRuntimeCallInfo *ecmaRuntime… in Next() argument
1831 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in Next()
1834 RETURN_VALUE_IF_ABRUPT(thread, JSValueRef::Undefined(vm)); in Next()
1840 Local<JSValueRef> MapIteratorRef::Next(const EcmaVM *vm) in Next() argument
1842 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in Next()
1850 Local<JSValueRef> SendableMapIteratorRef::Next(const EcmaVM *vm) in Next() argument
1852 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in Next()
1867 Local<JSValueRef> SetIteratorRef::GetKind(const EcmaVM *vm) in GetKind() argument
1869 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in GetKind()
1892 Local<SetIteratorRef> SetIteratorRef::New(const EcmaVM *vm, Local<SetRef> set) in New() argument
1894 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in New()
1900 RETURN_VALUE_IF_ABRUPT(thread, JSValueRef::Undefined(vm)); in New()
1904 ecmascript::EcmaRuntimeCallInfo *SetIteratorRef::GetEcmaRuntimeCallInfo(const EcmaVM *vm) in GetEcmaRuntimeCallInfo() argument
1906 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, nullptr); in GetEcmaRuntimeCallInfo()
1917 Local<ArrayRef> SetIteratorRef::Next(const EcmaVM *vm, ecmascript::EcmaRuntimeCallInfo *ecmaRuntime… in Next() argument
1919 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in Next()
1922 RETURN_VALUE_IF_ABRUPT(thread, JSValueRef::Undefined(vm)); in Next()
1929 Local<BufferRef> BufferRef::New(const EcmaVM *vm, const Local<JSValueRef> &context, int32_t length) in New() argument
1931 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in New()
1933 ObjectFactory *factory = vm->GetFactory(); in New()
1935 JSHandle<GlobalEnv> env = vm->GetGlobalEnv(); in New()
1938 Local<StringRef> key = StringRef::NewFromUtf8(vm, "toString"); in New()
1943 RETURN_VALUE_IF_ABRUPT(thread, JSValueRef::Undefined(vm)); in New()
1951 Local<BufferRef> BufferRef::New(const EcmaVM *vm, int32_t length) in New() argument
1953 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in New()
1955 return New(vm, context, length); in New()
1958 Local<BufferRef> BufferRef::New(const EcmaVM *vm, const Local<JSValueRef> &context, void *buffer, in New() argument
1961 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in New()
1963 ObjectFactory *factory = vm->GetFactory(); in New()
1966 JSHandle<GlobalEnv> env = vm->GetGlobalEnv(); in New()
1969 Local<StringRef> key = StringRef::NewFromUtf8(vm, "toString"); in New()
1974 RETURN_VALUE_IF_ABRUPT(thread, JSValueRef::Undefined(vm)); in New()
1983 … const EcmaVM *vm, void *buffer, int32_t length, const NativePointerCallback &deleter, void *data) in New() argument
1985 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in New()
1987 return New(vm, context, buffer, length, deleter, data); in New()
1990 int32_t BufferRef::ByteLength(const EcmaVM *vm) in ByteLength() argument
1993 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in ByteLength()
1998 void *BufferRef::GetBuffer(const EcmaVM *vm) in GetBuffer() argument
2001 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in GetBuffer()
2003 JSTaggedValue bufferData = arrayBuffer->GetArrayBufferData(vm->GetJSThread()); in GetBuffer()
2046 Local<PromiseCapabilityRef> PromiseCapabilityRef::New(const EcmaVM *vm) in New() argument
2048 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in New()
2050 JSHandle<GlobalEnv> globalEnv = vm->GetGlobalEnv(); in New()
2053 RETURN_VALUE_IF_ABRUPT(thread, JSValueRef::Undefined(vm)); in New()
2057 Local<PromiseRef> PromiseCapabilityRef::GetPromise(const EcmaVM *vm) in GetPromise() argument
2059 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in GetPromise()
2066 bool PromiseCapabilityRef::Resolve(const EcmaVM *vm, uintptr_t value) in Resolve() argument
2068 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, false); in Resolve()
2087 EcmaVM::ConstCast(vm)->ExecutePromisePendingJob(); in Resolve()
2093 bool PromiseCapabilityRef::Resolve(const EcmaVM *vm, Local<JSValueRef> value) in Resolve() argument
2095 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, false); in Resolve()
2114 EcmaVM::ConstCast(vm)->ExecutePromisePendingJob(); in Resolve()
2120 bool PromiseCapabilityRef::Reject(const EcmaVM *vm, uintptr_t reason) in Reject() argument
2122 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, false); in Reject()
2142 EcmaVM::ConstCast(vm)->ExecutePromisePendingJob(); in Reject()
2148 bool PromiseCapabilityRef::Reject(const EcmaVM *vm, Local<JSValueRef> reason) in Reject() argument
2150 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, false); in Reject()
2170 EcmaVM::ConstCast(vm)->ExecutePromisePendingJob(); in Reject()
2177 Local<SymbolRef> SymbolRef::New(const EcmaVM *vm, Local<StringRef> description) in New() argument
2181 CROSS_THREAD_CHECK(vm); in New()
2183 ObjectFactory *factory = vm->GetFactory(); in New()
2192 Local<StringRef> SymbolRef::GetDescription(const EcmaVM *vm) in GetDescription() argument
2194 CROSS_THREAD_CHECK(vm); in GetDescription()
2207 Local<BooleanRef> BooleanRef::New(const EcmaVM *vm, bool value) in New() argument
2211 CROSS_THREAD_CHECK(vm); in New()
2225 Local<StringRef> StringRef::NewFromUtf8(const EcmaVM *vm, const char *utf8, int length) in NewFromUtf8() argument
2229 CROSS_THREAD_CHECK(vm); in NewFromUtf8()
2231 ObjectFactory *factory = vm->GetFactory(); in NewFromUtf8()
2240 Local<StringRef> StringRef::NewFromUtf8WithoutStringTable(const EcmaVM *vm, const char *utf8, int l… in NewFromUtf8WithoutStringTable() argument
2243 CROSS_THREAD_CHECK(vm); in NewFromUtf8WithoutStringTable()
2245 ObjectFactory *factory = vm->GetFactory(); in NewFromUtf8WithoutStringTable()
2255 Local<StringRef> StringRef::NewFromUtf16WithoutStringTable(const EcmaVM *vm, const char16_t *utf16,… in NewFromUtf16WithoutStringTable() argument
2259 CROSS_THREAD_CHECK(vm); in NewFromUtf16WithoutStringTable()
2261 ObjectFactory *factory = vm->GetFactory(); in NewFromUtf16WithoutStringTable()
2271 Local<StringRef> StringRef::NewFromUtf16(const EcmaVM *vm, const char16_t *utf16, int length) in NewFromUtf16() argument
2275 CROSS_THREAD_CHECK(vm); in NewFromUtf16()
2277 ObjectFactory *factory = vm->GetFactory(); in NewFromUtf16()
2286 std::string StringRef::ToString(const EcmaVM *vm) in ToString() argument
2289 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in ToString()
2290 return EcmaStringAccessor(JSNApiHelper::ToJSTaggedValue(this)).ToStdString(vm->GetJSThread()); in ToString()
2293 std::string StringRef::DebuggerToString(const EcmaVM *vm) in DebuggerToString() argument
2296 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in DebuggerToString()
2297 …return EcmaStringAccessor(JSNApiHelper::ToJSTaggedValue(this)).DebuggerToStdString(vm->GetJSThread… in DebuggerToString()
2300 uint32_t StringRef::Length(const EcmaVM *vm) in Length() argument
2303 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in Length()
2307 bool StringRef::IsCompressed(const panda::EcmaVM *vm) in IsCompressed() argument
2310 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in IsCompressed()
2314 size_t StringRef::Utf8Length(const EcmaVM *vm, bool isGetBufferSize) in Utf8Length() argument
2317 auto thread = vm->GetJSThread(); in Utf8Length()
2320 …return EcmaStringAccessor(EcmaStringAccessor::Flatten(vm, strHandle)).GetUtf8Length(thread, isGetB… in Utf8Length()
2323 uint32_t StringRef::WriteUtf8(const EcmaVM *vm, char *buffer, uint32_t length, bool isWriteBuffer) in WriteUtf8() argument
2326 JSThread *thread = vm->GetJSThread(); in WriteUtf8()
2332 uint32_t StringRef::WriteUtf16(const EcmaVM *vm, char16_t *buffer, uint32_t length) in WriteUtf16() argument
2335 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in WriteUtf16()
2337 .WriteToUtf16(vm->GetJSThread(), reinterpret_cast<uint16_t *>(buffer), length); in WriteUtf16()
2340 uint32_t StringRef::WriteLatin1(const EcmaVM *vm, char *buffer, uint32_t length) in WriteLatin1() argument
2343 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in WriteLatin1()
2345 .WriteToOneByte(vm->GetJSThread(), reinterpret_cast<uint8_t *>(buffer), length); in WriteLatin1()
2348 uint32_t StringRef::WriteLatin1WithoutSwitchState(const EcmaVM *vm, char *buffer, uint32_t length) in WriteLatin1WithoutSwitchState() argument
2351 CROSS_THREAD_CHECK(vm); in WriteLatin1WithoutSwitchState()
2353 .WriteToOneByte(vm->GetJSThread(), reinterpret_cast<uint8_t *>(buffer), length); in WriteLatin1WithoutSwitchState()
2356 Local<StringRef> StringRef::GetNapiWrapperString(const EcmaVM *vm) in GetNapiWrapperString() argument
2360 CROSS_THREAD_CHECK(vm); in GetNapiWrapperString()
2365 Local<TypedArrayRef> StringRef::EncodeIntoUint8Array(const EcmaVM *vm) in EncodeIntoUint8Array() argument
2367 CROSS_THREAD_CHECK(vm); in EncodeIntoUint8Array()
2370 uint32_t length = this->Utf8Length(vm, true); in EncodeIntoUint8Array()
2373 return Undefined(vm); in EncodeIntoUint8Array()
2379 if (JSNApi::HasPendingException(vm)) { in EncodeIntoUint8Array()
2381 return Undefined(vm); in EncodeIntoUint8Array()
2419 Local<BigIntRef> BigIntRef::New(const EcmaVM *vm, uint64_t input) in New() argument
2423 CROSS_THREAD_CHECK(vm); in New()
2430 Local<BigIntRef> BigIntRef::New(const EcmaVM *vm, int64_t input) in New() argument
2434 CROSS_THREAD_CHECK(vm); in New()
2441 Local<JSValueRef> BigIntRef::CreateBigWords(const EcmaVM *vm, bool sign, uint32_t size, const uint6… in CreateBigWords() argument
2445 CROSS_THREAD_CHECK(vm); in CreateBigWords()
2452 void BigIntRef::BigIntToInt64(const EcmaVM *vm, int64_t *value, bool *lossless) in BigIntToInt64() argument
2456 CROSS_THREAD_CHECK(vm); in BigIntToInt64()
2463 void BigIntRef::BigIntToUint64(const EcmaVM *vm, uint64_t *value, bool *lossless) in BigIntToUint64() argument
2467 CROSS_THREAD_CHECK(vm); in BigIntToUint64()
2474 void BigIntRef::GetWordsArray(const EcmaVM *vm, bool* signBit, size_t wordCount, uint64_t* words) in GetWordsArray() argument
2477 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in GetWordsArray()
2496 uint32_t BigIntRef::GetWordsArraySize(const EcmaVM *vm) in GetWordsArraySize() argument
2499 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in GetWordsArraySize()
2506 LocalScope::LocalScope(const EcmaVM *vm) : thread_(vm->GetJSThread()) in LocalScope() argument
2509 prevNext_ = vm->GetHandleScopeStorageNext(); in LocalScope()
2510 prevEnd_ = vm->GetHandleScopeStorageEnd(); in LocalScope()
2511 prevHandleStorageIndex_ = vm->GetCurrentHandleStorageIndex(); in LocalScope()
2513 prevPrimitiveNext_ = vm->GetPrimitiveScopeStorageNext(); in LocalScope()
2514 prevPrimitiveEnd_ = vm->GetPrimitiveScopeStorageEnd(); in LocalScope()
2515 prevPrimitiveStorageIndex_ = vm->GetCurrentPrimitiveStorageIndex(); in LocalScope()
2518 HeapProfilerInterface::GetInstance(const_cast<EcmaVM *>(vm))); in LocalScope()
2524 LocalScope::LocalScope(const EcmaVM *vm, JSTaggedType value) : thread_(vm->GetJSThread()) in LocalScope() argument
2529 prevNext_ = vm->GetHandleScopeStorageNext(); in LocalScope()
2530 prevEnd_ = vm->GetHandleScopeStorageEnd(); in LocalScope()
2531 prevHandleStorageIndex_ = vm->GetCurrentHandleStorageIndex(); in LocalScope()
2533 prevPrimitiveNext_ = vm->GetPrimitiveScopeStorageNext(); in LocalScope()
2534 prevPrimitiveEnd_ = vm->GetPrimitiveScopeStorageEnd(); in LocalScope()
2535 prevPrimitiveStorageIndex_ = vm->GetCurrentPrimitiveStorageIndex(); in LocalScope()
2538 HeapProfilerInterface::GetInstance(const_cast<EcmaVM *>(vm))); in LocalScope()
2547 auto vm = reinterpret_cast<JSThread *>(thread_)->GetEcmaVM(); in ~LocalScope() local
2548 vm->SetHandleScopeStorageNext(static_cast<JSTaggedType *>(prevNext_)); in ~LocalScope()
2549 vm->SetPrimitiveScopeStorageNext(static_cast<JSTaggedType *>(prevPrimitiveNext_)); in ~LocalScope()
2551 if (vm->GetHandleScopeStorageEnd() != prevEnd_) { in ~LocalScope()
2552 vm->SetHandleScopeStorageEnd(static_cast<JSTaggedType *>(prevEnd_)); in ~LocalScope()
2553 vm->ShrinkHandleStorage(prevHandleStorageIndex_); in ~LocalScope()
2556 if (vm->GetPrimitiveScopeStorageEnd() != prevPrimitiveEnd_) { in ~LocalScope()
2557 vm->SetPrimitiveScopeStorageEnd(static_cast<JSTaggedType *>(prevPrimitiveEnd_)); in ~LocalScope()
2558 vm->ShrinkPrimitiveStorage(prevPrimitiveStorageIndex_); in ~LocalScope()
2561 auto heapProfiler = reinterpret_cast<HeapProfiler *>(HeapProfilerInterface::GetInstance(vm)); in ~LocalScope()
2568 EscapeLocalScope::EscapeLocalScope(const EcmaVM *vm) : LocalScope(vm, JSTaggedValue::Undefined().Ge… in EscapeLocalScope() argument
2571 escapeHandle_ = ToUintPtr(vm->GetHandleScopeStorageNext() - 1); in EscapeLocalScope()
2575 Local<IntegerRef> IntegerRef::New(const EcmaVM *vm, int input) in New() argument
2579 CROSS_THREAD_CHECK(vm); in New()
2585 Local<IntegerRef> IntegerRef::NewFromUnsigned(const EcmaVM *vm, unsigned int input) in NewFromUnsigned() argument
2589 CROSS_THREAD_CHECK(vm); in NewFromUnsigned()
2603 Local<ObjectRef> ObjectRef::New(const EcmaVM *vm) in New() argument
2605 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in New()
2607 ObjectFactory *factory = vm->GetFactory(); in New()
2612 uintptr_t ObjectRef::NewObject(const EcmaVM *vm) in NewObject() argument
2614 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, in NewObject()
2617 JSHandle<JSTaggedValue> object(vm->GetFactory()->CreateNapiObject()); in NewObject()
2621 Local<ObjectRef> ObjectRef::NewS(const EcmaVM *vm) in NewS() argument
2623 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in NewS()
2625 ObjectFactory *factory = vm->GetFactory(); in NewS()
2626 JSHandle<GlobalEnv> globalEnv = vm->GetGlobalEnv(); in NewS()
2632 Local<ObjectRef> ObjectRef::NewWithProperties(const EcmaVM *vm, size_t propertyCount, in NewWithProperties() argument
2636 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in NewWithProperties()
2638 EscapeLocalScope scope(vm); in NewWithProperties()
2640 …auto CreateObjImpl = [vm, thread, propertyCount, keys, attributes] (uintptr_t head) -> JSHandle<JS… in NewWithProperties()
2645 … JSNApiHelper::ToJSHandle(attr.GetValue(vm)), in NewWithProperties()
2650 ObjectFactory *factory = vm->GetFactory(); in NewWithProperties()
2661 RETURN_VALUE_IF_ABRUPT(thread, JSValueRef::Undefined(vm)); in NewWithProperties()
2665 Local<ObjectRef> ObjectRef::NewSWithProperties(const EcmaVM *vm, SendablePropertiesInfo &info) in NewSWithProperties() argument
2667 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in NewSWithProperties()
2669 EscapeLocalScope scope(vm); in NewSWithProperties()
2670 ObjectFactory *factory = vm->GetFactory(); in NewSWithProperties()
2674 RETURN_VALUE_IF_ABRUPT(thread, JSValueRef::Undefined(vm)); in NewSWithProperties()
2678 Local<ObjectRef> ObjectRef::NewWithNamedProperties(const EcmaVM *vm, size_t propertyCount, in NewWithNamedProperties() argument
2681 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in NewWithNamedProperties()
2683 EscapeLocalScope scope(vm); in NewWithNamedProperties()
2684 ObjectFactory *factory = vm->GetFactory(); in NewWithNamedProperties()
2686 RETURN_VALUE_IF_ABRUPT(thread, JSValueRef::Undefined(vm)); in NewWithNamedProperties()
2690 Local<ObjectRef> ObjectRef::CreateNativeModuleFailureInfo(const EcmaVM *vm, const std::string &fail… in CreateNativeModuleFailureInfo() argument
2692 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in CreateNativeModuleFailureInfo()
2696 NativeModuleFailureInfo::CreateNativeModuleFailureInfo(vm, failureInfo); in CreateNativeModuleFailureInfo()
2699 return JSValueRef::Undefined(vm); in CreateNativeModuleFailureInfo()
2702 Local<ObjectRef> ObjectRef::CreateAccessorData(const EcmaVM *vm, in CreateAccessorData() argument
2705 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in CreateAccessorData()
2715 Local<ObjectRef> ObjectRef::CreateSendableAccessorData(const EcmaVM *vm, in CreateSendableAccessorData() argument
2719 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in CreateSendableAccessorData()
2729 bool ObjectRef::ConvertToNativeBindingObject(const EcmaVM *vm, Local<NativePointerRef> value) in ConvertToNativeBindingObject() argument
2731 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, false); in ConvertToNativeBindingObject()
2733 [[maybe_unused]] LocalScope scope(vm); in ConvertToNativeBindingObject()
2736 JSHandle<GlobalEnv> env = vm->GetGlobalEnv(); in ConvertToNativeBindingObject()
2740 bool result = DefineProperty(vm, key, attr); in ConvertToNativeBindingObject()
2746 Local<NativePointerRef> ObjectRef::GetNativeBindingPointer(const EcmaVM *vm) in GetNativeBindingPointer() argument
2748 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in GetNativeBindingPointer()
2750 EscapeLocalScope scope(vm); in GetNativeBindingPointer()
2753 JSHandle<GlobalEnv> env = vm->GetGlobalEnv(); in GetNativeBindingPointer()
2756 RETURN_VALUE_IF_ABRUPT(thread, JSValueRef::Undefined(vm)); in GetNativeBindingPointer()
2760 bool ObjectRef::Set(const EcmaVM *vm, Local<JSValueRef> key, Local<JSValueRef> value) in Set() argument
2762 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, false); in Set()
2764 [[maybe_unused]] LocalScope scope(vm); in Set()
2777 bool ObjectRef::Set(const EcmaVM *vm, const char *utf8, Local<JSValueRef> value) in Set() argument
2779 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, false); in Set()
2781 [[maybe_unused]] LocalScope scope(vm); in Set()
2784 ObjectFactory *factory = vm->GetFactory(); in Set()
2809 bool ObjectRef::SetWithoutSwitchState(const EcmaVM *vm, const char *utf8, Local<JSValueRef> value) in SetWithoutSwitchState() argument
2811 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, false); in SetWithoutSwitchState()
2812 [[maybe_unused]] LocalScope scope(vm); in SetWithoutSwitchState()
2815 ObjectFactory *factory = vm->GetFactory(); in SetWithoutSwitchState()
2837 Local<JSValueRef> JSNApi::GetImplements(const EcmaVM *vm, Local<JSValueRef> instance) in GetImplements() argument
2839 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in GetImplements()
2843 LocalScope scope(vm); in GetImplements()
2844 if (!instance->IsObject(vm)) { in GetImplements()
2845 return JSValueRef::Undefined(vm); in GetImplements()
2850 RETURN_VALUE_IF_ABRUPT(thread, JSValueRef::Undefined(vm)); in GetImplements()
2853 return JSValueRef::Undefined(vm); in GetImplements()
2856 JSHandle<GlobalEnv> env = vm->GetGlobalEnv(); in GetImplements()
2861 return JSValueRef::Undefined(vm); in GetImplements()
2868 bool ObjectRef::Set(const EcmaVM *vm, uint32_t key, Local<JSValueRef> value) in Set() argument
2870 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, false); in Set()
2872 [[maybe_unused]] LocalScope scope(vm); in Set()
2883 bool ObjectRef::SetAccessorProperty(const EcmaVM *vm, Local<JSValueRef> key, Local<FunctionRef> get… in SetAccessorProperty() argument
2886 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, false); in SetAccessorProperty()
2888 [[maybe_unused]] LocalScope scope(vm); in SetAccessorProperty()
2892 desc.SetValue(JSNApiHelper::ToJSHandle(attribute.GetValue(vm))); in SetAccessorProperty()
2901 Local<JSValueRef> ObjectRef::Get(const EcmaVM *vm, Local<JSValueRef> key) in Get() argument
2903 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in Get()
2907 LocalScope scope(vm); in Get()
2913 RETURN_VALUE_IF_ABRUPT(thread, JSValueRef::Undefined(vm)); in Get()
2918 RETURN_VALUE_IF_ABRUPT(thread, JSValueRef::Undefined(vm)); in Get()
2925 Local<JSValueRef> ObjectRef::Get(const EcmaVM *vm, const char *utf8) in Get() argument
2927 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in Get()
2931 LocalScope scope(vm); in Get()
2934 ObjectFactory *factory = vm->GetFactory(); in Get()
2938 RETURN_VALUE_IF_ABRUPT(thread, JSValueRef::Undefined(vm)); in Get()
2943 RETURN_VALUE_IF_ABRUPT(thread, JSValueRef::Undefined(vm)); in Get()
2950 Local<JSValueRef> ObjectRef::Get(const EcmaVM *vm, int32_t key) in Get() argument
2952 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in Get()
2956 LocalScope scope(vm); in Get()
2961 RETURN_VALUE_IF_ABRUPT(thread, JSValueRef::Undefined(vm)); in Get()
2965 RETURN_VALUE_IF_ABRUPT(thread, JSValueRef::Undefined(vm)); in Get()
2972 bool ObjectRef::GetOwnProperty(const EcmaVM *vm, Local<JSValueRef> key, PropertyAttribute &property) in GetOwnProperty() argument
2974 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, false); in GetOwnProperty()
3004 Local<ArrayRef> ObjectRef::GetOwnPropertyNames(const EcmaVM *vm) in GetOwnPropertyNames() argument
3006 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in GetOwnPropertyNames()
3011 RETURN_VALUE_IF_ABRUPT(thread, JSValueRef::Undefined(vm)); in GetOwnPropertyNames()
3016 Local<ArrayRef> ObjectRef::GetAllPropertyNames(const EcmaVM *vm, uint32_t filter) in GetAllPropertyNames() argument
3020 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in GetAllPropertyNames()
3025 RETURN_VALUE_IF_ABRUPT(thread, JSValueRef::Undefined(vm)); in GetAllPropertyNames()
3030 Local<ArrayRef> ObjectRef::GetOwnEnumerablePropertyNames(const EcmaVM *vm) in GetOwnEnumerablePropertyNames() argument
3032 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in GetOwnEnumerablePropertyNames()
3037 RETURN_VALUE_IF_ABRUPT(thread, JSValueRef::Undefined(vm)); in GetOwnEnumerablePropertyNames()
3042 Local<JSValueRef> ObjectRef::GetPrototype(const EcmaVM *vm) in GetPrototype() argument
3044 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in GetPrototype()
3049 RETURN_VALUE_IF_ABRUPT(thread, JSValueRef::Undefined(vm)); in GetPrototype()
3053 bool ObjectRef::SetPrototype(const EcmaVM *vm, Local<ObjectRef> prototype) in SetPrototype() argument
3055 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, false); in SetPrototype()
3062 bool ObjectRef::DefineProperty(const EcmaVM *vm, Local<JSValueRef> key, PropertyAttribute attribute) in DefineProperty() argument
3064 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, false); in DefineProperty()
3070 desc.SetValue(JSNApiHelper::ToJSHandle(attribute.GetValue(vm))); in DefineProperty()
3074 bool ObjectRef::Has(const EcmaVM *vm, Local<JSValueRef> key) in Has() argument
3076 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, false); in Has()
3084 bool ObjectRef::Has(const EcmaVM *vm, uint32_t key) in Has() argument
3086 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, false); in Has()
3093 bool ObjectRef::HasOwnProperty(const EcmaVM *vm, Local<JSValueRef> key) in HasOwnProperty() argument
3095 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, false); in HasOwnProperty()
3103 bool ObjectRef::Delete(const EcmaVM *vm, Local<JSValueRef> key) in Delete() argument
3105 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, false); in Delete()
3113 bool ObjectRef::Delete(const EcmaVM *vm, uint32_t key) in Delete() argument
3115 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, false); in Delete()
3123 Local<JSValueRef> ObjectRef::Freeze(const EcmaVM *vm) in Freeze() argument
3125 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in Freeze()
3127 EscapeLocalScope scope(vm); in Freeze()
3132 if (JSNApi::HasPendingException(vm)) { in Freeze()
3138 Local<StringRef> message = StringRef::NewFromUtf8(vm, "Freeze: freeze failed"); in Freeze()
3139 Local<JSValueRef> error = Exception::Error(vm, message); in Freeze()
3140 JSNApi::ThrowException(vm, error); in Freeze()
3148 Local<JSValueRef> ObjectRef::Seal(const EcmaVM *vm) in Seal() argument
3150 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in Seal()
3152 EscapeLocalScope scope(vm); in Seal()
3157 if (JSNApi::HasPendingException(vm)) { in Seal()
3163 Local<StringRef> message = StringRef::NewFromUtf8(vm, "Freeze: freeze failed"); in Seal()
3164 Local<JSValueRef> error = Exception::Error(vm, message); in Seal()
3165 JSNApi::ThrowException(vm, error); in Seal()
3173 void ObjectRef::SetNativePointerFieldCount(const EcmaVM *vm, int32_t count) in SetNativePointerFieldCount() argument
3175 CROSS_THREAD_AND_EXCEPTION_CHECK(vm); in SetNativePointerFieldCount()
3184 int32_t ObjectRef::GetNativePointerFieldCount(const EcmaVM *vm) in GetNativePointerFieldCount() argument
3189 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in GetNativePointerFieldCount()
3191 return object->GetNativePointerFieldCount(vm->GetJSThread()); in GetNativePointerFieldCount()
3194 void *ObjectRef::GetNativePointerField(const EcmaVM *vm, int32_t index) in GetNativePointerField() argument
3199 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in GetNativePointerField()
3201 return object->GetNativePointerField(vm->GetJSThread(), index); in GetNativePointerField()
3204 void ObjectRef::SetNativePointerField(const EcmaVM *vm, int32_t index, void *nativePointer, in SetNativePointerField() argument
3207 CROSS_THREAD_AND_EXCEPTION_CHECK(vm); in SetNativePointerField()
3216 void ObjectRef::SetConcurrentNativePointerField(const EcmaVM *vm, int32_t index, void *nativePointe… in SetConcurrentNativePointerField() argument
3219 CROSS_THREAD_AND_EXCEPTION_CHECK(vm); in SetConcurrentNativePointerField()
3230 Local<NativePointerRef> NativePointerRef::New(const EcmaVM *vm, void *nativePointer, size_t nativeB… in New() argument
3232 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in New()
3234 ObjectFactory *factory = vm->GetFactory(); in New()
3241 …const EcmaVM *vm, void *nativePointer, NativePointerCallback callBack, void *data, size_t nativeBi… in New() argument
3243 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in New()
3245 ObjectFactory *factory = vm->GetFactory(); in New()
3252 …const EcmaVM *vm, void *nativePointer, NativePointerCallback callBack, void *data, size_t nativeBi… in NewConcurrent() argument
3254 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in NewConcurrent()
3256 ObjectFactory *factory = vm->GetFactory(); in NewConcurrent()
3263 …const EcmaVM *vm, void *nativePointer, NativePointerCallback callBack, void *data, size_t nativeBi… in NewSendable() argument
3265 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in NewSendable()
3267 ObjectFactory *factory = vm->GetFactory(); in NewSendable()
3281 Local<ArrayBufferRef> ArrayBufferRef::New(const EcmaVM *vm, int32_t length) in New() argument
3283 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in New()
3285 ObjectFactory *factory = vm->GetFactory(); in New()
3291 … const EcmaVM *vm, void *buffer, int32_t length, const NativePointerCallback &deleter, void *data) in New() argument
3293 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in New()
3295 ObjectFactory *factory = vm->GetFactory(); in New()
3300 int32_t ArrayBufferRef::ByteLength(const EcmaVM *vm) in ByteLength() argument
3302 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, 0); in ByteLength()
3309 void *ArrayBufferRef::GetBuffer(const EcmaVM *vm) in GetBuffer() argument
3312 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in GetBuffer()
3314 JSTaggedValue bufferData = arrayBuffer->GetArrayBufferData(vm->GetJSThread()); in GetBuffer()
3321 void *ArrayBufferRef::GetBufferAndLength(const EcmaVM *vm, int32_t *length) in GetBufferAndLength() argument
3324 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in GetBufferAndLength()
3326 JSTaggedValue bufferData = arrayBuffer->GetArrayBufferData(vm->GetJSThread()); in GetBufferAndLength()
3336 void ArrayBufferRef::Detach(const EcmaVM *vm) in Detach() argument
3338 CROSS_THREAD_AND_EXCEPTION_CHECK(vm); in Detach()
3345 bool ArrayBufferRef::IsDetach(const EcmaVM *vm) in IsDetach() argument
3348 JSThread *thread = vm->GetJSThread(); in IsDetach()
3354 Local<SendableArrayBufferRef> SendableArrayBufferRef::New(const EcmaVM *vm, int32_t length) in New() argument
3356 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in New()
3358 ObjectFactory *factory = vm->GetFactory(); in New()
3364 … const EcmaVM *vm, void *buffer, int32_t length, const NativePointerCallback &deleter, void *data) in New() argument
3366 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in New()
3368 ObjectFactory *factory = vm->GetFactory(); in New()
3374 int32_t SendableArrayBufferRef::ByteLength(const EcmaVM *vm) in ByteLength() argument
3376 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, 0); in ByteLength()
3383 void SendableArrayBufferRef::Detach(const EcmaVM *vm) in Detach() argument
3385 CROSS_THREAD_AND_EXCEPTION_CHECK(vm); in Detach()
3391 bool SendableArrayBufferRef::IsDetach(const EcmaVM *vm) in IsDetach() argument
3394 JSThread *thread = vm->GetJSThread(); in IsDetach()
3400 void *SendableArrayBufferRef::GetBuffer(const EcmaVM *vm) in GetBuffer() argument
3403 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in GetBuffer()
3405 JSTaggedValue bufferData = arrayBuffer->GetArrayBufferData(vm->GetJSThread()); in GetBuffer()
3413 Local<DateRef> DateRef::New(const EcmaVM *vm, double time) in New() argument
3415 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in New()
3417 ObjectFactory *factory = vm->GetFactory(); in New()
3418 JSHandle<GlobalEnv> globalEnv = vm->GetGlobalEnv(); in New()
3425 Local<StringRef> DateRef::ToString(const EcmaVM *vm) in ToString() argument
3427 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in ToString()
3440 double DateRef::GetTime(const EcmaVM *vm) in GetTime() argument
3443 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in GetTime()
3448 return date->GetTime(vm->GetJSThread()).GetDouble(); in GetTime()
3452 uint32_t TypedArrayRef::ByteLength(const EcmaVM *vm) in ByteLength() argument
3454 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, 0); in ByteLength()
3461 uint32_t TypedArrayRef::ByteOffset(const EcmaVM *vm) in ByteOffset() argument
3463 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, 0); in ByteOffset()
3470 uint32_t TypedArrayRef::ArrayLength(const EcmaVM *vm) in ArrayLength() argument
3472 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, 0); in ArrayLength()
3479 Local<ArrayBufferRef> TypedArrayRef::GetArrayBuffer(const EcmaVM *vm) in GetArrayBuffer() argument
3481 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in GetArrayBuffer()
3489 uint32_t SendableTypedArrayRef::ByteLength(const EcmaVM *vm) in ByteLength() argument
3491 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, 0); in ByteLength()
3498 uint32_t SendableTypedArrayRef::ByteOffset(const EcmaVM *vm) in ByteOffset() argument
3500 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, 0); in ByteOffset()
3507 uint32_t SendableTypedArrayRef::ArrayLength(const EcmaVM *vm) in ArrayLength() argument
3509 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, 0); in ArrayLength()
3516 Local<SendableArrayBufferRef> SendableTypedArrayRef::GetArrayBuffer(const EcmaVM *vm) in GetArrayBuffer() argument
3518 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in GetArrayBuffer()
3528 Local<FunctionRef> FunctionRef::New(EcmaVM *vm, const Local<JSValueRef> &context, FunctionCallback … in New() argument
3531 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in New()
3533 ObjectFactory *factory = vm->GetFactory(); in New()
3534 JSHandle<GlobalEnv> env = vm->GetGlobalEnv(); in New()
3543 Local<FunctionRef> FunctionRef::New(EcmaVM *vm, FunctionCallback nativeFunc, in New() argument
3546 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in New()
3549 return New(vm, context, nativeFunc, deleter, data, callNapi, nativeBindingsize); in New()
3552 Local<FunctionRef> FunctionRef::NewConcurrent(EcmaVM *vm, const Local<JSValueRef> &context, Functio… in NewConcurrent() argument
3555 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in NewConcurrent()
3557 ObjectFactory *factory = vm->GetFactory(); in NewConcurrent()
3558 JSHandle<GlobalEnv> env = vm->GetGlobalEnv(); in NewConcurrent()
3567 Local<FunctionRef> FunctionRef::NewConcurrent(EcmaVM *vm, FunctionCallback nativeFunc, in NewConcurrent() argument
3570 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in NewConcurrent()
3573 return NewConcurrent(vm, context, nativeFunc, deleter, data, callNapi, nativeBindingsize); in NewConcurrent()
3576 Local<FunctionRef> FunctionRef::New(EcmaVM *vm, const Local<JSValueRef> &context, InternalFunctionC… in New() argument
3579 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in New()
3581 ObjectFactory *factory = vm->GetFactory(); in New()
3582 JSHandle<GlobalEnv> env = vm->GetGlobalEnv(); in New()
3590 Local<FunctionRef> FunctionRef::New(EcmaVM *vm, InternalFunctionCallback nativeFunc, in New() argument
3593 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in New()
3596 return New(vm, context, nativeFunc, deleter, data, callNapi, nativeBindingsize); in New()
3599 Local<FunctionRef> FunctionRef::NewSendable(EcmaVM *vm, in NewSendable() argument
3606 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in NewSendable()
3608 ObjectFactory *factory = vm->GetFactory(); in NewSendable()
3609 JSHandle<GlobalEnv> env = vm->GetGlobalEnv(); in NewSendable()
3618 Local<FunctionRef> FunctionRef::NewConcurrent(EcmaVM *vm, const Local<JSValueRef> &context, in NewConcurrent() argument
3622 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in NewConcurrent()
3624 ObjectFactory *factory = vm->GetFactory(); in NewConcurrent()
3625 JSHandle<GlobalEnv> env = vm->GetGlobalEnv(); in NewConcurrent()
3633 Local<FunctionRef> FunctionRef::NewConcurrent(EcmaVM *vm, InternalFunctionCallback nativeFunc, in NewConcurrent() argument
3636 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in NewConcurrent()
3639 return NewConcurrent(vm, context, nativeFunc, deleter, data, callNapi, nativeBindingsize); in NewConcurrent()
3642 Local<FunctionRef> FunctionRef::NewConcurrentWithName(EcmaVM *vm, const Local<JSValueRef> &context, in NewConcurrentWithName() argument
3647 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in NewConcurrentWithName()
3650 ObjectFactory *factory = vm->GetFactory(); in NewConcurrentWithName()
3658 JSHandle<GlobalEnv> env = vm->GetGlobalEnv(); in NewConcurrentWithName()
3676 Local<FunctionRef> FunctionRef::NewClassFunction(EcmaVM *vm, const Local<JSValueRef> &context, in NewClassFunction() argument
3679 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in NewClassFunction()
3681 EscapeLocalScope scope(vm); in NewClassFunction()
3682 ObjectFactory *factory = vm->GetFactory(); in NewClassFunction()
3683 JSHandle<GlobalEnv> env = vm->GetGlobalEnv(); in NewClassFunction()
3696 Local<FunctionRef> FunctionRef::NewClassFunction(EcmaVM *vm, FunctionCallback nativeFunc, in NewClassFunction() argument
3699 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in NewClassFunction()
3702 return NewClassFunction(vm, context, nativeFunc, deleter, data, callNapi, nativeBindingsize); in NewClassFunction()
3705 Local<FunctionRef> FunctionRef::NewConcurrentClassFunction(EcmaVM *vm, const Local<JSValueRef> &con… in NewConcurrentClassFunction() argument
3709 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in NewConcurrentClassFunction()
3711 EscapeLocalScope scope(vm); in NewConcurrentClassFunction()
3712 ObjectFactory *factory = vm->GetFactory(); in NewConcurrentClassFunction()
3713 JSHandle<GlobalEnv> env = vm->GetGlobalEnv(); in NewConcurrentClassFunction()
3726 const EcmaVM *vm, const Local<JSValueRef> &context, InternalFunctionCallback nativeFunc, in NewConcurrentClassFunctionWithName() argument
3730 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in NewConcurrentClassFunctionWithName()
3732 EscapeLocalScope scope(vm); in NewConcurrentClassFunctionWithName()
3733 ObjectFactory *factory = vm->GetFactory(); in NewConcurrentClassFunctionWithName()
3734 JSHandle<GlobalEnv> env = vm->GetGlobalEnv(); in NewConcurrentClassFunctionWithName()
3750 … THROW_RANGE_ERROR_AND_RETURN(thread, "Malloc descriptors failed!", JSValueRef::Undefined(vm)); in NewConcurrentClassFunctionWithName()
3759 Local<FunctionRef> FunctionRef::NewConcurrentClassFunction(EcmaVM *vm, InternalFunctionCallback nat… in NewConcurrentClassFunction() argument
3762 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in NewConcurrentClassFunction()
3765 …return NewConcurrentClassFunction(vm, context, nativeFunc, deleter, data, callNapi, nativeBindings… in NewConcurrentClassFunction()
3768 Local<FunctionRef> FunctionRef::NewClassFunction(EcmaVM *vm, const Local<JSValueRef> &context, in NewClassFunction() argument
3772 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in NewClassFunction()
3774 EscapeLocalScope scope(vm); in NewClassFunction()
3775 ObjectFactory *factory = vm->GetFactory(); in NewClassFunction()
3776 JSHandle<GlobalEnv> env = vm->GetGlobalEnv(); in NewClassFunction()
3788 Local<FunctionRef> FunctionRef::NewClassFunction(EcmaVM *vm, InternalFunctionCallback nativeFunc, in NewClassFunction() argument
3791 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in NewClassFunction()
3794 return NewClassFunction(vm, context, nativeFunc, deleter, data, callNapi, nativeBindingsize); in NewClassFunction()
3797 Local<FunctionRef> FunctionRef::NewSendableClassFunction(const EcmaVM *vm, in NewSendableClassFunction() argument
3807 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in NewSendableClassFunction()
3809 EscapeLocalScope scope(vm); in NewSendableClassFunction()
3810 ObjectFactory *factory = vm->GetFactory(); in NewSendableClassFunction()
3824 JSHandle<GlobalEnv> env = vm->GetGlobalEnv(); in NewSendableClassFunction()
3828 JSHandle<GlobalEnv> env = vm->GetGlobalEnv(); in NewSendableClassFunction()
3832 auto parentPrototype = parent->GetFunctionPrototype(vm); in NewSendableClassFunction()
3859 Local<JSValueRef> FunctionRef::Call(const EcmaVM *vm, Local<JSValueRef> thisObj, in Call() argument
3863 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in Call()
3865 EscapeLocalScope scope(vm); in Call()
3866 FunctionCallScope callScope(EcmaVM::ConstCast(vm)); in Call()
3867 if (!IsFunction(vm)) { in Call()
3868 return JSValueRef::Undefined(vm); in Call()
3870 vm->GetJsDebuggerManager()->ClearSingleStepper(); in Call()
3877 RETURN_VALUE_IF_ABRUPT(thread, JSValueRef::Undefined(vm)); in Call()
3892 RETURN_VALUE_IF_ABRUPT(thread, JSValueRef::Undefined(vm)); in Call()
3896 vm->GetJsDebuggerManager()->NotifyReturnNative(); in Call()
3900 JSValueRef* FunctionRef::CallForNapi(const EcmaVM *vm, JSValueRef *thisObj, in CallForNapi() argument
3904 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, *JSValueRef::Hole(vm)); in CallForNapi()
3907 FunctionCallScope callScope(EcmaVM::ConstCast(vm)); in CallForNapi()
3908 ASSERT(IsFunction(vm)); // IsFunction check has been done in napi. in CallForNapi()
3910 LocalScope scope(vm); in CallForNapi()
3911 ecmascript::tooling::JsDebuggerManager *dm = vm->GetJsDebuggerManager(); in CallForNapi()
3924 RETURN_VALUE_IF_ABRUPT(thread, *JSValueRef::Hole(vm)); in CallForNapi()
3935 STACK_LIMIT_CHECK(thread, reinterpret_cast<JSValueRef *>(*JSValueRef::Hole(vm))); in CallForNapi()
3940 reinterpret_cast<JSValueRef *>(*JSValueRef::Hole(vm))); in CallForNapi()
3949 RETURN_VALUE_IF_ABRUPT(thread, *JSValueRef::Hole(vm)); in CallForNapi()
3959 Local<JSValueRef> FunctionRef::Constructor(const EcmaVM *vm, in Constructor() argument
3963 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in Constructor()
3965 FunctionCallScope callScope(EcmaVM::ConstCast(vm)); in Constructor()
3966 if (!IsFunction(vm)) { in Constructor()
3967 return JSValueRef::Undefined(vm); in Constructor()
3975 RETURN_VALUE_IF_ABRUPT(thread, JSValueRef::Undefined(vm)); in Constructor()
3987 RETURN_VALUE_IF_ABRUPT(thread, JSValueRef::Undefined(vm)); in Constructor()
3992 JSValueRef* FunctionRef::ConstructorOptimize(const EcmaVM *vm, in ConstructorOptimize() argument
3996 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, *JSValueRef::Undefined(vm)); in ConstructorOptimize()
3999 FunctionCallScope callScope(EcmaVM::ConstCast(vm)); in ConstructorOptimize()
4000 ASSERT(IsFunction(vm)); // IsFunction check has been done in napi. in ConstructorOptimize()
4002 LocalScope scope(vm); in ConstructorOptimize()
4008 RETURN_VALUE_IF_ABRUPT(thread, *JSValueRef::Undefined(vm)); in ConstructorOptimize()
4018 RETURN_VALUE_IF_ABRUPT(thread, *JSValueRef::Undefined(vm)); in ConstructorOptimize()
4027 Local<JSValueRef> FunctionRef::GetFunctionPrototype(const EcmaVM *vm) in GetFunctionPrototype() argument
4029 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in GetFunctionPrototype()
4037 bool FunctionRef::Inherit(const EcmaVM *vm, Local<FunctionRef> parent) in Inherit() argument
4039 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, false); in Inherit()
4041 [[maybe_unused]] LocalScope scope(vm); in Inherit()
4057 void FunctionRef::SetName(const EcmaVM *vm, Local<StringRef> name) in SetName() argument
4059 CROSS_THREAD_AND_EXCEPTION_CHECK(vm); in SetName()
4061 [[maybe_unused]] LocalScope scope(vm); in SetName()
4067 Local<StringRef> FunctionRef::GetName(const EcmaVM *vm) in GetName() argument
4069 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in GetName()
4071 EscapeLocalScope scope(vm); in GetName()
4074 RETURN_VALUE_IF_ABRUPT(thread, JSValueRef::Undefined(vm)); in GetName()
4078 Local<StringRef> FunctionRef::GetSourceCode(const EcmaVM *vm, int lineNumber) in GetSourceCode() argument
4080 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in GetSourceCode()
4082 EscapeLocalScope scope(vm); in GetSourceCode()
4115 bool FunctionRef::IsNative(const EcmaVM *vm) in IsNative() argument
4117 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, false); in IsNative()
4124 void FunctionRef::SetData(const EcmaVM *vm, void *data, NativePointerCallback deleter, [[maybe_unus… in SetData() argument
4126 CROSS_THREAD_AND_EXCEPTION_CHECK(vm); in SetData()
4137 void* FunctionRef::GetData(const EcmaVM *vm) in GetData() argument
4139 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, nullptr); in GetData()
4152 Local<ArrayRef> ArrayRef::New(const EcmaVM *vm, uint32_t length) in New() argument
4154 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in New()
4158 RETURN_VALUE_IF_ABRUPT(thread, JSValueRef::Undefined(vm)); in New()
4162 uint32_t ArrayRef::Length(const EcmaVM *vm) in Length() argument
4164 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, 0); in Length()
4168 Local<JSValueRef> ArrayRef::GetValueAt(const EcmaVM *vm, Local<JSValueRef> obj, uint32_t index) in GetValueAt() argument
4170 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in GetValueAt()
4177 bool ArrayRef::SetValueAt(const EcmaVM *vm, Local<JSValueRef> obj, uint32_t index, Local<JSValueRef… in SetValueAt() argument
4179 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, false); in SetValueAt()
4187 Local<SendableArrayRef> SendableArrayRef::New(const EcmaVM *vm, uint32_t length) in New() argument
4189 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in New()
4200 RETURN_VALUE_IF_ABRUPT(thread, JSValueRef::Undefined(vm)); in New()
4204 uint32_t SendableArrayRef::Length(const EcmaVM *vm) in Length() argument
4206 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, 0); in Length()
4211 Local<JSValueRef> SendableArrayRef::GetValueAt(const EcmaVM *vm, Local<JSValueRef> obj, uint32_t in… in GetValueAt() argument
4213 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in GetValueAt()
4222 bool SendableArrayRef::SetProperty(const EcmaVM *vm, Local<JSValueRef> obj, uint32_t index, Local<J… in SetProperty() argument
4224 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, false); in SetProperty()
4235 …Local<JSValueRef> Exception::name(const EcmaVM *vm, Local<StringRef> message) …
4237 … CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); \
4238 … ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); \
4239 … ObjectFactory *factory = vm->GetFactory(); \
4253 FunctionCallScope::FunctionCallScope(EcmaVM *vm) : vm_(vm) in EXCEPTION_ERROR_ALL()
4268 JSExecutionScope::JSExecutionScope([[maybe_unused]] const EcmaVM *vm) in JSExecutionScope() argument
4280 JsiNativeScope::JsiNativeScope(const EcmaVM *vm) in JsiNativeScope() argument
4282 thread_ = vm->GetAssociatedJSThread(); in JsiNativeScope()
4284 if (vm->IsCollectingScopeLockStats()) { in JsiNativeScope()
4285 const_cast<EcmaVM*>(vm)->IncreaseEnterJsiNativeScopeCount(); in JsiNativeScope()
4286 const_cast<EcmaVM*>(vm)->IncreaseUpdateThreadStateTransCount(); in JsiNativeScope()
4289 if (LIKELY(!vm->IsEnableCMCGC())) { in JsiNativeScope()
4311 JsiFastNativeScope::JsiFastNativeScope(const EcmaVM *vm) in JsiFastNativeScope() argument
4313 thread_ = vm->GetAssociatedJSThread(); in JsiFastNativeScope()
4315 if (vm->IsCollectingScopeLockStats()) { in JsiFastNativeScope()
4316 const_cast<EcmaVM*>(vm)->IncreaseEnterFastNativeScopeCount(); in JsiFastNativeScope()
4317 const_cast<EcmaVM*>(vm)->IncreaseUpdateThreadStateTransCount(); in JsiFastNativeScope()
4320 if (LIKELY(!vm->IsEnableCMCGC())) { in JsiFastNativeScope()
4362 PatchErrorCode JSNApi::LoadPatch(EcmaVM *vm, const std::string &patchFileName, const std::string &b… in LoadPatch() argument
4364 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, PatchErrorCode::INTERNAL_ERROR); in LoadPatch()
4366 ecmascript::QuickFixManager *quickFixManager = vm->GetQuickFixManager(); in LoadPatch()
4370 PatchErrorCode JSNApi::LoadPatch(EcmaVM *vm, in LoadPatch() argument
4374 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, PatchErrorCode::INTERNAL_ERROR); in LoadPatch()
4376 ecmascript::QuickFixManager *quickFixManager = vm->GetQuickFixManager(); in LoadPatch()
4381 PatchErrorCode JSNApi::UnloadPatch(EcmaVM *vm, const std::string &patchFileName) in UnloadPatch() argument
4383 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, PatchErrorCode::INTERNAL_ERROR); in UnloadPatch()
4385 ecmascript::QuickFixManager *quickFixManager = vm->GetQuickFixManager(); in UnloadPatch()
4392 bool JSNApi::IsQuickFixCausedException(EcmaVM *vm, Local<ObjectRef> exception, const std::string &p… in IsQuickFixCausedException() argument
4397 CROSS_THREAD_CHECK(vm); in IsQuickFixCausedException()
4399 ecmascript::QuickFixManager *quickFixManager = vm->GetQuickFixManager(); in IsQuickFixCausedException()
4407 void JSNApi::RegisterQuickFixQueryFunc(EcmaVM *vm, std::function<bool(std::string baseFileName, in RegisterQuickFixQueryFunc() argument
4412 CROSS_THREAD_CHECK(vm); in RegisterQuickFixQueryFunc()
4413 ecmascript::QuickFixManager *quickFixManager = vm->GetQuickFixManager(); in RegisterQuickFixQueryFunc()
4417 bool JSNApi::IsBundle(EcmaVM *vm) in IsBundle() argument
4419 return vm->IsBundlePack(); in IsBundle()
4422 void JSNApi::SetBundle(EcmaVM *vm, bool value) in SetBundle() argument
4424 vm->SetIsBundlePack(value); in SetBundle()
4427 bool JSNApi::IsNormalizedOhmUrlPack(EcmaVM *vm) in IsNormalizedOhmUrlPack() argument
4429 return vm->IsNormalizedOhmUrlPack(); in IsNormalizedOhmUrlPack()
4437 void JSNApi::SetModuleInfo(EcmaVM *vm, const std::string &assetPath, const std::string &entryPoint) in SetModuleInfo() argument
4439 SetAssetPath(vm, assetPath); in SetModuleInfo()
4442 SetBundleName(vm, entryPoint.substr(0, pos)); in SetModuleInfo()
4445 SetModuleName(vm, moduleName.c_str()); in SetModuleInfo()
4451 Local<StringRef> message = StringRef::NewFromUtf8(vm, errmsg.c_str()); in SetModuleInfo()
4452 Local<JSValueRef> error = Exception::Error(vm, message); in SetModuleInfo()
4453 JSNApi::ThrowException(vm, error); in SetModuleInfo()
4457 void JSNApi::SetAssetPath(EcmaVM *vm, const std::string &assetPath) in SetAssetPath() argument
4466 vm->SetAssetPath(path); in SetAssetPath()
4469 void JSNApi::SetLoop(EcmaVM *vm, void *loop) in SetLoop() argument
4471 vm->SetLoop(loop); in SetLoop()
4474 void JSNApi::SetWeakFinalizeTaskCallback(EcmaVM *vm, const WeakFinalizeTaskCallback &callback) in SetWeakFinalizeTaskCallback() argument
4476 vm->GetAssociatedJSThread()->SetWeakFinalizeTaskCallback(callback); in SetWeakFinalizeTaskCallback()
4479 void JSNApi::SetAsyncCleanTaskCallback(EcmaVM *vm, const NativePointerTaskCallback &callback) in SetAsyncCleanTaskCallback() argument
4481 vm->GetAssociatedJSThread()->SetAsyncCleanTaskCallback(callback); in SetAsyncCleanTaskCallback()
4484 void JSNApi::SetTriggerGCTaskCallback(EcmaVM *vm, const TriggerGCTaskCallback& callback) in SetTriggerGCTaskCallback() argument
4486 vm->GetHeap()->GetIdleGCTrigger()->SetTriggerGCTaskCallback(callback); in SetTriggerGCTaskCallback()
4489 std::string JSNApi::GetAssetPath(EcmaVM *vm) in GetAssetPath() argument
4491 return vm->GetAssetPath().c_str(); in GetAssetPath()
4494 void JSNApi::SetMockModuleList(EcmaVM *vm, const std::map<std::string, std::string> &list) in SetMockModuleList() argument
4496 vm->SetMockModuleList(list); in SetMockModuleList()
4499 void JSNApi::SetHmsModuleList(EcmaVM *vm, const std::vector<panda::HmsMap> &list) in SetHmsModuleList() argument
4501 vm->SetHmsModuleList(list); in SetHmsModuleList()
4504 void JSNApi::SetPkgAliasList(EcmaVM *vm, const std::map<std::string, std::string> &list) in SetPkgAliasList() argument
4510 vm->SetPkgAliasList(pkgAliasList); in SetPkgAliasList()
4513 void JSNApi::UpdatePkgAliasList(EcmaVM *vm, const std::map<std::string, std::string> &list) in UpdatePkgAliasList() argument
4519 vm->UpdatePkgAliasList(pkgAliasList); in UpdatePkgAliasList()
4520 ecmascript::CMap<uint32_t, EcmaVM *> workerList = vm->GetWorkList(); in UpdatePkgAliasList()
4526 void JSNApi::SetPkgNameList(EcmaVM *vm, const std::map<std::string, std::string> &list) in SetPkgNameList() argument
4532 vm->SetPkgNameList(pkgNameList); in SetPkgNameList()
4535 void JSNApi::UpdatePkgNameList(EcmaVM *vm, const std::map<std::string, std::string> &list) in UpdatePkgNameList() argument
4541 vm->UpdatePkgNameList(pkgNameList); in UpdatePkgNameList()
4542 ecmascript::CMap<uint32_t, EcmaVM *> workerList = vm->GetWorkList(); in UpdatePkgNameList()
4548 std::string JSNApi::GetPkgName(EcmaVM *vm, const std::string &moduleName) in GetPkgName() argument
4550 return vm->GetPkgName(moduleName.c_str()).c_str(); in GetPkgName()
4553 void JSNApi::SetpkgContextInfoList(EcmaVM *vm, const std::map<std::string, in SetpkgContextInfoList() argument
4571 vm->SetpkgContextInfoList(pkgContextInfoList); in SetpkgContextInfoList()
4574 void JSNApi::UpdatePkgContextInfoList(EcmaVM *vm, in UpdatePkgContextInfoList() argument
4594 vm->UpdatePkgContextInfoList(pkgContextInfoList); in UpdatePkgContextInfoList()
4596 ecmascript::CMap<uint32_t, EcmaVM *> workerList = vm->GetWorkList(); in UpdatePkgContextInfoList()
4602 void JSNApi::SetExecuteBufferMode(const EcmaVM *vm) in SetExecuteBufferMode() argument
4605 vm->GetAssociatedJSThread()->GetModuleManager(); in SetExecuteBufferMode()
4609 void JSNApi::SetStopPreLoadSoCallback(EcmaVM *vm, const StopPreLoadSoCallback &callback) in SetStopPreLoadSoCallback() argument
4611 vm->AddStopPreLoadCallback(callback); in SetStopPreLoadSoCallback()
4614 bool JSNApi::InitForConcurrentThread(EcmaVM *vm, ConcurrentCallback cb, void *data) in InitForConcurrentThread() argument
4616 vm->SetConcurrentCallback(cb, data); in InitForConcurrentThread()
4621 bool JSNApi::InitForConcurrentFunction(EcmaVM *vm, Local<JSValueRef> function, void *taskInfo) in InitForConcurrentFunction() argument
4623 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, false); in InitForConcurrentFunction()
4625 [[maybe_unused]] LocalScope scope(vm); in InitForConcurrentFunction()
4639 void* JSNApi::GetCurrentTaskInfo(const EcmaVM *vm) in GetCurrentTaskInfo() argument
4641 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, nullptr); in GetCurrentTaskInfo()
4645 void JSNApi::ClearCurrentTaskInfo(const EcmaVM *vm) in ClearCurrentTaskInfo() argument
4647 JSThread *thread = vm->GetJSThread(); in ClearCurrentTaskInfo()
4660 void JSNApi::SetBundleName(EcmaVM *vm, const std::string &bundleName) in SetBundleName() argument
4663 vm->SetBundleName(name); in SetBundleName()
4666 std::string JSNApi::GetBundleName(EcmaVM *vm) in GetBundleName() argument
4668 return vm->GetBundleName().c_str(); in GetBundleName()
4671 void JSNApi::SetModuleName(EcmaVM *vm, const std::string &moduleName) in SetModuleName() argument
4675 vm->SetModuleName(name); in SetModuleName()
4678 std::string JSNApi::GetModuleName(EcmaVM *vm) in GetModuleName() argument
4680 return vm->GetModuleName().c_str(); in GetModuleName()
4683 std::pair<std::string, std::string> JSNApi::GetCurrentModuleInfo(EcmaVM *vm, bool needRecordName) in GetCurrentModuleInfo() argument
4685 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in GetCurrentModuleInfo()
4686 return vm->GetCurrentModuleInfo(needRecordName); in GetCurrentModuleInfo()
4695 void JSNApi::AllowCrossThreadExecution(EcmaVM *vm) in AllowCrossThreadExecution() argument
4698 vm->GetAssociatedJSThread()->EnableCrossThreadExecution(); in AllowCrossThreadExecution()
4702 bool JSNApi::CheckAndSetAllowCrossThreadExecution(EcmaVM *vm) in CheckAndSetAllowCrossThreadExecution() argument
4707 if (vm->GetHeap()->InGC() || SharedHeap::GetInstance()->InGC()) { in CheckAndSetAllowCrossThreadExecution()
4711 vm->GetAssociatedJSThread()->EnableCrossThreadExecution(); in CheckAndSetAllowCrossThreadExecution()
4716 void* JSNApi::GetEnv(EcmaVM *vm) in GetEnv() argument
4718 JSThread *thread = vm->GetJSThread(); in GetEnv()
4722 void JSNApi::SetEnv(EcmaVM *vm, void *env) in SetEnv() argument
4724 JSThread *thread = vm->GetJSThread(); in SetEnv()
4728 void JSNApi::SynchronizVMInfo(EcmaVM *vm, const EcmaVM *hostVM) in SynchronizVMInfo() argument
4731 vm->SetBundleName(hostVM->GetBundleName()); in SynchronizVMInfo()
4732 vm->SetModuleName(hostVM->GetModuleName()); in SynchronizVMInfo()
4733 vm->SetAssetPath(hostVM->GetAssetPath()); in SynchronizVMInfo()
4734 vm->SetIsBundlePack(hostVM->IsBundlePack()); in SynchronizVMInfo()
4735 vm->SetPkgNameList(const_cast<EcmaVM *>(hostVM)->GetPkgNameList()); in SynchronizVMInfo()
4736 vm->SetPkgAliasList(const_cast<EcmaVM *>(hostVM)->GetPkgAliasList()); in SynchronizVMInfo()
4737 vm->SetpkgContextInfoList(const_cast<EcmaVM *>(hostVM)->GetPkgContextInfoList()); in SynchronizVMInfo()
4740 vm->GetAssociatedJSThread()->GetModuleManager(); in SynchronizVMInfo()
4744 vm->SetResolveBufferCallback(hostVM->GetResolveBufferCallback()); in SynchronizVMInfo()
4745 vm->SetResolveBufferCallbackForHybridApp(hostVM->GetResolveBufferCallbackForHybridApp()); in SynchronizVMInfo()
4748 bool JSNApi::IsProfiling(EcmaVM *vm) in IsProfiling() argument
4750 return vm->GetProfilerState(); in IsProfiling()
4753 void JSNApi::SetProfilerState(const EcmaVM *vm, bool value) in SetProfilerState() argument
4755 const_cast<EcmaVM*>(vm)->SetProfilerState(value); in SetProfilerState()
4758 void JSNApi::SetSourceMapTranslateCallback(EcmaVM *vm, SourceMapTranslateCallback callback) in SetSourceMapTranslateCallback() argument
4760 vm->SetSourceMapTranslateCallback(callback); in SetSourceMapTranslateCallback()
4763 void JSNApi::SetSourceMapCallback(EcmaVM *vm, SourceMapCallback callback) in SetSourceMapCallback() argument
4765 vm->SetSourceMapCallback(callback); in SetSourceMapCallback()
4768 void JSNApi::GetStackBeforeCallNapiSuccess([[maybe_unused]] EcmaVM *vm, in GetStackBeforeCallNapiSuccess() argument
4772 JSThread *thread = vm->GetJSThread(); in GetStackBeforeCallNapiSuccess()
4775 getStackBeforeCallNapiSuccess = vm->GetProfiler()->GetStackBeforeCallNapi(thread); in GetStackBeforeCallNapiSuccess()
4780 void JSNApi::GetStackAfterCallNapi([[maybe_unused]] EcmaVM *vm) in GetStackAfterCallNapi() argument
4783 JSThread *thread = vm->GetJSThread(); in GetStackAfterCallNapi()
4786 vm->GetProfiler()->GetStackAfterCallNapi(thread); in GetStackAfterCallNapi()
4849 void JSNApi::TriggerGC(const EcmaVM *vm, TRIGGER_GC_TYPE gcType) in TriggerGC() argument
4851 TriggerGC(vm, ecmascript::GCReason::EXTERNAL_TRIGGER, gcType); in TriggerGC()
4854 void JSNApi::TriggerGC(const EcmaVM *vm, ecmascript::GCReason reason, TRIGGER_GC_TYPE gcType) in TriggerGC() argument
4856 CROSS_THREAD_CHECK(vm); in TriggerGC()
4858 if (thread != nullptr && vm->IsInitialized()) { in TriggerGC()
4880 vm->CollectGarbage(vm->GetHeap()->SelectGCType(), reason); in TriggerGC()
4883 vm->CollectGarbage(ecmascript::TriggerGCType::OLD_GC, reason); in TriggerGC()
4886 vm->CollectGarbage(ecmascript::TriggerGCType::FULL_GC, reason); in TriggerGC()
4903 void JSNApi::HintGC(const EcmaVM *vm, MemoryReduceDegree degree, ecmascript::GCReason reason) in HintGC() argument
4905 CROSS_THREAD_CHECK(vm); in HintGC()
4907 if (thread != nullptr && vm->IsInitialized()) { in HintGC()
4908 const_cast<ecmascript::Heap *>(vm->GetHeap())->CheckAndTriggerHintGC(degree, reason); in HintGC()
4912 void JSNApi::TriggerIdleGC(const EcmaVM *vm, TRIGGER_IDLE_GC_TYPE gcType) in TriggerIdleGC() argument
4914 CROSS_THREAD_CHECK(vm); in TriggerIdleGC()
4915 if (thread != nullptr && vm->IsInitialized()) { in TriggerIdleGC()
4917 vm->GetHeap()->GetIdleGCTrigger()->TryTriggerIdleGC(gcType); in TriggerIdleGC()
4931 void JSNApi::ThrowException(const EcmaVM *vm, Local<JSValueRef> error) in ThrowException() argument
4933 auto thread = vm->GetJSThread(); in ThrowException()
4942 void JSNApi::PrintExceptionInfo(const EcmaVM *vm) in PrintExceptionInfo() argument
4944 JSThread* thread = vm->GetJSThread(); in PrintExceptionInfo()
4948 if (!HasPendingException(vm)) { in PrintExceptionInfo()
4951 Local<ObjectRef> exception = GetAndClearUncaughtException(vm); in PrintExceptionInfo()
4955 ThrowException(vm, exception); in PrintExceptionInfo()
4961 ThrowException(vm, exception); in PrintExceptionInfo()
4964 void JSNApi::SetOnErrorCallback(EcmaVM *vm, OnErrorCallback cb, void* data) in SetOnErrorCallback() argument
4966 JSThread* thread = vm->GetJSThread(); in SetOnErrorCallback()
4971 bool JSNApi::StartDebuggerCheckParameters(EcmaVM *vm, const DebugOption &option, int32_t instanceId, in StartDebuggerCheckParameters() argument
4974 if (vm == nullptr) { in StartDebuggerCheckParameters()
4975 LOG_ECMA(ERROR) << "[StartDebugger] vm is nullptr"; in StartDebuggerCheckParameters()
4983 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, false); in StartDebuggerCheckParameters()
4984 const auto &handler = vm->GetJsDebuggerManager()->GetDebugLibraryHandle(); in StartDebuggerCheckParameters()
5006 vm->GetJsDebuggerManager()->SetDebugMode(option.isDebugMode); in StartDebuggerCheckParameters()
5007 vm->GetJsDebuggerManager()->SetIsDebugApp(true); in StartDebuggerCheckParameters()
5008 vm->GetJsDebuggerManager()->SetDebugLibraryHandle(std::move(handle.Value())); in StartDebuggerCheckParameters()
5009 vm->GetJsDebuggerManager()->SetFaApp(option.isFaApp); in StartDebuggerCheckParameters()
5011 "PandaDebugger", vm, option.isDebugMode, instanceId, debuggerPostTask, option.port); in StartDebuggerCheckParameters()
5014 vm->GetJsDebuggerManager()->SetDebugMode(false); in StartDebuggerCheckParameters()
5016 vm->GetJsDebuggerManager()->SetDebugLibraryHandle(std::move(libraryHandle)); in StartDebuggerCheckParameters()
5023 bool JSNApi::StartDebugger([[maybe_unused]] EcmaVM *vm, [[maybe_unused]] const DebugOption &option, in StartDebugger() argument
5031 return StartDebuggerCheckParameters(vm, option, instanceId, debuggerPostTask); in StartDebugger()
5033 if (vm == nullptr) { in StartDebugger()
5036 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, false); in StartDebugger()
5037 vm->GetJsDebuggerManager()->SetDebugMode(option.isDebugMode); in StartDebugger()
5038 vm->GetJsDebuggerManager()->SetFaApp(option.isFaApp); in StartDebugger()
5040 DEBUGGER_NAME, vm, option.isDebugMode, instanceId, debuggerPostTask, option.port); in StartDebugger()
5043 vm->GetJsDebuggerManager()->SetDebugMode(false); in StartDebugger()
5055 bool JSNApi::StartDebuggerForOldProcess([[maybe_unused]] EcmaVM *vm, [[maybe_unused]] const DebugOp… in StartDebuggerForOldProcess() argument
5063 if (vm == nullptr) { in StartDebuggerForOldProcess()
5064 LOG_ECMA(ERROR) << "[StartDebuggerForOldProcess] vm is nullptr"; in StartDebuggerForOldProcess()
5067 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, false); in StartDebuggerForOldProcess()
5068 const auto &handle = vm->GetJsDebuggerManager()->GetDebugLibraryHandle(); in StartDebuggerForOldProcess()
5084 "PandaDebugger", vm, option.isDebugMode, instanceId, debuggerPostTask, option.port); in StartDebuggerForOldProcess()
5087 vm->GetJsDebuggerManager()->SetDebugMode(false); in StartDebuggerForOldProcess()
5089 vm->GetJsDebuggerManager()->SetDebugLibraryHandle(std::move(libraryHandle)); in StartDebuggerForOldProcess()
5093 if (vm == nullptr) { in StartDebuggerForOldProcess()
5094 LOG_ECMA(ERROR) << "[StartDebuggerForOldProcess] vm is nullptr"; in StartDebuggerForOldProcess()
5097 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, false); in StartDebuggerForOldProcess()
5098 vm->GetJsDebuggerManager()->SetDebugMode(option.isDebugMode); in StartDebuggerForOldProcess()
5100 DEBUGGER_NAME, vm, option.isDebugMode, instanceId, debuggerPostTask, option.port); in StartDebuggerForOldProcess()
5103 vm->GetJsDebuggerManager()->SetDebugMode(false); in StartDebuggerForOldProcess()
5159 [[maybe_unused]] EcmaVM *vm, in NotifyDebugMode() argument
5168 if (vm == nullptr) { in NotifyDebugMode()
5169 LOG_ECMA(ERROR) << "[NotifyDebugMode] vm is nullptr"; in NotifyDebugMode()
5172 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, false); in NotifyDebugMode()
5183 JsDebuggerManager *jsDebuggerManager = vm->GetJsDebuggerManager(); in NotifyDebugMode()
5195 ret = StartDebuggerForOldProcess(vm, option, instanceId, debuggerPostTask); in NotifyDebugMode()
5209 reinterpret_cast<StoreDebuggerInfo>(symOfStoreDebuggerInfo.Value())(tid, vm, debuggerPostTask); in NotifyDebugMode()
5222 if (!reinterpret_cast<InitializeDebuggerForSocketpair>(sym.Value())(vm, false)) { in NotifyDebugMode()
5237 reinterpret_cast<WaitForDebugger>(symOfWaitForDebugger.Value())(vm); in NotifyDebugMode()
5252 [[maybe_unused]] EcmaVM *vm, in StoreDebugInfo() argument
5259 if (vm == nullptr) { in StoreDebugInfo()
5260 LOG_ECMA(ERROR) << "[StoreDebugInfo] vm is nullptr"; in StoreDebugInfo()
5264 JsDebuggerManager *jsDebuggerManager = vm->GetJsDebuggerManager(); in StoreDebugInfo()
5293 reinterpret_cast<StoreDebuggerInfo>(symOfStoreDebuggerInfo.Value())(tid, vm, debuggerPostTask); in StoreDebugInfo()
5302 ret = reinterpret_cast<InitializeDebuggerForSocketpair>(sym.Value())(vm, false); in StoreDebugInfo()
5305 vm->GetJsDebuggerManager()->SetDebugMode(false); in StoreDebugInfo()
5315 bool JSNApi::StopDebugger([[maybe_unused]] EcmaVM *vm) in StopDebugger() argument
5320 if (vm == nullptr) { in StopDebugger()
5321 LOG_ECMA(ERROR) << "[StopDebugger] vm is nullptr"; in StopDebugger()
5324 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, false); in StopDebugger()
5326 const auto &handle = vm->GetJsDebuggerManager()->GetDebugLibraryHandle(); in StopDebugger()
5336 reinterpret_cast<StopDebug>(sym.Value())(vm, false); in StopDebugger()
5338 vm->GetJsDebuggerManager()->SetDebugMode(false); in StopDebugger()
5339 uint32_t tid = vm->GetTid(); in StopDebugger()
5343 if (vm == nullptr) { in StopDebugger()
5344 LOG_ECMA(ERROR) << "[StopDebugger] vm is nullptr"; in StopDebugger()
5347 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, false); in StopDebugger()
5349 OHOS::ArkCompiler::Toolchain::StopDebug(vm); in StopDebugger()
5350 vm->GetJsDebuggerManager()->SetDebugMode(false); in StopDebugger()
5388 bool JSNApi::IsMixedDebugEnabled([[maybe_unused]] const EcmaVM *vm) in IsMixedDebugEnabled() argument
5391 return vm->GetJsDebuggerManager()->IsMixedDebugEnabled(); in IsMixedDebugEnabled()
5397 bool JSNApi::IsDebugModeEnabled([[maybe_unused]] const EcmaVM *vm) in IsDebugModeEnabled() argument
5400 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, false); in IsDebugModeEnabled()
5401 if (vm != nullptr && vm->GetJsDebuggerManager() != nullptr) { in IsDebugModeEnabled()
5402 return vm->GetJsDebuggerManager()->IsDebugMode(); in IsDebugModeEnabled()
5411 void JSNApi::NotifyNativeCalling([[maybe_unused]] const EcmaVM *vm, [[maybe_unused]] const void *na… in NotifyNativeCalling() argument
5414 CROSS_THREAD_AND_EXCEPTION_CHECK(vm); in NotifyNativeCalling()
5415 vm->GetJsDebuggerManager()->GetNotificationManager()->NativeCallingEvent(nativeAddress); in NotifyNativeCalling()
5421 void JSNApi::NotifyNativeReturn([[maybe_unused]] const EcmaVM *vm, [[maybe_unused]] const void *na… in NotifyNativeReturn() argument
5424 CROSS_THREAD_AND_EXCEPTION_CHECK(vm); in NotifyNativeReturn()
5425 vm->GetJsDebuggerManager()->GetNotificationManager()->NativeReturnEvent(nativeAddress); in NotifyNativeReturn()
5431 void JSNApi::NotifyLoadModule([[maybe_unused]] const EcmaVM *vm) in NotifyLoadModule() argument
5434 CROSS_THREAD_AND_EXCEPTION_CHECK(vm); in NotifyLoadModule()
5436 vm->GetJsDebuggerManager()->ClearSingleStepper(); in NotifyLoadModule()
5442 void JSNApi::NotifyUIIdle(const EcmaVM *vm, [[maybe_unused]] int idleTime) in NotifyUIIdle() argument
5444 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in NotifyUIIdle()
5445 vm->GetHeap()->GetIdleGCTrigger()->NotifyVsyncIdleStart(); in NotifyUIIdle()
5448 bool JSNApi::NotifyLooperIdleStart(const EcmaVM *vm, int64_t timestamp, int idleTime) in NotifyLooperIdleStart() argument
5450 if (vm->IsPostForked()) { in NotifyLooperIdleStart()
5451 return vm->GetHeap()->GetIdleGCTrigger()->NotifyLooperIdleStart(timestamp, idleTime); in NotifyLooperIdleStart()
5456 void JSNApi::NotifyLooperIdleEnd(const EcmaVM *vm, int64_t timestamp) in NotifyLooperIdleEnd() argument
5458 if (vm->IsPostForked()) { in NotifyLooperIdleEnd()
5459 vm->GetHeap()->GetIdleGCTrigger()->NotifyLooperIdleEnd(timestamp); in NotifyLooperIdleEnd()
5463 bool JSNApi::IsJSMainThreadOfEcmaVM(const EcmaVM *vm) in IsJSMainThreadOfEcmaVM() argument
5465 return vm->GetJSThread()->IsMainThreadFast(); in IsJSMainThreadOfEcmaVM()
5468 void JSNApi::SetDeviceDisconnectCallback(EcmaVM *vm, DeviceDisconnectCallback cb) in SetDeviceDisconnectCallback() argument
5470 vm->SetDeviceDisconnectCallback(cb); in SetDeviceDisconnectCallback()
5486 bool JSNApi::IsSerializationTimeoutCheckEnabled(const EcmaVM *vm) in IsSerializationTimeoutCheckEnabled() argument
5488 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, false); in IsSerializationTimeoutCheckEnabled()
5490 if (const_cast<EcmaVM *>(vm)->GetJSOptions().EnableSerializationTimeoutCheck()) { in IsSerializationTimeoutCheckEnabled()
5495 auto jsDebuggerManager = vm->GetJsDebuggerManager(); in IsSerializationTimeoutCheckEnabled()
5504 void JSNApi::GenerateTimeoutTraceIfNeeded(const EcmaVM *vm, std::chrono::system_clock::time_point &… in GenerateTimeoutTraceIfNeeded() argument
5507 CROSS_THREAD_AND_EXCEPTION_CHECK(vm); in GenerateTimeoutTraceIfNeeded()
5511 … (std::chrono::milliseconds(vm->GetJsDebuggerManager()->GetSerializationCheckThreshold())).count(); in GenerateTimeoutTraceIfNeeded()
5525 void JSNApi::LoadAotFile(EcmaVM *vm, const std::string &moduleName) in LoadAotFile() argument
5527 CROSS_THREAD_AND_EXCEPTION_CHECK(vm); in LoadAotFile()
5530 std::string aotFileName = ecmascript::AOTFileManager::GetAOTFileFullPath(vm, moduleName); in LoadAotFile()
5537 vm->DisablePGOProfilerWithAOTFile(aotFileName); in LoadAotFile()
5540 vm->LoadAOTFiles(aotFileName); in LoadAotFile()
5544 void JSNApi::LoadAotFile(EcmaVM *vm, [[maybe_unused]] const std::string &bundleName, const std::str… in LoadAotFile() argument
5547 CROSS_THREAD_AND_EXCEPTION_CHECK(vm); in LoadAotFile()
5550 std::string aotFileName = ecmascript::AOTFileManager::GetAOTFileFullPath(vm, moduleName); in LoadAotFile()
5556 vm->LoadAOTFiles(aotFileName, cb); in LoadAotFile()
5561 bool JSNApi::ExecuteForAbsolutePath(const EcmaVM *vm, const std::string &fileName, const std::strin… in ExecuteForAbsolutePath() argument
5564 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, false); in ExecuteForAbsolutePath()
5580 bool JSNApi::Execute(const EcmaVM *vm, const std::string &fileName, const std::string &entry, in Execute() argument
5583 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, false); in Execute()
5600 bool JSNApi::Execute(EcmaVM *vm, const uint8_t *data, int32_t size, const std::string &entry, in Execute() argument
5603 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, false); in Execute()
5618 int JSNApi::ExecuteWithSingletonPatternFlag(EcmaVM *vm, const std::string &bundleName, in ExecuteWithSingletonPatternFlag() argument
5621 …CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, ecmascript::JSPandaFileExecutor::ROUTE_INTERNAL_E… in ExecuteWithSingletonPatternFlag()
5634 bool JSNApi::IsExecuteModuleInAbcFile(EcmaVM *vm, const std::string &bundleName, in IsExecuteModuleInAbcFile() argument
5637 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, false); in IsExecuteModuleInAbcFile()
5645 bool JSNApi::ExecuteModuleBuffer(EcmaVM *vm, const uint8_t *data, int32_t size, const std::string &… in ExecuteModuleBuffer() argument
5648 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, false); in ExecuteModuleBuffer()
5669 bool JSNApi::ExecuteSecureWithOhmUrl(EcmaVM *vm, uint8_t *data, int32_t size, const std::string &sr… in ExecuteSecureWithOhmUrl() argument
5672 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, false); in ExecuteSecureWithOhmUrl()
5703 bool JSNApi::ExecuteSecure(EcmaVM *vm, uint8_t *data, int32_t size, const std::string &entry, in ExecuteSecure() argument
5706 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, false); in ExecuteSecure()
5722 bool JSNApi::ExecuteModuleBufferSecure(EcmaVM *vm, uint8_t* data, int32_t size, const std::string &… in ExecuteModuleBufferSecure() argument
5725 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, false); in ExecuteModuleBufferSecure()
5740 void JSNApi::PreFork(EcmaVM *vm) in PreFork() argument
5742 ecmascript::ThreadManagedScope scope(vm->GetJSThread()); in PreFork()
5743 vm->PreFork(); in PreFork()
5761 void JSNApi::PostFork(EcmaVM *vm, const RuntimeOption &option) in PostFork() argument
5764 JSRuntimeOptions &jsOption = vm->GetJSOptions(); in PostFork()
5793 vm->PostFork(jsOption); in PostFork()
5812 Local<ObjectRef> JSNApi::GetUncaughtException(const EcmaVM *vm) in GetUncaughtException() argument
5814 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in GetUncaughtException()
5815 return JSNApiHelper::ToLocal<ObjectRef>(vm->GetEcmaUncaughtException()); in GetUncaughtException()
5818 Local<ObjectRef> JSNApi::GetAndClearUncaughtException(const EcmaVM *vm) in GetAndClearUncaughtException() argument
5820 if (LIKELY(!HasPendingException(vm))) { in GetAndClearUncaughtException()
5823 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in GetAndClearUncaughtException()
5824 return JSNApiHelper::ToLocal<ObjectRef>(vm->GetAndClearEcmaUncaughtException()); in GetAndClearUncaughtException()
5827 bool JSNApi::HasPendingException(const EcmaVM *vm) in HasPendingException() argument
5829 return vm->GetJSThread()->HasPendingException(); in HasPendingException()
5832 bool JSNApi::IsExecutingPendingJob(const EcmaVM *vm) in IsExecutingPendingJob() argument
5834 return EcmaVM::ConstCast(vm)->IsExecutingPendingJob(); in IsExecutingPendingJob()
5837 bool JSNApi::HasPendingJob(const EcmaVM *vm) in HasPendingJob() argument
5839 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in HasPendingJob()
5840 return EcmaVM::ConstCast(vm)->HasPendingJob(); in HasPendingJob()
5843 void JSNApi::EnableUserUncaughtErrorHandler(EcmaVM *vm) in EnableUserUncaughtErrorHandler() argument
5845 return vm->GetJSThread()->EnableUserUncaughtErrorHandler(); in EnableUserUncaughtErrorHandler()
5848 Local<ObjectRef> JSNApi::GetGlobalObject(const EcmaVM *vm) in GetGlobalObject() argument
5850 auto thread = vm->GetJSThread(); in GetGlobalObject()
5852 JSHandle<GlobalEnv> globalEnv = vm->GetGlobalEnv(); in GetGlobalObject()
5857 Local<ObjectRef> JSNApi::GetGlobalObject(const EcmaVM *vm, const Local<JSValueRef> &context) in GetGlobalObject() argument
5859 JSThread* thread = vm->GetJSThread(); in GetGlobalObject()
5861 if (!context->IsJsGlobalEnv(vm)) { in GetGlobalObject()
5862 return JSValueRef::Undefined(vm); in GetGlobalObject()
5869 void JSNApi::ExecutePendingJob(const EcmaVM *vm) in ExecutePendingJob() argument
5871 CROSS_THREAD_AND_EXCEPTION_CHECK(vm); in ExecutePendingJob()
5873 EcmaVM::ConstCast(vm)->ExecutePromisePendingJob(); in ExecutePendingJob()
5876 uintptr_t JSNApi::GetHandleAddr(const EcmaVM *vm, uintptr_t localAddress) in GetHandleAddr() argument
5881 CROSS_THREAD_CHECK(vm); in GetHandleAddr()
5887 uintptr_t JSNApi::GetGlobalHandleAddr(const EcmaVM *vm, uintptr_t localAddress) in GetGlobalHandleAddr() argument
5892 CROSS_THREAD_CHECK(vm); in GetGlobalHandleAddr()
5898 int JSNApi::GetStartRealTime(const EcmaVM *vm) in GetStartRealTime() argument
5900 ecmascript::ThreadManagedScope scope(vm->GetJSThread()); in GetStartRealTime()
5901 return vm->GetProcessStartRealtime(); in GetStartRealTime()
5904 void JSNApi::NotifyTaskBegin(const EcmaVM *vm) in NotifyTaskBegin() argument
5906 const_cast<ecmascript::Heap *>(vm->GetHeap())->NotifyRecordMemorySize(); in NotifyTaskBegin()
5909 void JSNApi::NotifyTaskFinished(const EcmaVM *vm) in NotifyTaskFinished() argument
5911 ecmascript::ThreadManagedScope scope(vm->GetJSThread()); in NotifyTaskFinished()
5912 const_cast<ecmascript::Heap *>(vm->GetHeap())->CheckAndTriggerTaskFinishedGC(); in NotifyTaskFinished()
5915 bool JSNApi::IsMultiThreadCheckEnabled(const EcmaVM *vm) in IsMultiThreadCheckEnabled() argument
5917 return vm->GetThreadCheckStatus(); in IsMultiThreadCheckEnabled()
5925 void JSNApi::SetVMAPIVersion(EcmaVM *vm, const int32_t apiVersion) in SetVMAPIVersion() argument
5927 vm->SetVMAPIVersion(static_cast<uint32_t>(apiVersion) % API_VERSION_MASK); in SetVMAPIVersion()
5930 void JSNApi::UpdateStackInfo(EcmaVM *vm, void *currentStackInfo, uint32_t opKind) in UpdateStackInfo() argument
5932vm->GetJSThread()->UpdateStackInfo(currentStackInfo, static_cast<ecmascript::JSThread::StackInfoOp… in UpdateStackInfo()
5935 Local<JSValueRef> JSNApi::CreateContext(const EcmaVM *vm) in CreateContext() argument
5937 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in CreateContext()
5940 ObjectFactory *factory = vm->GetFactory(); in CreateContext()
5945 Local<JSValueRef> JSNApi::GetCurrentContext(const EcmaVM *vm) in GetCurrentContext() argument
5947 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in GetCurrentContext()
5954 void JSNApi::SwitchContext(const EcmaVM *vm, const Local<JSValueRef> &context) in SwitchContext() argument
5956 CROSS_THREAD_AND_EXCEPTION_CHECK(vm); in SwitchContext()
5963 uintptr_t JSNApi::SetWeak(const EcmaVM *vm, uintptr_t localAddress) in SetWeak() argument
5968 ecmascript::ThreadManagedScope scope(vm->GetJSThread()); in SetWeak()
5969 CROSS_THREAD_CHECK(vm); in SetWeak()
5973 uintptr_t JSNApi::SetWeakCallback(const EcmaVM *vm, uintptr_t localAddress, void *ref, in SetWeakCallback() argument
5979 ecmascript::ThreadManagedScope scope(vm->GetJSThread()); in SetWeakCallback()
5980 CROSS_THREAD_CHECK(vm); in SetWeakCallback()
5984 uintptr_t JSNApi::ClearWeak(const EcmaVM *vm, uintptr_t localAddress) in ClearWeak() argument
5989 ecmascript::ThreadManagedScope scope(vm->GetJSThread()); in ClearWeak()
5995 CROSS_THREAD_CHECK(vm); in ClearWeak()
5999 bool JSNApi::IsWeak(const EcmaVM *vm, uintptr_t localAddress) in IsWeak() argument
6004 CROSS_THREAD_CHECK(vm); in IsWeak()
6009 void JSNApi::DisposeGlobalHandleAddr(const EcmaVM *vm, uintptr_t addr) in DisposeGlobalHandleAddr() argument
6014 CROSS_THREAD_CHECK(vm); in DisposeGlobalHandleAddr()
6019 void *JSNApi::InterOpSerializeValue(const EcmaVM *vm, Local<JSValueRef> value, Local<JSValueRef> tr… in InterOpSerializeValue() argument
6023 return SerializeValue(vm, value, transfer, cloneList, defaultTransfer, defaultCloneShared); in InterOpSerializeValue()
6025 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, nullptr); in InterOpSerializeValue()
6030 bool serializationTimeoutCheckEnabled = IsSerializationTimeoutCheckEnabled(vm); in InterOpSerializeValue()
6043 GenerateTimeoutTraceIfNeeded(vm, startTime, endTime, true); in InterOpSerializeValue()
6052 Local<JSValueRef> JSNApi::InterOpDeserializeValue(const EcmaVM *vm, void *recoder, void *hint) in InterOpDeserializeValue() argument
6055 return DeserializeValue(vm, recoder, hint); in InterOpDeserializeValue()
6057 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in InterOpDeserializeValue()
6059 EscapeLocalScope escapeScope(vm); in InterOpDeserializeValue()
6062 bool serializationTimeoutCheckEnabled = IsSerializationTimeoutCheckEnabled(vm); in InterOpDeserializeValue()
6071 GenerateTimeoutTraceIfNeeded(vm, startTime, endTime, false); in InterOpDeserializeValue()
6076 void *JSNApi::SerializeValue(const EcmaVM *vm, Local<JSValueRef> value, Local<JSValueRef> transfer, in SerializeValue() argument
6079 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, nullptr); in SerializeValue()
6084 bool serializationTimeoutCheckEnabled = IsSerializationTimeoutCheckEnabled(vm); in SerializeValue()
6097 GenerateTimeoutTraceIfNeeded(vm, startTime, endTime, true); in SerializeValue()
6106 void *JSNApi::SerializeValueWithError(const EcmaVM *vm, Local<JSValueRef> value, Local<JSValueRef> … in SerializeValueWithError() argument
6110 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, nullptr); in SerializeValueWithError()
6115 bool serializationTimeoutCheckEnabled = IsSerializationTimeoutCheckEnabled(vm); in SerializeValueWithError()
6128 GenerateTimeoutTraceIfNeeded(vm, startTime, endTime, true); in SerializeValueWithError()
6138 Local<JSValueRef> JSNApi::DeserializeValue(const EcmaVM *vm, void *recoder, void *hint) in DeserializeValue() argument
6140 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in DeserializeValue()
6142 EscapeLocalScope escapeScope(vm); in DeserializeValue()
6145 bool serializationTimeoutCheckEnabled = IsSerializationTimeoutCheckEnabled(vm); in DeserializeValue()
6154 GenerateTimeoutTraceIfNeeded(vm, startTime, endTime, false); in DeserializeValue()
6166 void HostPromiseRejectionTracker(const EcmaVM *vm, in HostPromiseRejectionTracker() argument
6172 CROSS_THREAD_AND_EXCEPTION_CHECK(vm); in HostPromiseRejectionTracker()
6173 ecmascript::PromiseRejectCallback promiseRejectCallback = vm->GetPromiseRejectCallback(); in HostPromiseRejectionTracker()
6182 void JSNApi::SetHostPromiseRejectionTracker(EcmaVM *vm, void *cb, void* data) in SetHostPromiseRejectionTracker() argument
6184 CROSS_THREAD_CHECK(vm); in SetHostPromiseRejectionTracker()
6185 vm->SetHostPromiseRejectionTracker(HostPromiseRejectionTracker); in SetHostPromiseRejectionTracker()
6186 vm->SetPromiseRejectCallback(reinterpret_cast<ecmascript::PromiseRejectCallback>(cb)); in SetHostPromiseRejectionTracker()
6187 vm->SetPromiseRejectInfoData(data); in SetHostPromiseRejectionTracker()
6190 void JSNApi::SetTimerTaskCallback(EcmaVM *vm, TimerTaskCallback callback) in SetTimerTaskCallback() argument
6192 CROSS_THREAD_CHECK(vm); in SetTimerTaskCallback()
6194 vm->SetTimerTaskCallback(callback); in SetTimerTaskCallback()
6197 void JSNApi::SetCancelTimerCallback(EcmaVM *vm, CancelTimerCallback callback) in SetCancelTimerCallback() argument
6199 CROSS_THREAD_CHECK(vm); in SetCancelTimerCallback()
6201 vm->SetCancelTimerCallback(callback); in SetCancelTimerCallback()
6205 void JSNApi::NotifyEnvInitialized(EcmaVM *vm) in NotifyEnvInitialized() argument
6207 ecmascript::ModuleLogger::SetModuleLoggerTask(vm); in NotifyEnvInitialized()
6217 void JSNApi::PandaFileSerialize(const EcmaVM *vm) in PandaFileSerialize() argument
6219 if (const_cast<EcmaVM *>(vm)->GetJSOptions().DisableJSPandaFileAndModuleSnapshot()) { in PandaFileSerialize()
6223 ecmascript::ohos::JSPandaFileSnapshotInterfaces::Serialize(vm, path); in PandaFileSerialize()
6227 void JSNApi::ModuleSerialize(const EcmaVM *vm) in ModuleSerialize() argument
6229 JSRuntimeOptions &options = const_cast<EcmaVM *>(vm)->GetJSOptions(); in ModuleSerialize()
6234 ecmascript::ohos::ModuleSnapshotInterfaces::Serialize(vm, path); in ModuleSerialize()
6238 void JSNApi::ModuleDeserialize(EcmaVM *vm, const uint32_t appVersion) in ModuleDeserialize() argument
6240 if (vm->GetJSOptions().DisableJSPandaFileAndModuleSnapshot()) { in ModuleDeserialize()
6243 vm->SetApplicationVersionCode(appVersion); in ModuleDeserialize()
6245 ecmascript::ohos::ModuleSnapshotInterfaces::Deserialize(vm, path); in ModuleDeserialize()
6248 void JSNApi::SetHostResolveBufferTracker(EcmaVM *vm, in SetHostResolveBufferTracker() argument
6251 vm->SetResolveBufferCallback(cb); in SetHostResolveBufferTracker()
6254 void JSNApi::SetHostResolveBufferTrackerForHybridApp(EcmaVM *vm, in SetHostResolveBufferTrackerForHybridApp() argument
6257 vm->SetResolveBufferCallbackForHybridApp(cb); in SetHostResolveBufferTrackerForHybridApp()
6261 void JSNApi::SetSearchHapPathTracker(EcmaVM *vm, in SetSearchHapPathTracker() argument
6264 vm->SetSearchHapPathCallBack(cb); in SetSearchHapPathTracker()
6277 void JSNApi::SetRequestAotCallback([[maybe_unused]] EcmaVM *vm, const std::function<int32_t in SetRequestAotCallback() argument
6283 void JSNApi::SetUnloadNativeModuleCallback(EcmaVM *vm, const std::function<bool(const std::string &… in SetUnloadNativeModuleCallback() argument
6285 vm->SetUnloadNativeModuleCallback(cb); in SetUnloadNativeModuleCallback()
6288 void JSNApi::SetNativePtrGetter(EcmaVM *vm, void* cb) in SetNativePtrGetter() argument
6290 vm->SetNativePtrGetter(reinterpret_cast<ecmascript::NativePtrGetter>(cb)); in SetNativePtrGetter()
6293 void JSNApi::SetHostEnqueueJob(const EcmaVM *vm, Local<JSValueRef> cb, QueueType queueType) in SetHostEnqueueJob() argument
6295 CROSS_THREAD_AND_EXCEPTION_CHECK(vm); in SetHostEnqueueJob()
6298 JSHandle<TaggedArray> array = vm->GetFactory()->EmptyArray(); in SetHostEnqueueJob()
6299 JSHandle<MicroJobQueue> job = vm->GetMicroJobQueue(); in SetHostEnqueueJob()
6303 bool JSNApi::ExecuteModuleFromBuffer(EcmaVM *vm, const void *data, int32_t size, const std::string … in ExecuteModuleFromBuffer() argument
6305 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, false); in ExecuteModuleFromBuffer()
6337 Local<JSValueRef> JSNApi::NapiHasProperty(const EcmaVM *vm, uintptr_t nativeObj, uintptr_t key) in NapiHasProperty() argument
6339 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in NapiHasProperty()
6341 EscapeLocalScope scope(vm); in NapiHasProperty()
6354 RETURN_VALUE_IF_ABRUPT(thread, JSValueRef::Undefined(vm)); in NapiHasProperty()
6361 Local<JSValueRef> JSNApi::NapiHasOwnProperty(const EcmaVM *vm, uintptr_t nativeObj, uintptr_t key) in NapiHasOwnProperty() argument
6363 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in NapiHasOwnProperty()
6365 EscapeLocalScope scope(vm); in NapiHasOwnProperty()
6378 RETURN_VALUE_IF_ABRUPT(thread, JSValueRef::Undefined(vm)); in NapiHasOwnProperty()
6385 Local<JSValueRef> JSNApi::NapiGetProperty(const EcmaVM *vm, uintptr_t nativeObj, uintptr_t key) in NapiGetProperty() argument
6387 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in NapiGetProperty()
6389 EscapeLocalScope scope(vm); in NapiGetProperty()
6401 RETURN_VALUE_IF_ABRUPT(thread, JSValueRef::Undefined(vm)); in NapiGetProperty()
6408 RETURN_VALUE_IF_ABRUPT(thread, JSValueRef::Undefined(vm)); in NapiGetProperty()
6414 RETURN_VALUE_IF_ABRUPT(thread, JSValueRef::Undefined(vm)); in NapiGetProperty()
6418 Local<JSValueRef> JSNApi::NapiDeleteProperty(const EcmaVM *vm, uintptr_t nativeObj, uintptr_t key) in NapiDeleteProperty() argument
6420 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in NapiDeleteProperty()
6422 EscapeLocalScope scope(vm); in NapiDeleteProperty()
6442 Local<JSValueRef> JSNApi::NapiGetNamedProperty(const EcmaVM *vm, uintptr_t nativeObj, const char* u… in NapiGetNamedProperty() argument
6444 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in NapiGetNamedProperty()
6446 EscapeLocalScope scope(vm); in NapiGetNamedProperty()
6455 ObjectFactory *factory = vm->GetFactory(); in NapiGetNamedProperty()
6462 RETURN_VALUE_IF_ABRUPT(thread, JSValueRef::Undefined(vm)); in NapiGetNamedProperty()
6469 RETURN_VALUE_IF_ABRUPT(thread, JSValueRef::Undefined(vm)); in NapiGetNamedProperty()
6472 RETURN_VALUE_IF_ABRUPT(thread, JSValueRef::Undefined(vm)); in NapiGetNamedProperty()
6476 RETURN_VALUE_IF_ABRUPT(thread, JSValueRef::Undefined(vm)); in NapiGetNamedProperty()
6480 Local<JSValueRef> JSNApi::CreateLocal(const EcmaVM *vm, panda::JSValueRef src) in CreateLocal() argument
6482 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in CreateLocal()
6487 Local<ObjectRef> JSNApi::GetExportObject(EcmaVM *vm, const std::string &file, const std::string &ke… in GetExportObject() argument
6489 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in GetExportObject()
6492 ecmascript::CString name = vm->GetAssetPath(); in GetExportObject()
6493 if (!vm->IsBundlePack()) { in GetExportObject()
6494 ModulePathHelper::ParseAbcPathAndOhmUrl(vm, entry, name, entry); in GetExportObject()
6509 int index = ecmascript::ModuleManager::GetExportObjectIndex(vm, ecmaModule, key.c_str()); in GetExportObject()
6514 ObjectFactory *factory = vm->GetFactory(); in GetExportObject()
6522 Local<ObjectRef> JSNApi::GetExportObjectFromBuffer(EcmaVM *vm, const std::string &file, in GetExportObjectFromBuffer() argument
6525 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in GetExportObjectFromBuffer()
6530 int index = ecmascript::ModuleManager::GetExportObjectIndex(vm, ecmaModule, key.c_str()); in GetExportObjectFromBuffer()
6536 ObjectFactory *factory = vm->GetFactory(); in GetExportObjectFromBuffer()
6543 Local<ObjectRef> JSNApi::GetExportObjectFromOhmUrl(EcmaVM *vm, const std::string &ohmUrl, const std… in GetExportObjectFromOhmUrl() argument
6545 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in GetExportObjectFromOhmUrl()
6551 return JSValueRef::Undefined(vm); in GetExportObjectFromOhmUrl()
6555 int index = ecmascript::ModuleManager::GetExportObjectIndex(vm, ecmaModule, key.c_str()); in GetExportObjectFromOhmUrl()
6561 Local<ObjectRef> JSNApi::ExecuteNativeModule(EcmaVM *vm, const std::string &key) in ExecuteNativeModule() argument
6563 ecmascript::ThreadManagedScope scope(vm->GetJSThread()); in ExecuteNativeModule()
6564 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in ExecuteNativeModule()
6570 Local<ObjectRef> JSNApi::GetModuleNameSpaceFromFile(EcmaVM *vm, const std::string &file) in GetModuleNameSpaceFromFile() argument
6572 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in GetModuleNameSpaceFromFile()
6574 std::pair<std::string, std::string> moduleInfo = vm->GetCurrentModuleInfo(false); in GetModuleNameSpaceFromFile()
6577 return JSValueRef::Undefined(vm); in GetModuleNameSpaceFromFile()
6582 ecmascript::NapiModuleLoader::LoadModuleNameSpace(vm, file.c_str(), moduleName, abcPath); in GetModuleNameSpaceFromFile()
6588 Local<ObjectRef> JSNApi::GetModuleNameSpaceWithModuleInfo(EcmaVM *vm, const std::string &file, in GetModuleNameSpaceWithModuleInfo() argument
6591 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in GetModuleNameSpaceWithModuleInfo()
6596 ecmascript::NapiModuleLoader::LoadModuleNameSpace<isHybrid>(vm, requestPath, modulePath); in GetModuleNameSpaceWithModuleInfo()
6599 template Local<ObjectRef> JSNApi::GetModuleNameSpaceWithModuleInfo<ForHybridApp::Normal>(EcmaVM *vm,
6601 template Local<ObjectRef> JSNApi::GetModuleNameSpaceWithModuleInfo<ForHybridApp::Hybrid>(EcmaVM *vm,
6604 Local<ObjectRef> JSNApi::GetModuleNameSpaceWithModuleInfoForNormalApp(EcmaVM *vm, const std::string… in GetModuleNameSpaceWithModuleInfoForNormalApp() argument
6607 return JSNApi::GetModuleNameSpaceWithModuleInfo<ForHybridApp::Normal>(vm, file, module_path); in GetModuleNameSpaceWithModuleInfoForNormalApp()
6609 Local<ObjectRef> JSNApi::GetModuleNameSpaceWithModuleInfoForHybridApp(EcmaVM *vm, const std::string… in GetModuleNameSpaceWithModuleInfoForHybridApp() argument
6612 return JSNApi::GetModuleNameSpaceWithModuleInfo<ForHybridApp::Hybrid>(vm, file, module_path); in GetModuleNameSpaceWithModuleInfoForHybridApp()
6616 Local<PromiseRef> PromiseRef::Catch(const EcmaVM *vm, Local<FunctionRef> handler) in Catch() argument
6618 ecmascript::ThreadManagedScope scope(vm->GetJSThread()); in Catch()
6619 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in Catch()
6629 RETURN_VALUE_IF_ABRUPT(thread, JSValueRef::Undefined(vm)); in Catch()
6638 RETURN_VALUE_IF_ABRUPT(thread, JSValueRef::Undefined(vm)); in Catch()
6642 Local<PromiseRef> PromiseRef::Finally(const EcmaVM *vm, Local<FunctionRef> handler) in Finally() argument
6644 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in Finally()
6655 RETURN_VALUE_IF_ABRUPT(thread, JSValueRef::Undefined(vm)); in Finally()
6665 RETURN_VALUE_IF_ABRUPT(thread, JSValueRef::Undefined(vm)); in Finally()
6669 Local<PromiseRef> PromiseRef::Then(const EcmaVM *vm, Local<FunctionRef> handler) in Then() argument
6671 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in Then()
6682 RETURN_VALUE_IF_ABRUPT(thread, JSValueRef::Undefined(vm)); in Then()
6692 RETURN_VALUE_IF_ABRUPT(thread, JSValueRef::Undefined(vm)); in Then()
6696 Local<PromiseRef> PromiseRef::Then(const EcmaVM *vm, Local<FunctionRef> onFulfilled, Local<Function… in Then() argument
6698 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in Then()
6710 RETURN_VALUE_IF_ABRUPT(thread, JSValueRef::Undefined(vm)); in Then()
6720 RETURN_VALUE_IF_ABRUPT(thread, JSValueRef::Undefined(vm)); in Then()
6724 Local<JSValueRef> PromiseRef::GetPromiseState(const EcmaVM *vm) in GetPromiseState() argument
6726 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in GetPromiseState()
6745 ObjectFactory *factory = vm->GetFactory(); in GetPromiseState()
6749 Local<JSValueRef> PromiseRef::GetPromiseResult(const EcmaVM *vm) in GetPromiseResult() argument
6751 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in GetPromiseResult()
6759 Local<JSValueRef> ProxyRef::GetHandler(const EcmaVM *vm) in GetHandler() argument
6761 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in GetHandler()
6767 Local<JSValueRef> ProxyRef::GetTarget(const EcmaVM *vm) in GetTarget() argument
6769 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in GetTarget()
6783 int32_t SetRef::GetSize(const EcmaVM *vm) in GetSize() argument
6786 JSThread *thread = vm->GetJSThread(); in GetSize()
6792 int32_t SetRef::GetTotalElements(const EcmaVM *vm) in GetTotalElements() argument
6795 JSThread *thread = vm->GetJSThread(); in GetTotalElements()
6802 Local<JSValueRef> SetRef::GetValue(const EcmaVM *vm, int entry) in GetValue() argument
6804 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in GetValue()
6811 Local<SetRef> SetRef::New(const EcmaVM *vm) in New() argument
6813 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in New()
6826 void SetRef::Add(const EcmaVM *vm, Local<JSValueRef> value) in Add() argument
6828 CROSS_THREAD_AND_EXCEPTION_CHECK(vm); in Add()
6836 int32_t WeakMapRef::GetSize(const EcmaVM *vm) in GetSize() argument
6839 JSThread *thread = vm->GetJSThread(); in GetSize()
6845 int32_t WeakMapRef::GetTotalElements(const EcmaVM *vm) in GetTotalElements() argument
6848 JSThread *thread = vm->GetJSThread(); in GetTotalElements()
6855 Local<JSValueRef> WeakMapRef::GetKey(const EcmaVM *vm, int entry) in GetKey() argument
6857 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in GetKey()
6865 Local<JSValueRef> WeakMapRef::GetValue(const EcmaVM *vm, int entry) in GetValue() argument
6867 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in GetValue()
6873 Local<WeakMapRef> WeakMapRef::New(const EcmaVM *vm) in New() argument
6875 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in New()
6888 void WeakMapRef::Set(const EcmaVM *vm, const Local<JSValueRef> &key, const Local<JSValueRef> &value) in Set() argument
6890 CROSS_THREAD_AND_EXCEPTION_CHECK(vm); in Set()
6897 bool WeakMapRef::Has(const EcmaVM *vm, Local<JSValueRef> key) in Has() argument
6899 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, false); in Has()
6907 int32_t WeakSetRef::GetSize(const EcmaVM *vm) in GetSize() argument
6910 JSThread *thread = vm->GetJSThread(); in GetSize()
6916 int32_t WeakSetRef::GetTotalElements(const EcmaVM *vm) in GetTotalElements() argument
6919 JSThread *thread = vm->GetJSThread(); in GetTotalElements()
6926 Local<JSValueRef> WeakSetRef::GetValue(const EcmaVM *vm, int entry) in GetValue() argument
6928 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in GetValue()
6936 Local<WeakSetRef> WeakSetRef::New(const EcmaVM *vm) in New() argument
6938 CROSS_THREAD_AND_EXCEPTION_CHECK_WITH_RETURN(vm, JSValueRef::Undefined(vm)); in New()
6951 void WeakSetRef::Add(const EcmaVM *vm, Local<JSValueRef> value) in Add() argument
6953 CROSS_THREAD_AND_EXCEPTION_CHECK(vm); in Add()
6989 bool ExternalStringCache::RegisterStringCacheTable(const EcmaVM *vm, uint32_t size) in RegisterStringCacheTable() argument
6994 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in RegisterStringCacheTable()
6998 bool ExternalStringCache::SetCachedString(const EcmaVM *vm, const char *name, uint32_t propertyInde… in SetCachedString() argument
7003 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in SetCachedString()
7004 [[maybe_unused]] LocalScope scope(vm); in SetCachedString()
7005 ObjectFactory *factory = vm->GetFactory(); in SetCachedString()
7010 Local<StringRef> ExternalStringCache::GetCachedString(const EcmaVM *vm, uint32_t propertyIndex) in GetCachedString() argument
7014 auto thread = vm->GetJSThread(); in GetCachedString()
7020 bool ExternalStringCache::HasCachedString([[maybe_unused]] const EcmaVM *vm, uint32_t propertyIndex) in HasCachedString() argument
7024 ecmascript::ThreadManagedScope managedScope(vm->GetJSThread()); in HasCachedString()