rapidyaml
0.15.2
parse and emit YAML, and do it fast
Loading...
Searching...
No Matches
doxy_common.hpp
Go to the documentation of this file.
1
namespace
c4
{
2
namespace
yml
{
3
4
5
/** @defgroup doc_quickstart Quickstart
6
*
7
* Example code for every feature.
8
*/
9
10
11
/** @defgroup doc_parse Parse utilities
12
* @see @ref sample_parse_in_place()
13
* @see @ref sample_parse_in_arena()
14
* @see @ref sample_parse_file()
15
* @see @ref sample_parse_reuse_tree()
16
* @see @ref sample_parse_reuse_parser()
17
* @see @ref sample_parse_reuse_tree_and_parser()
18
* @see @ref sample_location_tracking()
19
*/
20
/** @defgroup doc_parse_in_place__with_existing_parser Parse in place with existing parser
21
* @ingroup doc_parse
22
*/
23
/** @defgroup doc_parse_in_place___with_temporary_parser Parse in place with temporary parser
24
* @ingroup doc_parse
25
*/
26
/** @defgroup doc_parse_in_arena__with_existing_parser Parse in arena with existing parser
27
* @ingroup doc_parse
28
*/
29
/** @defgroup doc_parse_in_arena__with_temporary_parser Parse in arena with temporary parser
30
* @ingroup doc_parse
31
*/
32
33
34
/** @defgroup doc_node_type Node types
35
*/
36
37
38
/** @defgroup doc_tree Tree utilities
39
* @see @ref sample_quick_overview()
40
* @see @ref sample_iterate_tree()
41
* @see @ref sample_create_tree()
42
* @see @ref sample_tree_arena()
43
*
44
* @see @ref sample_static_trees()
45
* @see @ref sample_location_tracking()
46
*
47
* @see @ref sample_docs()
48
* @see @ref sample_anchors_and_aliases()
49
* @see @ref sample_tags()
50
*/
51
52
53
/** @defgroup doc_node_classes Node classes
54
*
55
* High-level node classes.
56
*
57
* @see @ref sample_quick_overview()
58
* @see @ref sample_iterate_tree()
59
* @see @ref sample_create_tree()
60
* @see @ref sample_create_tree_style()
61
* @see @ref sample_tree_arena()
62
*/
63
64
65
/** @defgroup doc_emit Emit utilities
66
*
67
* Utilities to emit YAML and JSON, either to a memory buffer or to a
68
* file or ostream-like class.
69
*
70
* @see @ref sample_emit_to_container()
71
* @see @ref sample_emit_to_stream()
72
* @see @ref sample_emit_to_file()
73
* @see @ref sample_emit_nested_node()
74
* @see @ref sample_style()
75
*/
76
77
/** @defgroup doc_emit_to_buffer Emit to a memory buffer
78
* @ingroup doc_emit
79
*/
80
/** @defgroup doc_emit_to_buffer_from_root Emit full tree
81
* @ingroup doc_emit_to_buffer
82
*/
83
/** @defgroup doc_emit_to_buffer_from_node_id Emit from nested node id
84
* @ingroup doc_emit_to_buffer
85
*/
86
/** @defgroup doc_emit_to_buffer_from_noderef Emit from ConstNodeRef
87
* @ingroup doc_emit_to_buffer
88
*/
89
90
/** @defgroup doc_emit_to_container Emit to a container
91
* Overloads to emit to contiguous memory container of char like std::string or std::vector<char>
92
* @ingroup doc_emit
93
*/
94
/** @defgroup doc_emit_to_container_from_root Emit full tree
95
* @ingroup doc_emit_to_container
96
*/
97
/** @defgroup doc_emit_to_container_from_node_id Emit from nested node id
98
* @ingroup doc_emit_to_container
99
*/
100
/** @defgroup doc_emit_to_container_from_noderef Emit from ConstNodeRef
101
* @ingroup doc_emit_to_container
102
*/
103
104
/** @defgroup doc_emit_to_file Emit to file
105
* @ingroup doc_emit
106
*/
107
/** @defgroup doc_emit_to_file_from_root Emit full tree
108
* @ingroup doc_emit_to_file
109
*/
110
/** @defgroup doc_emit_to_file_from_node_id Emit from nested node id
111
* @ingroup doc_emit_to_file
112
*/
113
/** @defgroup doc_emit_to_file_from_noderef Emit from ConstNodeRef
114
* @ingroup doc_emit_to_file
115
*/
116
117
/** @defgroup doc_emit_to_ostream Emit to an STL-like ostream
118
* @ingroup doc_emit
119
*/
120
121
/** @defgroup doc_writers Writer objects to use with an Emitter
122
* @ingroup doc_emit
123
*/
124
125
126
127
/** @defgroup doc_serialization Serialization/deserialization
128
*/
129
/** @defgroup doc_serialization_using How to use (de)serialization
130
*
131
* Shows basic use of the calls to serialize and deserialize.
132
*
133
* @ingroup doc_serialization
134
* @see @ref sample_serialize_basic()
135
* @see @ref doc_serialization_user_types to implement for user types
136
*/
137
// don't wrap markdown links! doxygen won't render them.
138
/** @defgroup doc_serialization_user_types Serialization of user types
139
* @ingroup doc_serialization
140
*
141
* Shows how to implement serialization for custom user types.
142
* rapidyaml provides a serialization implementation for all
143
* fundamental types, and optionally for some STL containers. To
144
* enable use with any type, rapidyaml uses
145
* [ADL to dispatch to type-specific](http://en.cppreference.com/w/cpp/language/adl)
146
* function overloads. For serializing or deserializing custom user
147
* types, you only need to provide the appropriate overloads, which
148
* are explained here.
149
*
150
* @see @ref doc_serialization_overview to find how the user-provided functions fit into rapidyaml's serialization pipeline.
151
*/
152
/** @defgroup doc_serialization_overview Serialization overview
153
* Shows how user-provided functions fit into ryml's structure.
154
* @ingroup doc_serialization
155
*/
156
157
/** @defgroup doc_serialization_tree Serialization for Tree
158
* Shows ryml's default implementation of tree serialization
159
* @ingroup doc_serialization
160
*/
161
/** @defgroup doc_serialization_tree_read Read from Tree
162
* Implementation of deserialization from a tree
163
* @ingroup doc_serialization_tree
164
*/
165
/** @defgroup doc_serialization_tree_write Write to Tree
166
* Implementation of serialization to a tree
167
* @ingroup doc_serialization_tree
168
*/
169
/** @defgroup doc_serialization_tree_write_arena Arena utils
170
* Implementation utils for serializing scalars in a tree's arena.
171
*
172
* These functions are implementation helpers used by @ref
173
* Tree::to_arena() and @ref NodeRef::to_arena() to grow the tree
174
* arena as needed and serialize scalars in it. There should be no
175
* reason to call these functions directly.
176
*
177
* They can be overriden by the user to customize behavior for a user
178
* type, but generally there should be no reason to do so -- if you
179
* think there is, please open an issue in github.
180
*
181
* @ingroup doc_serialization_tree_write
182
*/
183
184
/** @defgroup doc_serialization_node Serialization for nodes
185
* Shows ryml's default implementation of node serialization
186
* @ingroup doc_serialization
187
*/
188
/** @defgroup doc_serialization_node_write Write to NodeRef
189
* @ingroup doc_serialization_node
190
*/
191
/** @defgroup doc_serialization_node_read Read from ConstNodeRef
192
* @ingroup doc_serialization_node
193
*/
194
195
196
/** @defgroup doc_ref_utils Anchor/Reference utilities
197
*
198
* @see @ref sample_anchors_and_aliases()
199
* @see @ref sample_anchors_and_aliases_create()
200
* */
201
202
/** @defgroup doc_tag_utils Tag utilities
203
* @see @ref sample_tags()
204
*/
205
206
/** @defgroup doc_file_utils File utils
207
*
208
* Functions for loading/saving a file from/to disk.
209
*/
210
211
212
/** @defgroup doc_scalar Scalar utilities
213
*/
214
/** @defgroup doc_scalar_style Scalar style helpers
215
* These functions are used by the emitter to choose a scalar style when a scalar does not have it set.
216
* @ingroup doc_scalar
217
* @ingroup doc_emit
218
*/
219
/** @defgroup doc_scalar_charconv Scalar charconv helpers
220
* These functions are used by the parser and emitter to convert scalars to and from chars.
221
* @ingroup doc_scalar
222
* @ingroup doc_emit
223
* @ingroup doc_parse
224
* @ingroup doc_serialization
225
*/
226
/** @defgroup doc_scalar_filter Scalar filter processors
227
*
228
* These are internal utilities used by @ref ParseEngine to filter
229
* YAML scalars; normally there is no reason for a user to be manually
230
* using these classes.
231
*
232
* @ingroup doc_scalar
233
* @ingroup doc_parse */
234
235
236
/** @defgroup doc_error_handling Error handling
237
*
238
* Utilities to report handle errors, and to build and report error
239
* messages.
240
*
241
* @see @ref sample_error_handler()
242
*/
243
244
/** @defgroup doc_callbacks Callbacks for errors and allocation
245
*
246
* Functions called by ryml to allocate/free memory and to report
247
* errors.
248
*
249
* @see @ref sample_error_handler()
250
* @see @ref sample_global_allocator()
251
* @see @ref sample_per_tree_allocator()
252
*/
253
254
255
// document macros for doxygen
256
257
/** define this macro with a boolean value to enable/disable
258
* assertions to check preconditions and assumptions throughout the
259
* codebase; this causes a slowdown of the code, and larger code
260
* size. By default, this macro is defined unless NDEBUG is defined
261
* (see C4_USE_ASSERT); as a result, by default this macro is truthy
262
* only in debug builds. */
263
# define RYML_USE_ASSERT
264
265
/** (Undefined by default) Define this macro to disable ryml's default
266
* implementation of the callback functions. See @ref doc_callbacks. */
267
# define RYML_NO_DEFAULT_CALLBACKS
268
269
/** (Undefined by default) When this macro is defined (and
270
* @ref RYML_NO_DEFAULT_CALLBACKS is not defined), the default error
271
* handler will throw exceptions. See @ref doc_error_handling. */
272
# define RYML_DEFAULT_CALLBACK_USES_EXCEPTIONS
273
274
/** Conditionally expands to `noexcept` when @ref RYML_USE_ASSERT is 0 and
275
* is empty otherwise. The user is unable to override this macro. */
276
# define RYML_NOEXCEPT
277
278
/** (Undefined by default) Use shorter error message from
279
* checks/asserts: do not show the check condition in the error
280
* message. */
281
# defined RYML_SHORT_CHECK_MSG
282
283
284
}
// namespace yml
285
}
// namespace c4
c4::yml
Definition
doxy_common.hpp:2
c4
Definition
doxy_common.hpp:1
doxy_common.hpp
Generated by
1.15.0