| // Copyright 2018 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_INTERNAL_API_TOKEN_H_ |
| #define SQL_INTERNAL_API_TOKEN_H_ |
| |
| namespacebase{ |
| classFilePath; |
| }// namespace base |
| |
| namespace sql{ |
| |
| namespace test{ |
| structColumnInfo; |
| boolCorruptSizeInHeader(constbase::FilePath&); |
| }// namespace test |
| |
| // Restricts access to APIs internal to the //sql package. |
| // |
| // This implements Java's package-private via the passkey idiom. |
| classInternalApiToken{ |
| private: |
| // Must NOT be =default to disallow creation by uniform initialization. |
| InternalApiToken(){} |
| InternalApiToken(constInternalApiToken&)=default; |
| |
| friendclassDatabase; |
| friendclassDatabaseTestPeer; |
| friendclassRecovery; |
| friendclassTransaction; |
| friendstruct test::ColumnInfo; |
| friendbool test::CorruptSizeInHeader(constbase::FilePath&); |
| }; |
| |
| }// namespace sql |
| |
| #endif// SQL_INTERNAL_API_TOKEN_H_ |