1 // Copyright (C) 2018 The Android Open Source Project 2 // 3 // Licensed under the Apache License, Version 2.0 (the "License"); 4 // you may not use this file except in compliance with the License. 5 // You may obtain a copy of the License at 6 // 7 // http://www.apache.org/licenses/LICENSE-2.0 8 // 9 // Unless required by applicable law or agreed to in writing, software 10 // distributed under the License is distributed on an "AS IS" BASIS, 11 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 // See the License for the specific language governing permissions and 13 // limitations under the License. 14 15 #ifndef HEADER_CHECKER_H_ 16 #define HEADER_CHECKER_H_ 17 18 #include "repr/ir_representation.h" 19 #include "utils/source_path_utils.h" 20 21 #include <set> 22 #include <string> 23 24 25 namespace header_checker { 26 namespace dumper { 27 28 29 class HeaderCheckerOptions { 30 public: 31 std::string source_file_; 32 std::string dump_name_; 33 const std::set<std::string> exported_headers_; 34 const utils::RootDirs root_dirs_; 35 repr::TextFormatIR text_format_; 36 const bool dump_exported_only_; 37 bool dump_function_declarations_; 38 39 public: HeaderCheckerOptions(std::string source_file,std::string dump_name,std::set<std::string> exported_headers,utils::RootDirs root_dirs,repr::TextFormatIR text_format,bool dump_exported_only,bool dump_function_declarations)40 HeaderCheckerOptions(std::string source_file, std::string dump_name, 41 std::set<std::string> exported_headers, 42 utils::RootDirs root_dirs, 43 repr::TextFormatIR text_format, bool dump_exported_only, 44 bool dump_function_declarations) 45 : source_file_(std::move(source_file)), 46 dump_name_(std::move(dump_name)), 47 exported_headers_(std::move(exported_headers)), 48 root_dirs_(std::move(root_dirs)), 49 text_format_(text_format), 50 dump_exported_only_(dump_exported_only), 51 dump_function_declarations_(dump_function_declarations) {} 52 }; 53 54 55 } // namespace dumper 56 } // namespace header_checker 57 58 59 #endif // HEADER_CHECKER_H_ 60