Files
atom/cef/libcef_dll/cpptoc/v8accessor_cpptoc.cc
Kevin Sawicki & Nathan Sobo d09610cbcd Upgrade CEF 3 to branch 1364, r1050
This adds support for accessing native extensions in web workers, though it may
not work quite how we need it to just yet. Figured we'd bank an upgrade anyway.
2013-01-21 18:05:39 -07:00

127 lines
3.4 KiB
C++

// Copyright (c) 2013 The Chromium Embedded Framework Authors. All rights
// reserved. Use of this source code is governed by a BSD-style license that
// can be found in the LICENSE file.
//
// ---------------------------------------------------------------------------
//
// This file was generated by the CEF translator tool. If making changes by
// hand only do so within the body of existing method and function
// implementations. See the translator.README.txt file in the tools directory
// for more information.
//
#include "libcef_dll/cpptoc/v8accessor_cpptoc.h"
#include "libcef_dll/ctocpp/v8value_ctocpp.h"
// MEMBER FUNCTIONS - Body may be edited by hand.
int CEF_CALLBACK v8accessor_get(struct _cef_v8accessor_t* self,
const cef_string_t* name, struct _cef_v8value_t* object,
struct _cef_v8value_t** retval, cef_string_t* exception) {
// AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING
DCHECK(self);
if (!self)
return 0;
// Verify param: name; type: string_byref_const
DCHECK(name);
if (!name)
return 0;
// Verify param: object; type: refptr_diff
DCHECK(object);
if (!object)
return 0;
// Verify param: retval; type: refptr_diff_byref
DCHECK(retval);
if (!retval)
return 0;
// Verify param: exception; type: string_byref
DCHECK(exception);
if (!exception)
return 0;
// Translate param: retval; type: refptr_diff_byref
CefRefPtr<CefV8Value> retvalPtr;
if (retval && *retval)
retvalPtr = CefV8ValueCToCpp::Wrap(*retval);
CefV8Value* retvalOrig = retvalPtr.get();
// Translate param: exception; type: string_byref
CefString exceptionStr(exception);
// Execute
bool _retval = CefV8AccessorCppToC::Get(self)->Get(
CefString(name),
CefV8ValueCToCpp::Wrap(object),
retvalPtr,
exceptionStr);
// Restore param: retval; type: refptr_diff_byref
if (retval) {
if (retvalPtr.get()) {
if (retvalPtr.get() != retvalOrig) {
*retval = CefV8ValueCToCpp::Unwrap(retvalPtr);
}
} else {
*retval = NULL;
}
}
// Return type: bool
return _retval;
}
int CEF_CALLBACK v8accessor_set(struct _cef_v8accessor_t* self,
const cef_string_t* name, struct _cef_v8value_t* object,
struct _cef_v8value_t* value, cef_string_t* exception) {
// AUTO-GENERATED CONTENT - DELETE THIS COMMENT BEFORE MODIFYING
DCHECK(self);
if (!self)
return 0;
// Verify param: name; type: string_byref_const
DCHECK(name);
if (!name)
return 0;
// Verify param: object; type: refptr_diff
DCHECK(object);
if (!object)
return 0;
// Verify param: value; type: refptr_diff
DCHECK(value);
if (!value)
return 0;
// Verify param: exception; type: string_byref
DCHECK(exception);
if (!exception)
return 0;
// Translate param: exception; type: string_byref
CefString exceptionStr(exception);
// Execute
bool _retval = CefV8AccessorCppToC::Get(self)->Set(
CefString(name),
CefV8ValueCToCpp::Wrap(object),
CefV8ValueCToCpp::Wrap(value),
exceptionStr);
// Return type: bool
return _retval;
}
// CONSTRUCTOR - Do not edit by hand.
CefV8AccessorCppToC::CefV8AccessorCppToC(CefV8Accessor* cls)
: CefCppToC<CefV8AccessorCppToC, CefV8Accessor, cef_v8accessor_t>(cls) {
struct_.struct_.get = v8accessor_get;
struct_.struct_.set = v8accessor_set;
}
#ifndef NDEBUG
template<> long CefCppToC<CefV8AccessorCppToC, CefV8Accessor,
cef_v8accessor_t>::DebugObjCt = 0;
#endif