1*4ba319b5SDimitry Andric //===--- IncludeStyle.cpp - Style of C++ #include directives -----*- C++-*-===//
2*4ba319b5SDimitry Andric //
3*4ba319b5SDimitry Andric //                     The LLVM Compiler Infrastructure
4*4ba319b5SDimitry Andric //
5*4ba319b5SDimitry Andric // This file is distributed under the University of Illinois Open Source
6*4ba319b5SDimitry Andric // License. See LICENSE.TXT for details.
7*4ba319b5SDimitry Andric //
8*4ba319b5SDimitry Andric //===----------------------------------------------------------------------===//
9*4ba319b5SDimitry Andric 
10*4ba319b5SDimitry Andric #include "clang/Tooling/Inclusions/IncludeStyle.h"
11*4ba319b5SDimitry Andric 
12*4ba319b5SDimitry Andric using clang::tooling::IncludeStyle;
13*4ba319b5SDimitry Andric 
14*4ba319b5SDimitry Andric namespace llvm {
15*4ba319b5SDimitry Andric namespace yaml {
16*4ba319b5SDimitry Andric 
mapping(IO & IO,IncludeStyle::IncludeCategory & Category)17*4ba319b5SDimitry Andric void MappingTraits<IncludeStyle::IncludeCategory>::mapping(
18*4ba319b5SDimitry Andric     IO &IO, IncludeStyle::IncludeCategory &Category) {
19*4ba319b5SDimitry Andric   IO.mapOptional("Regex", Category.Regex);
20*4ba319b5SDimitry Andric   IO.mapOptional("Priority", Category.Priority);
21*4ba319b5SDimitry Andric }
22*4ba319b5SDimitry Andric 
enumeration(IO & IO,IncludeStyle::IncludeBlocksStyle & Value)23*4ba319b5SDimitry Andric void ScalarEnumerationTraits<IncludeStyle::IncludeBlocksStyle>::enumeration(
24*4ba319b5SDimitry Andric     IO &IO, IncludeStyle::IncludeBlocksStyle &Value) {
25*4ba319b5SDimitry Andric   IO.enumCase(Value, "Preserve", IncludeStyle::IBS_Preserve);
26*4ba319b5SDimitry Andric   IO.enumCase(Value, "Merge", IncludeStyle::IBS_Merge);
27*4ba319b5SDimitry Andric   IO.enumCase(Value, "Regroup", IncludeStyle::IBS_Regroup);
28*4ba319b5SDimitry Andric }
29*4ba319b5SDimitry Andric 
30*4ba319b5SDimitry Andric } // namespace yaml
31*4ba319b5SDimitry Andric } // namespace llvm
32