// Copyright (c) 2009 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. // // --------------------------------------------------------------------------- // // A portion of this file was generated by the CEF translator tool. When // making changes by hand only do so within the body of existing function // implementations. See the translator.README.txt file in the tools directory // for more information. // #include "libcef_dll/cpptoc/v8handler_cpptoc.h" #include "libcef_dll/ctocpp/v8value_ctocpp.h" // MEMBER FUNCTIONS - Body may be edited by hand. int CEF_CALLBACK v8handler_execute(struct _cef_v8handler_t* self, const wchar_t* name, struct _cef_v8value_t* object, size_t argumentCount, struct _cef_v8value_t* const* arguments, struct _cef_v8value_t** retval, cef_string_t* exception) { DCHECK(self); if(!self) return RV_CONTINUE; CefRefPtr objectPtr; if(object) objectPtr = CefV8ValueCToCpp::Wrap(object); std::wstring nameStr; if(name) nameStr = name; CefV8ValueList list; for(size_t i = 0; i < argumentCount; ++i) { list.push_back(CefV8ValueCToCpp::Wrap(arguments[i])); } CefRefPtr retValPtr; std::wstring exceptionStr; bool rv = CefV8HandlerCppToC::Get(self)->Execute(nameStr, objectPtr, list, retValPtr, exceptionStr); if(rv) { if(!exceptionStr.empty() && exception) *exception = cef_string_alloc(exceptionStr.c_str()); if(retValPtr.get() && retval) *retval = CefV8ValueCToCpp::Unwrap(retValPtr); } return rv; } // CONSTRUCTOR - Do not edit by hand. CefV8HandlerCppToC::CefV8HandlerCppToC(CefV8Handler* cls) : CefCppToC(cls) { struct_.struct_.execute = v8handler_execute; } #ifdef _DEBUG long CefCppToC::DebugObjCt = 0; #endif