BluetoothRemoteGATTCharacteristic* BluetoothRemoteGATTCharacteristic::take(ScriptPromiseResolver* resolver, std::unique_ptr<WebBluetoothRemoteGATTCharacteristicInit> webCharacteristic, BluetoothRemoteGATTService* service)
{
    if (!webCharacteristic) {
        return nullptr;
    }
    BluetoothRemoteGATTCharacteristic* characteristic = new BluetoothRemoteGATTCharacteristic(resolver->getExecutionContext(), std::move(webCharacteristic), service);
    // See note in ActiveDOMObject about suspendIfNeeded.
    characteristic->suspendIfNeeded();
    return characteristic;
}
BluetoothRemoteGATTCharacteristic* BluetoothRemoteGATTCharacteristic::take(ScriptPromiseResolver* resolver, PassOwnPtr<WebBluetoothRemoteGATTCharacteristicInit> webCharacteristic)
{
    if (!webCharacteristic) {
        return nullptr;
    }
    BluetoothRemoteGATTCharacteristic* characteristic = new BluetoothRemoteGATTCharacteristic(resolver->executionContext(), webCharacteristic);
    // See note in ActiveDOMObject about suspendIfNeeded.
    characteristic->suspendIfNeeded();
    return characteristic;
}