00001 #pragma once
00002
00003 #ifndef EMITTERMANIP_H_62B23520_7C8E_11DE_8A39_0800200C9A66
00004 #define EMITTERMANIP_H_62B23520_7C8E_11DE_8A39_0800200C9A66
00005
00006
00007 #include <string>
00008
00009 namespace YAML
00010 {
00011 enum EMITTER_MANIP {
00012
00013 Auto,
00014
00015
00016 EmitNonAscii,
00017 EscapeNonAscii,
00018
00019
00020
00021 SingleQuoted,
00022 DoubleQuoted,
00023 Literal,
00024
00025
00026 YesNoBool,
00027 TrueFalseBool,
00028 OnOffBool,
00029 UpperCase,
00030 LowerCase,
00031 CamelCase,
00032 LongBool,
00033 ShortBool,
00034
00035
00036 Dec,
00037 Hex,
00038 Oct,
00039
00040
00041 BeginSeq,
00042 EndSeq,
00043 Flow,
00044 Block,
00045
00046
00047 BeginMap,
00048 EndMap,
00049 Key,
00050 Value,
00051
00052
00053
00054 LongKey
00055 };
00056
00057 struct _Indent {
00058 _Indent(int value_): value(value_) {}
00059 int value;
00060 };
00061
00062 inline _Indent Indent(int value) {
00063 return _Indent(value);
00064 }
00065
00066 struct _Alias {
00067 _Alias(const std::string& content_): content(content_) {}
00068 std::string content;
00069 };
00070
00071 inline _Alias Alias(const std::string content) {
00072 return _Alias(content);
00073 }
00074
00075 struct _Anchor {
00076 _Anchor(const std::string& content_): content(content_) {}
00077 std::string content;
00078 };
00079
00080 inline _Anchor Anchor(const std::string content) {
00081 return _Anchor(content);
00082 }
00083
00084 struct _Tag {
00085 _Tag(const std::string& content_): content(content_), verbatim(true) {}
00086 std::string content;
00087 bool verbatim;
00088 };
00089
00090 inline _Tag VerbatimTag(const std::string& content) {
00091 return _Tag(content);
00092 }
00093
00094 struct _Comment {
00095 _Comment(const std::string& content_): content(content_) {}
00096 std::string content;
00097 };
00098
00099 inline _Comment Comment(const std::string content) {
00100 return _Comment(content);
00101 }
00102 }
00103
00104 #endif // EMITTERMANIP_H_62B23520_7C8E_11DE_8A39_0800200C9A66