• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 // Copyright 2020 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 TOOLS_GN_SWIFT_TARGET_VALUES_GENERATOR_H_
6 #define TOOLS_GN_SWIFT_TARGET_VALUES_GENERATOR_H_
7 
8 #include <string>
9 
10 class Err;
11 class FunctionCallNode;
12 class Scope;
13 class Target;
14 
15 class SwiftValuesGenerator {
16  public:
17   SwiftValuesGenerator(Target* target, Scope* scope, Err* err);
18   ~SwiftValuesGenerator();
19 
20   SwiftValuesGenerator(const SwiftValuesGenerator&) = delete;
21   SwiftValuesGenerator& operator=(const SwiftValuesGenerator&) = delete;
22 
23   void Run();
24 
25  private:
26   bool FillBridgeHeader();
27   bool FillModuleName();
28 
29   Target* target_;
30   Scope* scope_;
31   Err* err_;
32 };
33 
34 #endif  // TOOLS_GN_SWIFT_TARGET_VALUES_GENERATOR_H_
35