Lines Matching full:vm
46 bool IsEqual(EcmaVM *vm, Local<JSValueRef> jsArg0, Local<JSValueRef> jsArg1) in IsEqual() argument
48 if (jsArg0->IsStrictEquals(vm, jsArg1)) { in IsEqual()
50 } else if ((jsArg0->IsJSArray(vm) && jsArg1->IsJSArray(vm))) { in IsEqual()
53 uint32_t length = arr0->Length(vm); in IsEqual()
54 if (length != arr1->Length(vm)) { in IsEqual()
58 Local<JSValueRef> arg0 = ArrayRef::GetValueAt(vm, arr0, i); in IsEqual()
59 Local<JSValueRef> arg1 = ArrayRef::GetValueAt(vm, arr1, i); in IsEqual()
60 if (!IsEqual(vm, arg0, arg1)) { in IsEqual()
71 EcmaVM *vm = runtimeInfo->GetVM(); in TestEnd() local
73 return JSValueRef::Undefined(vm); in TestEnd()
78 EcmaVM *vm = runtimeInfo->GetVM(); in AssertEqual() local
83 auto error = panda::Exception::TypeError(vm, StringRef::NewFromUtf8(vm, errStr.c_str())); in AssertEqual()
84 panda::JSNApi::ThrowException(vm, error); in AssertEqual()
85 return JSValueRef::Undefined(vm); in AssertEqual()
91 if (!IsEqual(vm, jsArg0, jsArg1)) { in AssertEqual()
92 … std::string errStr = std::string("Assertion failed: ").append(jsArg0->ToString(vm)->ToString(vm)) in AssertEqual()
93 .append(" != ").append(jsArg1->ToString(vm)->ToString(vm)); in AssertEqual()
94 auto error = panda::Exception::TypeError(vm, StringRef::NewFromUtf8(vm, errStr.c_str())); in AssertEqual()
95 panda::JSNApi::ThrowException(vm, error); in AssertEqual()
98 return JSValueRef::Undefined(vm); in AssertEqual()
103 EcmaVM *vm = runtimeInfo->GetVM(); in AssertTrue() local
108 auto error = panda::Exception::TypeError(vm, StringRef::NewFromUtf8(vm, errStr.c_str())); in AssertTrue()
109 panda::JSNApi::ThrowException(vm, error); in AssertTrue()
110 return JSValueRef::Undefined(vm); in AssertTrue()
116 …string errStr = std::string("Assertion failed: Expect ").append(jsArg0->ToString(vm)->ToString(vm)) in AssertTrue()
118 auto error = panda::Exception::TypeError(vm, StringRef::NewFromUtf8(vm, errStr.c_str())); in AssertTrue()
119 panda::JSNApi::ThrowException(vm, error); in AssertTrue()
122 return JSValueRef::Undefined(vm); in AssertTrue()
127 EcmaVM *vm = runtimeInfo->GetVM(); in AssertUnreachable() local
130 return JSValueRef::Undefined(vm); in AssertUnreachable()
133 bool ExecutePandaFile(EcmaVM *vm, JSRuntimeOptions &runtimeOptions, std::string &files) in ExecutePandaFile() argument
136 LocalScope scope(vm); in ExecutePandaFile()
145 Local<JSValueRef> context = JSNApi::CreateContext(vm); in ExecutePandaFile()
146 JSNApi::SwitchContext(vm, context); in ExecutePandaFile()
149 Local<ObjectRef> globalObj = JSNApi::GetGlobalObject(vm); in ExecutePandaFile()
150 Local<FunctionRef> assertEqual = FunctionRef::New(vm, AssertEqual); in ExecutePandaFile()
151 globalObj->Set(vm, StringRef::NewFromUtf8(vm, "assert_equal"), assertEqual); in ExecutePandaFile()
152 Local<FunctionRef> assertTrue = FunctionRef::New(vm, AssertTrue); in ExecutePandaFile()
153 globalObj->Set(vm, StringRef::NewFromUtf8(vm, "assert_true"), assertTrue); in ExecutePandaFile()
154 Local<FunctionRef> assertUnreachable = FunctionRef::New(vm, AssertUnreachable); in ExecutePandaFile()
155 globalObj->Set(vm, StringRef::NewFromUtf8(vm, "assert_unreachable"), assertUnreachable); in ExecutePandaFile()
156 Local<FunctionRef> testEnd = FunctionRef::New(vm, TestEnd); in ExecutePandaFile()
157 globalObj->Set(vm, StringRef::NewFromUtf8(vm, "test_end"), testEnd); in ExecutePandaFile()
160 JSNApi::LoadAotFile(vm, ""); in ExecutePandaFile()
164 auto res = JSNApi::Execute(vm, fileName, entry); in ExecutePandaFile()
220 EcmaVM *vm = JSNApi::CreateEcmaVM(runtimeOptions); in Main() local
221 if (vm == nullptr) { in Main()
222 std::cerr << "Cannot Create vm" << std::endl; in Main()
227 JSNApi::SetBundle(vm, !isMergeAbc); in Main()
228 ret = ExecutePandaFile(vm, runtimeOptions, files); in Main()
230 JSNApi::DestroyJSVM(vm); in Main()