xref: /freebsd/contrib/llvm-project/clang/lib/Tooling/Inclusions/IncludeStyle.cpp (revision 7877fdebeeb35fad1cbbafce22598b1bdf97c786)
1 //===--- IncludeStyle.cpp - Style of C++ #include directives -----*- C++-*-===//
2 //
3 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4 // See https://llvm.org/LICENSE.txt for license information.
5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6 //
7 //===----------------------------------------------------------------------===//
8 
9 #include "clang/Tooling/Inclusions/IncludeStyle.h"
10 
11 using clang::tooling::IncludeStyle;
12 
13 namespace llvm {
14 namespace yaml {
15 
16 void MappingTraits<IncludeStyle::IncludeCategory>::mapping(
17     IO &IO, IncludeStyle::IncludeCategory &Category) {
18   IO.mapOptional("Regex", Category.Regex);
19   IO.mapOptional("Priority", Category.Priority);
20   IO.mapOptional("SortPriority", Category.SortPriority);
21 }
22 
23 void ScalarEnumerationTraits<IncludeStyle::IncludeBlocksStyle>::enumeration(
24     IO &IO, IncludeStyle::IncludeBlocksStyle &Value) {
25   IO.enumCase(Value, "Preserve", IncludeStyle::IBS_Preserve);
26   IO.enumCase(Value, "Merge", IncludeStyle::IBS_Merge);
27   IO.enumCase(Value, "Regroup", IncludeStyle::IBS_Regroup);
28 }
29 
30 } // namespace yaml
31 } // namespace llvm
32