• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 // Copyright 2023 The Chromium Authors
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 BSSL_FILLINS_PATH_SERVICE_H
6 #define BSSL_FILLINS_PATH_SERVICE_H
7 
8 #include <openssl/base.h>
9 
10 #include <string>
11 
12 namespace bssl {
13 
14 namespace fillins {
15 
16 class FilePath {
17  public:
18   FilePath();
19   FilePath(const std::string &path);
20 
21   const std::string &value() const;
22 
23   FilePath AppendASCII(const std::string &ascii_path_element) const;
24 
25  private:
26   std::string path_;
27 };
28 
29 enum PathKey {
30   BSSL_TEST_DATA_ROOT = 0,
31 };
32 
33 class PathService {
34  public:
35   static void Get(PathKey key, FilePath *out);
36 };
37 
38 }  // namespace fillins
39 
40 }  // namespace bssl
41 
42 #endif  // BSSL_FILLINS_PATH_SERVICE_H
43