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