1[ 2 { include: ["<__algorithm/all_of.h>", "private", "<algorithm>", "public"] }, 3 { include: ["<__algorithm/any_of.h>", "private", "<algorithm>", "public"] }, 4 { include: ["<__algorithm/copy.h>", "private", "<algorithm>", "public"] }, 5 { include: ["<__algorithm/copy_n.h>", "private", "<algorithm>", "public"] }, 6 { include: ["<__algorithm/count.h>", "private", "<algorithm>", "public"] }, 7 { include: ["<__algorithm/equal.h>", "private", "<algorithm>", "public"] }, 8 { include: ["<__algorithm/equal_range.h>", "private", "<algorithm>", "public"] }, 9 { include: ["<__algorithm/fill.h>", "private", "<algorithm>", "public"] }, 10 { include: ["<__algorithm/fill_n.h>", "private", "<algorithm>", "public"] }, 11 { include: ["<__algorithm/find.h>", "private", "<algorithm>", "public"] }, 12 { include: ["<__algorithm/find_if.h>", "private", "<algorithm>", "public"] }, 13 { include: ["<__algorithm/is_sorted.h>", "private", "<algorithm>", "public"] }, 14 { include: ["<__algorithm/lower_bound.h>", "private", "<algorithm>", "public"] }, 15 { include: ["<__algorithm/max.h>", "private", "<algorithm>", "public"] }, 16 { include: ["<__algorithm/max_element.h>", "private", "<algorithm>", "public"] }, 17 { include: ["<__algorithm/min.h>", "private", "<algorithm>", "public"] }, 18 { include: ["<__algorithm/min_element.h>", "private", "<algorithm>", "public"] }, 19 { include: ["<__algorithm/minmax.h>", "private", "<algorithm>", "public"] }, 20 { include: ["<__algorithm/move.h>", "private", "<algorithm>", "public"] }, 21 { include: ["<__algorithm/partition.h>", "private", "<algorithm>", "public"] }, 22 { include: ["<__algorithm/remove.h>", "private", "<algorithm>", "public"] }, 23 { include: ["<__algorithm/remove_if.h>", "private", "<algorithm>", "public"] }, 24 { include: ["<__algorithm/reverse.h>", "private", "<algorithm>", "public"] }, 25 { include: ["<__algorithm/search.h>", "private", "<algorithm>", "public"] }, 26 { include: ["<__algorithm/sort.h>", "private", "<algorithm>", "public"] }, 27 { include: ["<__algorithm/stable_sort.h>", "private", "<algorithm>", "public"] }, 28 { include: ["<__algorithm/transform.h>", "private", "<algorithm>", "public"] }, 29 { include: ["<__algorithm/unique.h>", "private", "<algorithm>", "public"] }, 30 { include: ["<__algorithm/upper_bound.h>", "private", "<algorithm>", "public"] }, 31 32 { symbol: ["std::swap", "private", "<algorithm>", "public"] }, 33 { symbol: ["std::swap", "private", "<utility>", "public"] }, 34 { symbol: ["std::swap", "private", "<string_view>", "public"] }, 35 36 { include: ["<__chrono/duration.h>", "private", "<chrono>", "public"] }, 37 { include: ["<__chrono/steady_clock.h>", "private", "<chrono>", "public"] }, 38 { include: ["<__chrono/time_point.h>", "private", "<chrono>", "public"] }, 39 40 { symbol: ["INT32_MAX", "private", "<climits>", "public"]}, 41 42 { symbol: ["abs", "private", "<cmath>", "public"]}, 43 { symbol: ["fabs", "private", "<cmath>", "public"]}, 44 { symbol: ["sqrt", "private", "<cmath>", "public"]}, 45 46 { symbol: ["std::abs", "private", "<cmath>", "public"]}, 47 { symbol: ["std::abs", "private", "<cstdlib>", "public"]}, 48 49 # Prefer cstring over string.h for memcpy and memcmp. 50 { symbol: ["memcpy", "private", "<cstring>", "public"]}, 51 { symbol: ["memcmp", "private", "<cstring>", "public"]}, 52 { symbol: ["std::memcpy", "private", "<cstring>", "public"]}, 53 { symbol: ["std::memcmp", "private", "<cstring>", "public"]}, 54 55 # The first of these is the preferred include, but the others are acceptable. 56 { symbol: ["size_t", "private", "<cstddef>", "public"]}, 57 { symbol: ["size_t", "private", "<cstdio>", "public"]}, 58 { symbol: ["size_t", "private", "<cstdlib>", "public"]}, 59 { symbol: ["size_t", "private", "<cstring>", "public"]}, 60 { symbol: ["size_t", "private", "<ctime>", "public"]}, 61 { symbol: ["size_t", "private", "<cuchar>", "public"]}, 62 { symbol: ["size_t", "private", "<cwchar>", "public"]}, 63 64 { symbol: ["std::size_t", "private", "<cstddef>", "public"]}, 65 { symbol: ["std::size_t", "private", "<cstdio>", "public"]}, 66 { symbol: ["std::size_t", "private", "<cstdlib>", "public"]}, 67 { symbol: ["std::size_t", "private", "<cstring>", "public"]}, 68 { symbol: ["std::size_t", "private", "<ctime>", "public"]}, 69 { symbol: ["std::size_t", "private", "<cuchar>", "public"]}, 70 { symbol: ["std::size_t", "private", "<cwchar>", "public"]}, 71 72 { symbol: ["std::size", "private", "<array>", "public"]}, 73 { symbol: ["std::size", "private", "<deque>", "public"]}, 74 { symbol: ["std::size", "private", "<forward_list>", "public"]}, 75 { symbol: ["std::size", "private", "<iterator>", "public"]}, 76 { symbol: ["std::size", "private", "<list>", "public"]}, 77 { symbol: ["std::size", "private", "<map>", "public"]}, 78 { symbol: ["std::size", "private", "<regex>", "public"]}, 79 { symbol: ["std::size", "private", "<set>", "public"]}, 80 { symbol: ["std::size", "private", "<span>", "public"]}, 81 { symbol: ["std::size", "private", "<string>", "public"]}, 82 { symbol: ["std::size", "private", "<string_view>", "public"]}, 83 { symbol: ["std::size", "private", "<unordered_map>", "public"]}, 84 { symbol: ["std::size", "private", "<unordered_set>", "public"]}, 85 { symbol: ["std::size", "private", "<vector>", "public"]}, 86 87 { symbol: ["int8_t", "private", "<cstdint>", "public"]}, 88 { symbol: ["int16_t", "private", "<cstdint>", "public"]}, 89 { symbol: ["int32_t", "private", "<cstdint>", "public"]}, 90 { symbol: ["int64_t", "private", "<cstdint>", "public"]}, 91 { symbol: ["uint8_t", "private", "<cstdint>", "public"]}, 92 { symbol: ["uint16_t", "private", "<cstdint>", "public"]}, 93 { symbol: ["uint32_t", "private", "<cstdint>", "public"]}, 94 { symbol: ["uint64_t", "private", "<cstdint>", "public"]}, 95 96 { include: ["<__stddef_max_align_t.h>", "private", "<cstddef>", "public"] }, 97 98 { symbol: ["FILE", "private", "<cstdio>", "public"]}, 99 100 { include: ["<__functional/binary_function.h>", "private", "<functional>", "public"] }, 101 { include: ["<__functional/binary_negate.h>", "private", "<functional>", "public"] }, 102 { include: ["<__functional/binder1st.h>", "private", "<functional>", "public"] }, 103 { include: ["<__functional/binder2nd.h>", "private", "<functional>", "public"] }, 104 { include: ["<__functional/bind_front.h>", "private", "<functional>", "public"] }, 105 { include: ["<__functional/bind.h>", "private", "<functional>", "public"] }, 106 { include: ["<__functional/default_searcher.h>", "private", "<functional>", "public"] }, 107 { include: ["<__functional/function.h>", "private", "<functional>", "public"] }, 108 { include: ["<__functional/hash.h>", "private", "<functional>", "public"] }, 109 { include: ["<__functional/identity.h>", "private", "<functional>", "public"] }, 110 { include: ["<__functional/invoke.h>", "private", "<functional>", "public"] }, 111 { include: ["<__functional/is_transparent.h>", "private", "<functional>", "public"] }, 112 { include: ["<__functional/mem_fn.h>", "private", "<functional>", "public"] }, 113 { include: ["<__functional/mem_fun_ref.h>", "private", "<functional>", "public"] }, 114 { include: ["<__functional/not_fn.h>", "private", "<functional>", "public"] }, 115 { include: ["<__functional/operations.h>", "private", "<functional>", "public"] }, 116 { include: ["<__functional/perfect_forward.h>", "private", "<functional>", "public"] }, 117 { include: ["<__functional/pointer_to_binary_function.h>", "private", "<functional>", "public"] }, 118 { include: ["<__functional/pointer_to_unary_function.h>", "private", "<functional>", "public"] }, 119 { include: ["<__functional/ranges_operations.h>", "private", "<functional>", "public"] }, 120 { include: ["<__functional/reference_wrapper.h>", "private", "<functional>", "public"] }, 121 { include: ["<__functional/unary_function.h>", "private", "<functional>", "public"] }, 122 { include: ["<__functional/unary_negate.h>", "private", "<functional>", "public"] }, 123 { include: ["<__functional/unwrap_ref.h>", "private", "<functional>", "public"] }, 124 { include: ["<__functional/weak_result_type.h>", "private", "<functional>", "public"] }, 125 126 { include: ["<__iterator/access.h>", "private", "<iterator>", "public"] }, 127 { include: ["<__iterator/advance.h>", "private", "<iterator>", "public"] }, 128 { include: ["<__iterator/back_insert_iterator.h>", "private", "<iterator>", "public"] }, 129 { include: ["<__iterator/bounded_iter.h>", "private", "<iterator>", "public"] }, 130 { include: ["<__iterator/common_iterator.h>", "private", "<iterator>", "public"] }, 131 { include: ["<__iterator/concepts.h>", "private", "<iterator>", "public"] }, 132 { include: ["<__iterator/counted_iterator.h>", "private", "<iterator>", "public"] }, 133 { include: ["<__iterator/data.h>", "private", "<iterator>", "public"] }, 134 { include: ["<__iterator/default_sentinel.h>", "private", "<iterator>", "public"] }, 135 { include: ["<__iterator/distance.h>", "private", "<iterator>", "public"] }, 136 { include: ["<__iterator/empty.h>", "private", "<iterator>", "public"] }, 137 { include: ["<__iterator/erase_if_container.h>", "private", "<iterator>", "public"] }, 138 { include: ["<__iterator/front_insert_iterator.h>", "private", "<iterator>", "public"] }, 139 { include: ["<__iterator/incrementable_traits.h>", "private", "<iterator>", "public"] }, 140 { include: ["<__iterator/indirectly_comparable.h>", "private", "<iterator>", "public"] }, 141 { include: ["<__iterator/insert_iterator.h>", "private", "<iterator>", "public"] }, 142 { include: ["<__iterator/istreambuf_iterator.h>", "private", "<iterator>", "public"] }, 143 { include: ["<__iterator/istream_iterator.h>", "private", "<iterator>", "public"] }, 144 { include: ["<__iterator/iterator.h>", "private", "<iterator>", "public"] }, 145 { include: ["<__iterator/iterator_traits.h>", "private", "<iterator>", "public"] }, 146 { include: ["<__iterator/iter_move.h>", "private", "<iterator>", "public"] }, 147 { include: ["<__iterator/iter_swap.h>", "private", "<iterator>", "public"] }, 148 { include: ["<__iterator/mergeable.h>", "private", "<iterator>", "public"] }, 149 { include: ["<__iterator/move_iterator.h>", "private", "<iterator>", "public"] }, 150 { include: ["<__iterator/move_sentinel.h>", "private", "<iterator>", "public"] }, 151 { include: ["<__iterator/next.h>", "private", "<iterator>", "public"] }, 152 { include: ["<__iterator/ostreambuf_iterator.h>", "private", "<iterator>", "public"] }, 153 { include: ["<__iterator/ostream_iterator.h>", "private", "<iterator>", "public"] }, 154 { include: ["<__iterator/permutable.h>", "private", "<iterator>", "public"] }, 155 { include: ["<__iterator/prev.h>", "private", "<iterator>", "public"] }, 156 { include: ["<__iterator/projected.h>", "private", "<iterator>", "public"] }, 157 { include: ["<__iterator/readable_traits.h>", "private", "<iterator>", "public"] }, 158 { include: ["<__iterator/reverse_access.h>", "private", "<iterator>", "public"] }, 159 { include: ["<__iterator/reverse_iterator.h>", "private", "<iterator>", "public"] }, 160 { include: ["<__iterator/sortable.h>", "private", "<iterator>", "public"] }, 161 { include: ["<__iterator/unreachable_sentinel.h>", "private", "<iterator>", "public"] }, 162 { include: ["<__iterator/wrap_iter.h>", "private", "<iterator>", "public"] }, 163 164 # The first of these is the preferred include, but the others are acceptable. 165 { include: ["<__iterator/size.h>", "private", "<array>", "public"] }, 166 { include: ["<__iterator/size.h>", "private", "<deque>", "public"] }, 167 { include: ["<__iterator/size.h>", "private", "<forward_list>", "public"] }, 168 { include: ["<__iterator/size.h>", "private", "<iterator>", "public"] }, 169 { include: ["<__iterator/size.h>", "private", "<list>", "public"] }, 170 { include: ["<__iterator/size.h>", "private", "<map>", "public"] }, 171 { include: ["<__iterator/size.h>", "private", "<regex>", "public"] }, 172 { include: ["<__iterator/size.h>", "private", "<set>", "public"] }, 173 { include: ["<__iterator/size.h>", "private", "<string>", "public"] }, 174 { include: ["<__iterator/size.h>", "private", "<string_view>", "public"] }, 175 { include: ["<__iterator/size.h>", "private", "<unordered_map>", "public"] }, 176 { include: ["<__iterator/size.h>", "private", "<unordered_set>", "public"] }, 177 { include: ["<__iterator/size.h>", "private", "<vector>", "public"] }, 178 179 # std::size is available from all of these 180 { symbol: ["std::size", "private", "<iterator>", "public"] }, 181 { symbol: ["std::size", "private", "<array>", "public"] }, 182 { symbol: ["std::size", "private", "<deque>", "public"] }, 183 { symbol: ["std::size", "private", "<forward_list>", "public"] }, 184 { symbol: ["std::size", "private", "<list>", "public"] }, 185 { symbol: ["std::size", "private", "<map>", "public"] }, 186 { symbol: ["std::size", "private", "<regex>", "public"] }, 187 { symbol: ["std::size", "private", "<set>", "public"] }, 188 { symbol: ["std::size", "private", "<string>", "public"] }, 189 { symbol: ["std::size", "private", "<string_view>", "public"] }, 190 { symbol: ["std::size", "private", "<unordered_map>", "public"] }, 191 { symbol: ["std::size", "private", "<unordered_set>", "public"] }, 192 { symbol: ["std::size", "private", "<vector>", "public"] }, 193 194 # std::data is available from all of these 195 { symbol: ["std::data", "private", "<iterator>", "public"] }, 196 { symbol: ["std::data", "private", "<array>", "public"] }, 197 { symbol: ["std::data", "private", "<deque>", "public"] }, 198 { symbol: ["std::data", "private", "<forward_list>", "public"] }, 199 { symbol: ["std::data", "private", "<list>", "public"] }, 200 { symbol: ["std::data", "private", "<map>", "public"] }, 201 { symbol: ["std::data", "private", "<regex>", "public"] }, 202 { symbol: ["std::data", "private", "<set>", "public"] }, 203 { symbol: ["std::data", "private", "<string>", "public"] }, 204 { symbol: ["std::data", "private", "<string_view>", "public"] }, 205 { symbol: ["std::data", "private", "<unordered_map>", "public"] }, 206 { symbol: ["std::data", "private", "<unordered_set>", "public"] }, 207 { symbol: ["std::data", "private", "<vector>", "public"] }, 208 209 { include: ["<__locale>", "private", "<locale>", "public"] }, 210 211 { include: ["<__numeric/accumulate.h>", "private", "<numeric>", "public"] }, 212 { include: ["<__numeric/iota.h>", "private", "<numeric>", "public"] }, 213 214 { include: ["<__memory/shared_ptr.h>", "private", "<memory>", "public"] }, 215 { include: ["<__memory/unique_ptr.h>", "private", "<memory>", "public"] }, 216 217 { include: ["<__random/random_device.h>", "private", "<random>", "public"] }, 218 219 { include: ["<__tuple>", "private", "<tuple>", "public"] }, 220 221 { include: ["<__tree>", "private", "<set>", "public"] }, 222 223 { symbol: ["std::istringstream", "private", "<sstream>", "public"] }, 224 { symbol: ["std::ostringstream", "private", "<sstream>", "public"] }, 225 { symbol: ["std::stringstream", "private", "<sstream>", "public"] }, 226 { symbol: ["std::stringbuf", "private", "<sstream>", "public"] }, 227 { symbol: ["std::basic_istringstream", "private", "<sstream>", "public"] }, 228 { symbol: ["std::basic_ostringstream", "private", "<sstream>", "public"] }, 229 { symbol: ["std::basic_stringstream", "private", "<sstream>", "public"] }, 230 { symbol: ["std::basic_stringbuf", "private", "<sstream>", "public"] }, 231 232 { symbol: ["va_list", "private", "<stdarg.h>", "public"] }, 233 234 { symbol: ["std::string", "private", "<string>", "public"] }, 235 236 { include: ["<__fwd/string_view.h>", "private", "<string_view>", "public"] }, 237 238 { include: ["<__hash_table>", "private", "<unordered_map>", "public"] }, 239 240 { include: ["<__utility/as_const.h>", "private", "<utility>", "public"] }, 241 { include: ["<__utility/cmp.h>", "private", "<utility>", "public"] }, 242 { include: ["<__utility/__decay_copy.h>", "private", "<utility>", "public"] }, 243 { include: ["<__utility/declval.h>", "private", "<utility>", "public"] }, 244 { include: ["<__utility/exchange.h>", "private", "<utility>", "public"] }, 245 { include: ["<__utility/forward.h>", "private", "<utility>", "public"] }, 246 { include: ["<__utility/in_place.h>", "private", "<utility>", "public"] }, 247 { include: ["<__utility/integer_sequence.h>", "private", "<utility>", "public"] }, 248 { include: ["<__utility/move.h>", "private", "<utility>", "public"] }, 249 { include: ["<__utility/pair.h>", "private", "<utility>", "public"] }, 250 { include: ["<__utility/piecewise_construct.h>", "private", "<utility>", "public"] }, 251 { include: ["<__utility/rel_ops.h>", "private", "<utility>", "public"] }, 252 { include: ["<__utility/swap.h>", "private", "<utility>", "public"] }, 253 { include: ["<__utility/to_underlying.h>", "private", "<utility>", "public"] }, 254 255 256 { include: ["<__type_traits/add_const.h>", "private", "<type_traits>", "public"] }, 257 { include: ["<__type_traits/add_cv.h>", "private", "<type_traits>", "public"] }, 258 { include: ["<__type_traits/add_lvalue_reference.h>", "private", "<type_traits>", "public"] }, 259 { include: ["<__type_traits/add_pointer.h>", "private", "<type_traits>", "public"] }, 260 { include: ["<__type_traits/add_rvalue_reference.h>", "private", "<type_traits>", "public"] }, 261 { include: ["<__type_traits/add_volatile.h>", "private", "<type_traits>", "public"] }, 262 { include: ["<__type_traits/aligned_storage.h>", "private", "<type_traits>", "public"] }, 263 { include: ["<__type_traits/aligned_union.h>", "private", "<type_traits>", "public"] }, 264 { include: ["<__type_traits/alignment_of.h>", "private", "<type_traits>", "public"] }, 265 { include: ["<__type_traits/apply_cv.h>", "private", "<type_traits>", "public"] }, 266 { include: ["<__type_traits/common_reference.h>", "private", "<type_traits>", "public"] }, 267 { include: ["<__type_traits/common_type.h>", "private", "<type_traits>", "public"] }, 268 { include: ["<__type_traits/conditional.h>", "private", "<type_traits>", "public"] }, 269 { include: ["<__type_traits/conjunction.h>", "private", "<type_traits>", "public"] }, 270 { include: ["<__type_traits/copy_cv.h>", "private", "<type_traits>", "public"] }, 271 { include: ["<__type_traits/copy_cvref.h>", "private", "<type_traits>", "public"] }, 272 { include: ["<__type_traits/decay.h>", "private", "<type_traits>", "public"] }, 273 { include: ["<__type_traits/disjunction.h>", "private", "<type_traits>", "public"] }, 274 { include: ["<__type_traits/enable_if.h>", "private", "<type_traits>", "public"] }, 275 { include: ["<__type_traits/extent.h>", "private", "<type_traits>", "public"] }, 276 { include: ["<__type_traits/has_unique_object_representation.h>", "private", "<type_traits>", "public"] }, 277 { include: ["<__type_traits/has_virtual_destructor.h>", "private", "<type_traits>", "public"] }, 278 { include: ["<__type_traits/integral_constant.h>", "private", "<type_traits>", "public"] }, 279 { include: ["<__type_traits/is_abstract.h>", "private", "<type_traits>", "public"] }, 280 { include: ["<__type_traits/is_aggregate.h>", "private", "<type_traits>", "public"] }, 281 { include: ["<__type_traits/is_arithmetic.h>", "private", "<type_traits>", "public"] }, 282 { include: ["<__type_traits/is_array.h>", "private", "<type_traits>", "public"] }, 283 { include: ["<__type_traits/is_assignable.h>", "private", "<type_traits>", "public"] }, 284 { include: ["<__type_traits/is_base_of.h>", "private", "<type_traits>", "public"] }, 285 { include: ["<__type_traits/is_bounded_array.h>", "private", "<type_traits>", "public"] }, 286 { include: ["<__type_traits/is_callable.h>", "private", "<type_traits>", "public"] }, 287 { include: ["<__type_traits/is_class.h>", "private", "<type_traits>", "public"] }, 288 { include: ["<__type_traits/is_compound.h>", "private", "<type_traits>", "public"] }, 289 { include: ["<__type_traits/is_constant_evaluated.h>", "private", "<type_traits>", "public"] }, 290 { include: ["<__type_traits/is_const.h>", "private", "<type_traits>", "public"] }, 291 { include: ["<__type_traits/is_constructible.h>", "private", "<type_traits>", "public"] }, 292 { include: ["<__type_traits/is_convertible.h>", "private", "<type_traits>", "public"] }, 293 { include: ["<__type_traits/is_copy_assignable.h>", "private", "<type_traits>", "public"] }, 294 { include: ["<__type_traits/is_copy_constructible.h>", "private", "<type_traits>", "public"] }, 295 { include: ["<__type_traits/is_core_convertible.h>", "private", "<type_traits>", "public"] }, 296 { include: ["<__type_traits/is_default_constructible.h>", "private", "<type_traits>", "public"] }, 297 { include: ["<__type_traits/is_destructible.h>", "private", "<type_traits>", "public"] }, 298 { include: ["<__type_traits/is_empty.h>", "private", "<type_traits>", "public"] }, 299 { include: ["<__type_traits/is_enum.h>", "private", "<type_traits>", "public"] }, 300 { include: ["<__type_traits/is_final.h>", "private", "<type_traits>", "public"] }, 301 { include: ["<__type_traits/is_floating_point.h>", "private", "<type_traits>", "public"] }, 302 { include: ["<__type_traits/is_function.h>", "private", "<type_traits>", "public"] }, 303 { include: ["<__type_traits/is_fundamental.h>", "private", "<type_traits>", "public"] }, 304 { include: ["<__type_traits/is_integral.h>", "private", "<type_traits>", "public"] }, 305 { include: ["<__type_traits/is_literal_type.h>", "private", "<type_traits>", "public"] }, 306 { include: ["<__type_traits/is_member_function_pointer.h>", "private", "<type_traits>", "public"] }, 307 { include: ["<__type_traits/is_member_object_pointer.h>", "private", "<type_traits>", "public"] }, 308 { include: ["<__type_traits/is_member_pointer.h>", "private", "<type_traits>", "public"] }, 309 { include: ["<__type_traits/is_move_assignable.h>", "private", "<type_traits>", "public"] }, 310 { include: ["<__type_traits/is_move_constructible.h>", "private", "<type_traits>", "public"] }, 311 { include: ["<__type_traits/is_nothrow_assignable.h>", "private", "<type_traits>", "public"] }, 312 { include: ["<__type_traits/is_nothrow_constructible.h>", "private", "<type_traits>", "public"] }, 313 { include: ["<__type_traits/is_nothrow_convertible.h>", "private", "<type_traits>", "public"] }, 314 { include: ["<__type_traits/is_nothrow_copy_assignable.h>", "private", "<type_traits>", "public"] }, 315 { include: ["<__type_traits/is_nothrow_copy_constructible.h>", "private", "<type_traits>", "public"] }, 316 { include: ["<__type_traits/is_nothrow_default_constructible.h>", "private", "<type_traits>", "public"] }, 317 { include: ["<__type_traits/is_nothrow_destructible.h>", "private", "<type_traits>", "public"] }, 318 { include: ["<__type_traits/is_nothrow_move_assignable.h>", "private", "<type_traits>", "public"] }, 319 { include: ["<__type_traits/is_nothrow_move_constructible.h>", "private", "<type_traits>", "public"] }, 320 { include: ["<__type_traits/is_null_pointer.h>", "private", "<type_traits>", "public"] }, 321 { include: ["<__type_traits/is_object.h>", "private", "<type_traits>", "public"] }, 322 { include: ["<__type_traits/is_pod.h>", "private", "<type_traits>", "public"] }, 323 { include: ["<__type_traits/is_pointer.h>", "private", "<type_traits>", "public"] }, 324 { include: ["<__type_traits/is_polymorphic.h>", "private", "<type_traits>", "public"] }, 325 { include: ["<__type_traits/is_primary_template.h>", "private", "<type_traits>", "public"] }, 326 { include: ["<__type_traits/is_referenceable.h>", "private", "<type_traits>", "public"] }, 327 { include: ["<__type_traits/is_reference.h>", "private", "<type_traits>", "public"] }, 328 { include: ["<__type_traits/is_reference_wrapper.h>", "private", "<type_traits>", "public"] }, 329 { include: ["<__type_traits/is_same.h>", "private", "<type_traits>", "public"] }, 330 { include: ["<__type_traits/is_scalar.h>", "private", "<type_traits>", "public"] }, 331 { include: ["<__type_traits/is_scoped_enum.h>", "private", "<type_traits>", "public"] }, 332 { include: ["<__type_traits/is_signed.h>", "private", "<type_traits>", "public"] }, 333 { include: ["<__type_traits/is_signed_integer.h>", "private", "<type_traits>", "public"] }, 334 { include: ["<__type_traits/is_standard_layout.h>", "private", "<type_traits>", "public"] }, 335 { include: ["<__type_traits/is_trivial.h>", "private", "<type_traits>", "public"] }, 336 { include: ["<__type_traits/is_trivially_assignable.h>", "private", "<type_traits>", "public"] }, 337 { include: ["<__type_traits/is_trivially_constructible.h>", "private", "<type_traits>", "public"] }, 338 { include: ["<__type_traits/is_trivially_copyable.h>", "private", "<type_traits>", "public"] }, 339 { include: ["<__type_traits/is_trivially_copy_assignable.h>", "private", "<type_traits>", "public"] }, 340 { include: ["<__type_traits/is_trivially_copy_constructible.h>", "private", "<type_traits>", "public"] }, 341 { include: ["<__type_traits/is_trivially_default_constructible.h>", "private", "<type_traits>", "public"] }, 342 { include: ["<__type_traits/is_trivially_destructible.h>", "private", "<type_traits>", "public"] }, 343 { include: ["<__type_traits/is_trivially_move_assignable.h>", "private", "<type_traits>", "public"] }, 344 { include: ["<__type_traits/is_trivially_move_constructible.h>", "private", "<type_traits>", "public"] }, 345 { include: ["<__type_traits/is_unbounded_array.h>", "private", "<type_traits>", "public"] }, 346 { include: ["<__type_traits/is_union.h>", "private", "<type_traits>", "public"] }, 347 { include: ["<__type_traits/is_unsigned.h>", "private", "<type_traits>", "public"] }, 348 { include: ["<__type_traits/is_unsigned_integer.h>", "private", "<type_traits>", "public"] }, 349 { include: ["<__type_traits/is_valid_expansion.h>", "private", "<type_traits>", "public"] }, 350 { include: ["<__type_traits/is_void.h>", "private", "<type_traits>", "public"] }, 351 { include: ["<__type_traits/is_volatile.h>", "private", "<type_traits>", "public"] }, 352 { include: ["<__type_traits/lazy.h>", "private", "<type_traits>", "public"] }, 353 { include: ["<__type_traits/make_32_64_or_128_bit.h>", "private", "<type_traits>", "public"] }, 354 { include: ["<__type_traits/make_signed.h>", "private", "<type_traits>", "public"] }, 355 { include: ["<__type_traits/make_unsigned.h>", "private", "<type_traits>", "public"] }, 356 { include: ["<__type_traits/nat.h>", "private", "<type_traits>", "public"] }, 357 { include: ["<__type_traits/negation.h>", "private", "<type_traits>", "public"] }, 358 { include: ["<__type_traits/promote.h>", "private", "<type_traits>", "public"] }, 359 { include: ["<__type_traits/rank.h>", "private", "<type_traits>", "public"] }, 360 { include: ["<__type_traits/remove_all_extents.h>", "private", "<type_traits>", "public"] }, 361 { include: ["<__type_traits/remove_const.h>", "private", "<type_traits>", "public"] }, 362 { include: ["<__type_traits/remove_cv.h>", "private", "<type_traits>", "public"] }, 363 { include: ["<__type_traits/remove_cvref.h>", "private", "<type_traits>", "public"] }, 364 { include: ["<__type_traits/remove_extent.h>", "private", "<type_traits>", "public"] }, 365 { include: ["<__type_traits/remove_pointer.h>", "private", "<type_traits>", "public"] }, 366 { include: ["<__type_traits/remove_reference.h>", "private", "<type_traits>", "public"] }, 367 { include: ["<__type_traits/remove_volatile.h>", "private", "<type_traits>", "public"] }, 368 { include: ["<__type_traits/type_identity.h>", "private", "<type_traits>", "public"] }, 369 { include: ["<__type_traits/type_list.h>", "private", "<type_traits>", "public"] }, 370 { include: ["<__type_traits/underlying_type.h>", "private", "<type_traits>", "public"] }, 371 { include: ["<__type_traits/void_t.h>", "private", "<type_traits>", "public"] }, 372 373 { include: ["<__variant/monostate.h>", "private", "<variant>", "public"] }, 374 375 { symbol: ["std::__bit_reference", "private", "<vector>", "public"] }, 376 { include: ["<__bit_reference>", "private", "<vector>", "public"] }, 377 378 { include: ["<scripts/pnglibconf.h.prebuilt>", "private", "<pngconf.h>", "public"] }, 379 380 # Without these, IWYU won't accept the C++ wrappers and throws 381 # a mysterious "cyclical import" error. 382 # https://github.com/include-what-you-use/include-what-you-use/blob/4c0f39615982c57a9cb313c971c6f45fca1cc1fe/iwyu_include_picker.cc#L573 383 { include: ["<assert.h>", "public", "<cassert>", "public"] }, 384 { include: ["<complex.h>", "public", "<ccomplex>", "public"] }, 385 { include: ["<ctype.h>", "public", "<cctype>", "public"] }, 386 { include: ["<errno.h>", "public", "<cerrno>", "public"] }, 387 { include: ["<fenv.h>", "public", "<cfenv>", "public"] }, 388 { include: ["<float.h>", "public", "<cfloat>", "public"] }, 389 { include: ["<inttypes.h>", "public", "<cinttypes>", "public"] }, 390 { include: ["<iso646.h>", "public", "<ciso646>", "public"] }, 391 { include: ["<limits.h>", "public", "<climits>", "public"] }, 392 { include: ["<locale.h>", "public", "<clocale>", "public"] }, 393 { include: ["<math.h>", "public", "<cmath>", "public"] }, 394 { include: ["<setjmp.h>", "public", "<csetjmp>", "public"] }, 395 { include: ["<signal.h>", "public", "<csignal>", "public"] }, 396 { include: ["<stdalign.h>", "public", "<cstdalign>", "public"] }, 397 { include: ["<stdarg.h>", "public", "<cstdarg>", "public"] }, 398 { include: ["<stdbool.h>", "public", "<cstdbool>", "public"] }, 399 { include: ["<stddef.h>", "public", "<cstddef>", "public"] }, 400 { include: ["<stdint.h>", "public", "<cstdint>", "public"] }, 401 { include: ["<stdio.h>", "public", "<cstdio>", "public"] }, 402 { include: ["<stdlib.h>", "public", "<cstdlib>", "public"] }, 403 { include: ["<string.h>", "public", "<cstring>", "public"] }, 404 { include: ["<tgmath.h>", "public", "<ctgmath>", "public"] }, 405 { include: ["<time.h>", "public", "<ctime>", "public"] }, 406 { include: ["<uchar.h>", "public", "<cuchar>", "public"] }, 407 { include: ["<wchar.h>", "public", "<cwchar>", "public"] }, 408 { include: ["<wctype.h>", "public", "<cwctype>", "public"] }, 409 410 # From https://github.com/include-what-you-use/include-what-you-use/blob/4c0f39615982c57a9cb313c971c6f45fca1cc1fe/iwyu_include_picker.cc#L327 411 { symbol: ["std::allocator", "private", "<memory>", "public"] }, 412 { symbol: ["std::allocator", "private", "<string>", "public"] }, 413 { symbol: ["std::allocator", "private", "<vector>", "public"] }, 414 { symbol: ["std::allocator", "private", "<map>", "public"] }, 415 { symbol: ["std::allocator", "private", "<set>", "public"] }, 416 { symbol: ["std::char_traits", "private", "<string>", "public"] }, 417 { symbol: ["std::char_traits", "private", "<ostream>", "public"] }, 418 { symbol: ["std::char_traits", "private", "<istream>", "public"] }, 419 420 { symbol: ["std::time_t", "private", "<ctime>", "public"] }, 421 { symbol: ["time_t", "private", "<ctime>", "public"] }, 422 { symbol: ["tm", "private", "<ctime>", "public"] }, 423 424 # We are pretty forgiving with iostream headers. If we specify 425 # any of them, that is generally sufficient. 426 # https://github.com/include-what-you-use/include-what-you-use/blob/4c0f39615982c57a9cb313c971c6f45fca1cc1fe/iwyu_include_picker.cc#L995 427 {include: ["<ios>", "public", "<istream>", "public"] }, 428 {include: ["<ios>", "public", "<ostream>", "public"] }, 429 {include: ["<iosfwd>", "public", "<ios>", "public"] }, 430 {include: ["<iosfwd>", "public", "<streambuf>", "public"] }, 431 {include: ["<istream>", "public", "<fstream>", "public"] }, 432 {include: ["<istream>", "public", "<iostream>", "public"] }, 433 {include: ["<istream>", "public", "<sstream>", "public"] }, 434 {include: ["<ostream>", "public", "<fstream>", "public"] }, 435 {include: ["<ostream>", "public", "<iostream>", "public"] }, 436 {include: ["<ostream>", "public", "<istream>", "public"] }, 437 {include: ["<ostream>", "public", "<sstream>", "public"] }, 438 {include: ["<streambuf>", "public", "<ios>", "public"] }, 439 440 { symbol: ["inflate", "private", "\"zlib.h\"", "public"] }, 441 { symbol: ["inflateEnd", "private", "\"zlib.h\"", "public"] }, 442 443 { include: ["<asm/errno-base.h>", "private", "<errno.h>", "public"] }, 444 445 # Pretend SK_DEBUG is defined in SkDebug.h 446 { symbol: ["SK_DEBUG", "private", "\"include/private/base/SkDebug.h\"", "public"] }, 447 { symbol: ["SK_DEBUG", "private", "\"include/private/base/SkLoadUserConfig.h\"", "public"] }, 448 449 # Pretend SK_GANESH is defined in any of these 450 { symbol: ["SK_GANESH", "private", "\"include/private/base/SkLoadUserConfig.h\"", "public"] }, 451 { symbol: ["SK_GANESH", "private", "\"include/core/SkTypes.h\"", "public"] }, 452 453 { symbol: ["SkScalar", "private", "\"include/core/SkScalar.h\"", "public"] }, 454 455 # The TRACE_EVENT macros use std::atomic, but TraceEvent.h already includes <atomic> alongside 456 # the macros themselves; IWYU just can't see through the preprocessor. 457 { symbol: ["std::atomic", "private", "<atomic>", "public"] }, 458 { symbol: ["std::atomic", "private", "\"src/core/SkTraceEvent.h\"", "public"] }, 459 460 # IWYU seems to get confused on where the namespace sktext is "defined". Any files in 461 # this list are ok. 462 { symbol: ["sktext", "private", "\"src/text/StrikeForGPU.h\"", "public"] }, 463 { symbol: ["sktext", "private", "\"src/text/GlyphRun.h\"", "public"] }, 464 465 # IWYU gets confused where namespace skia_private is "defined". Start a list, but figure 466 # out if this can be done with a glob. 467 { symbol: ["skia_private", "private", "\"include/private/base/SkTemplates.h\"", "public"] }, 468 { symbol: ["skia_private", "private", "\"include/private/base/SkTArray.h\"", "public"] }, 469 { symbol: ["skia_private", "private", "\"src/core/SkTHash.h\"", "public"] }, 470 { symbol: ["skia_private", "private", "\"src/core/SkTraceEvent.h\"", "public"] }, 471 472 { include: ["\"modules/skcms/src/skcms_public.h\"", "private", "\"modules/skcms/skcms.h\"", "public"] }, 473 474 { include: ["\"jmorecfg.h\"", "private", "\"jpeglib.h\"", "public"] }, 475 476 { include: ["\"chromeconf.h\"", "private", "\"zlib.h\"", "public"] }, 477] 478