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