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 
20 #include <set>
21 #include <string>
22 
23 
24 namespace header_checker {
25 namespace dumper {
26 
27 
28 class HeaderCheckerOptions {
29  public:
30   std::string source_file_;
31   std::string dump_name_;
32   const std::set<std::string> exported_headers_;
33   const std::string root_dir_;
34   repr::TextFormatIR text_format_;
35   const bool dump_exported_only_;
36   bool dump_function_declarations_;
37   bool suppress_errors_;
38 
39  public:
HeaderCheckerOptions(std::string source_file,std::string dump_name,std::set<std::string> exported_headers,std::string root_dir,repr::TextFormatIR text_format,bool dump_exported_only,bool dump_function_declarations,bool suppress_errors)40   HeaderCheckerOptions(std::string source_file, std::string dump_name,
41                        std::set<std::string> exported_headers,
42                        std::string root_dir, repr::TextFormatIR text_format,
43                        bool dump_exported_only,
44                        bool dump_function_declarations, bool suppress_errors)
45       : source_file_(std::move(source_file)), dump_name_(std::move(dump_name)),
46         exported_headers_(std::move(exported_headers)),
47         root_dir_(std::move(root_dir)), text_format_(text_format),
48         dump_exported_only_(dump_exported_only),
49         dump_function_declarations_(dump_function_declarations),
50         suppress_errors_(suppress_errors) {}
51 };
52 
53 
54 }  // namespace dumper
55 }  // namespace header_checker
56 
57 
58 #endif  // HEADER_CHECKER_H_
59