// Copyright 2013 The Chromium Authors // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #ifndef SQL_RECOVERY_H_ #define SQL_RECOVERY_H_ #include <stddef.h> #include <string> #include "base/component_export.h" #include "base/memory/raw_ptr.h" #include "sql/database.h" #include "sql/internal_api_token.h" #include "sql/sqlite_result_code_values.h" namespace base { class FilePath; } namespace sql { // Recovery module for sql/. Please see the `RecoverIfPossible()` method for how // to use this class. // // This module is capable of recovering databases which the legacy recovery // module could not recover. These include: // - tables with the WITHOUT ROWID optimization // - databases which use Write-Ahead Log (i.e. WAL mode) // - NOTE: as WAL mode is still experimental (see https://crbug.com/1416213) // recovery should not be attempted on WAL databases for now. // // Uses SQLite's recovery extension: https://www.sqlite.org/recovery.html class COMPONENT_EXPORT(SQL) Recovery { … }; } // namespace sql #endif // SQL_RECOVERY_H_