static void hasMethod(const v8::FunctionCallbackInfo<v8::Value>& info) { ExceptionState exceptionState(ExceptionState::ExecutionContext, "has", "TestInterface2", info.Holder(), info.GetIsolate()); if (UNLIKELY(info.Length() < 1)) { setMinimumArityTypeError(exceptionState, 1, info.Length()); exceptionState.throwIfNeeded(); return; } TestInterface2* impl = V8TestInterface2::toImpl(info.Holder()); TestInterfaceEmpty* value; { value = V8TestInterfaceEmpty::toImplWithTypeCheck(info.GetIsolate(), info[0]); if (!value) { exceptionState.throwTypeError("parameter 1 is not of type 'TestInterfaceEmpty'."); exceptionState.throwIfNeeded(); return; } } ScriptState* scriptState = ScriptState::current(info.GetIsolate()); bool result = impl->hasForBinding(scriptState, value, exceptionState); if (exceptionState.hadException()) { exceptionState.throwIfNeeded(); return; } v8SetReturnValueBool(info, result); }
static void namedPropertyDeleter(v8::Local<v8::String> name, const v8::PropertyCallbackInfo<v8::Boolean>& info) { TestEventTarget* collection = V8TestEventTarget::toNative(info.Holder()); AtomicString propertyName = toCoreAtomicString(name); bool result = collection->anonymousNamedDeleter(propertyName); return v8SetReturnValueBool(info, result); }
static void hasMethod(const v8::FunctionCallbackInfo<v8::Value>& info) { ExceptionState exceptionState(info.GetIsolate(), ExceptionState::ExecutionContext, "TestInterface2", "has"); TestInterface2* impl = V8TestInterface2::toImpl(info.Holder()); ScriptState* scriptState = ScriptState::forReceiverObject(info); if (UNLIKELY(info.Length() < 1)) { exceptionState.throwTypeError(ExceptionMessages::notEnoughArguments(1, info.Length())); return; } TestInterfaceEmpty* value; value = V8TestInterfaceEmpty::toImplWithTypeCheck(info.GetIsolate(), info[0]); if (!value) { exceptionState.throwTypeError("parameter 1 is not of type 'TestInterfaceEmpty'."); return; } bool result = impl->hasForBinding(scriptState, value, exceptionState); if (exceptionState.hadException()) { return; } v8SetReturnValueBool(info, result); }
static void namedPropertyDeleter(v8::Local<v8::String> name, const v8::PropertyCallbackInfo<v8::Boolean>& info) { TestEventTarget* imp = V8TestEventTarget::toNative(info.Holder()); AtomicString propertyName = toCoreAtomicString(name); DeleteResult result = imp->anonymousNamedDeleter(propertyName); if (result != DeleteUnknownProperty) return v8SetReturnValueBool(info, result == DeleteSuccess); }
static void indexedPropertyDeleter(unsigned index, const v8::PropertyCallbackInfo<v8::Boolean>& info) { TestEventTarget* collection = V8TestEventTarget::toNative(info.Holder()); ExceptionState exceptionState(info.Holder(), info.GetIsolate()); bool result = collection->anonymousIndexedDeleter(index, exceptionState); if (exceptionState.throwIfNeeded()) return; return v8SetReturnValueBool(info, result); }
static void indexedPropertyDeleter(uint32_t index, const v8::PropertyCallbackInfo<v8::Boolean>& info) { TestInterface2* impl = V8TestInterface2::toImpl(info.Holder()); ExceptionState exceptionState(ExceptionState::IndexedDeletionContext, "TestInterface2", info.Holder(), info.GetIsolate()); DeleteResult result = impl->deleteItem(index, exceptionState); if (exceptionState.throwIfNeeded()) return; if (result != DeleteUnknownProperty) return v8SetReturnValueBool(info, result == DeleteSuccess); }
static void indexedPropertyDeleter(uint32_t index, const v8::PropertyCallbackInfo<v8::Boolean>& info) { TestEventTarget* imp = V8TestEventTarget::toNative(info.Holder()); ExceptionState exceptionState(info.Holder(), info.GetIsolate()); DeleteResult result = imp->anonymousIndexedDeleter(index, exceptionState); if (exceptionState.throwIfNeeded()) return; if (result != DeleteUnknownProperty) return v8SetReturnValueBool(info, result == DeleteSuccess); }
static void namedPropertyDeleter(v8::Local<v8::Name> name, const v8::PropertyCallbackInfo<v8::Boolean>& info) { if (!name->IsString()) return; TestInterface2* impl = V8TestInterface2::toImpl(info.Holder()); AtomicString propertyName = toCoreAtomicString(name.As<v8::String>()); v8::String::Utf8Value namedProperty(name); ExceptionState exceptionState(ExceptionState::DeletionContext, *namedProperty, "TestInterface2", info.Holder(), info.GetIsolate()); DeleteResult result = impl->deleteNamedItem(propertyName, exceptionState); if (exceptionState.throwIfNeeded()) return; if (result != DeleteUnknownProperty) return v8SetReturnValueBool(info, result == DeleteSuccess); }
static void deleteNamedItemMethod(const v8::FunctionCallbackInfo<v8::Value>& info) { ExceptionState exceptionState(info.GetIsolate(), ExceptionState::ExecutionContext, "TestInterface2", "deleteNamedItem"); TestInterface2* impl = V8TestInterface2::toImpl(info.Holder()); if (UNLIKELY(info.Length() < 1)) { exceptionState.throwTypeError(ExceptionMessages::notEnoughArguments(1, info.Length())); return; } V8StringResource<> name; name = info[0]; if (!name.prepare()) return; bool result = impl->deleteNamedItem(name, exceptionState); if (exceptionState.hadException()) { return; } v8SetReturnValueBool(info, result); }
static void deleteItemMethod(const v8::FunctionCallbackInfo<v8::Value>& info) { ExceptionState exceptionState(info.GetIsolate(), ExceptionState::ExecutionContext, "TestInterface2", "deleteItem"); TestInterface2* impl = V8TestInterface2::toImpl(info.Holder()); if (UNLIKELY(info.Length() < 1)) { exceptionState.throwTypeError(ExceptionMessages::notEnoughArguments(1, info.Length())); return; } unsigned index; index = toUInt32(info.GetIsolate(), info[0], NormalConversion, exceptionState); if (exceptionState.hadException()) return; bool result = impl->deleteItem(index, exceptionState); if (exceptionState.hadException()) { return; } v8SetReturnValueBool(info, result); }
static void deleteNamedItemMethod(const v8::FunctionCallbackInfo<v8::Value>& info) { ExceptionState exceptionState(ExceptionState::ExecutionContext, "deleteNamedItem", "TestInterface2", info.Holder(), info.GetIsolate()); if (UNLIKELY(info.Length() < 1)) { setMinimumArityTypeError(exceptionState, 1, info.Length()); exceptionState.throwIfNeeded(); return; } TestInterface2* impl = V8TestInterface2::toImpl(info.Holder()); V8StringResource<> name; { name = info[0]; if (!name.prepare()) return; } bool result = impl->deleteNamedItem(name, exceptionState); if (exceptionState.hadException()) { exceptionState.throwIfNeeded(); return; } v8SetReturnValueBool(info, result); }
static void deleteItemMethod(const v8::FunctionCallbackInfo<v8::Value>& info) { ExceptionState exceptionState(ExceptionState::ExecutionContext, "deleteItem", "TestInterface2", info.Holder(), info.GetIsolate()); if (UNLIKELY(info.Length() < 1)) { setMinimumArityTypeError(exceptionState, 1, info.Length()); exceptionState.throwIfNeeded(); return; } TestInterface2* impl = V8TestInterface2::toImpl(info.Holder()); unsigned index; { index = toUInt32(info.GetIsolate(), info[0], NormalConversion, exceptionState); if (exceptionState.throwIfNeeded()) return; } bool result = impl->deleteItem(index, exceptionState); if (exceptionState.hadException()) { exceptionState.throwIfNeeded(); return; } v8SetReturnValueBool(info, result); }
static void deleteMethod(const v8::FunctionCallbackInfo<v8::Value>& info) { ExceptionState exceptionState(ExceptionState::ExecutionContext, "delete", "TestInterfaceGarbageCollected", info.Holder(), info.GetIsolate()); if (UNLIKELY(info.Length() < 1)) { setMinimumArityTypeError(exceptionState, 1, info.Length()); exceptionState.throwIfNeeded(); return; } TestInterfaceGarbageCollected* impl = V8TestInterfaceGarbageCollected::toImpl(info.Holder()); V8StringResource<> value; { value = info[0]; if (!value.prepare()) return; } ScriptState* scriptState = ScriptState::current(info.GetIsolate()); bool result = impl->deleteForBinding(scriptState, value, exceptionState); if (exceptionState.hadException()) { exceptionState.throwIfNeeded(); return; } v8SetReturnValueBool(info, result); }
static void isTrustedAttributeGetter(const v8::FunctionCallbackInfo<v8::Value>& info) { v8::Local<v8::Object> holder = info.Holder(); TestInterfaceEventInitConstructor* impl = V8TestInterfaceEventInitConstructor::toImpl(holder); v8SetReturnValueBool(info, impl->isTrusted()); }