blob: ecd59110839bcf0d642b53068a23aba17b0122c8 [file] [log] [blame]
// Copyright 2019 The PDFium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef TESTING_V8_INITIALIZER_H_
#define TESTING_V8_INITIALIZER_H_
#include <memory>
#include <string>
#ifndef PDF_ENABLE_V8
#error "V8 must be enabled"
#endif
namespace v8 {
class Platform;
#ifdef V8_USE_EXTERNAL_STARTUP_DATA
class StartupData;
#endif
} // namespace v8
#ifdef V8_USE_EXTERNAL_STARTUP_DATA
// |snapshot_blob| is an optional out parameter.
std::unique_ptr<v8::Platform> InitializeV8ForPDFiumWithStartupData(
const std::string& exe_path,
const std::string& js_flags,
const std::string& bin_dir,
v8::StartupData* snapshot_blob);
#else
std::unique_ptr<v8::Platform> InitializeV8ForPDFium(
const std::string& js_flags,
const std::string& exe_path);
#endif
void ShutdownV8ForPDFium();
#endif // TESTING_V8_INITIALIZER_H_