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

Method hasObjectProperty

valdi/src/valdi/v8/V8JavaScriptContext.cpp:587–609  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

585}
586
587bool V8JavaScriptContext::hasObjectProperty(const JSValue& object, const JSPropertyName& propertyName) {
588 v8::HandleScope handleScope(_isolate);
589 JSExceptionTracker tracker(*this);
590
591 auto obj = v8::Local<v8::Object>::Cast(fromValdiJSValue(_isolate, object, tracker));
592 if (!tracker) {
593 tracker.clearError();
594 return false;
595 }
596
597 if (!obj->IsObject()) {
598 return false;
599 }
600
601 auto key = fromValdiJSPropertyName(_isolate, propertyName, tracker);
602 if (!tracker) {
603 tracker.clearError();
604 return false;
605 }
606
607 v8::Local<v8::Context> context = v8::Local<v8::Context>::New(_isolate, _context);
608 return obj->Has(context, key).FromMaybe(false);
609}
610
611void V8JavaScriptContext::setObjectProperty(const JSValue& object,
612 const std::string_view& propertyName,

Callers 2

isJSPromiseCancelableMethod · 0.45
hasValueForObjectKeyMethod · 0.45

Calls 6

clearErrorMethod · 0.80
fromValdiJSValueFunction · 0.70
fromValdiJSPropertyNameFunction · 0.70
CastFunction · 0.50
NewFunction · 0.50
FromMaybeMethod · 0.45

Tested by

no test coverage detected