Upload upstream chromium 73.0.3683.0
[platform/framework/web/chromium-efl.git] / sql / internal_api_token.h
1 // Copyright 2018 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 #ifndef SQL_INTERNAL_API_TOKEN_H_
6 #define SQL_INTERNAL_API_TOKEN_H_
7
8 namespace sql {
9
10 // Restricts access to APIs internal to the //sql package.
11 //
12 // This implements Java's package-private via the passkey idiom.
13 class InternalApiToken {
14  private:
15   // Must NOT be =default to disallow creation by uniform initialization.
16   InternalApiToken() {}
17   InternalApiToken(const InternalApiToken&) = default;
18
19   friend class DatabaseTestPeer;
20   friend class Recovery;
21 };
22
23 }  // namespace sql
24
25 #endif  // SQL_INTERNAL_API_TOKEN_H_