BDE 4.39.x Production Release
Loading...
Searching...
No Matches
bdlb.h
Go to the documentation of this file.
1
/// @file bdlb.h
2
///
3
///
4
/// @defgroup bdlb Package bdlb
5
/// @brief Basic Development Library Basis (bdlb)
6
/// @addtogroup bdl
7
/// @{
8
/// @addtogroup bdlb
9
/// @{
10
/// * <a href="#bdlb-purpose"> Purpose</a>
11
/// * <a href="#bdlb-mnemonic"> Mnemonic </a>
12
/// * <a href="#bdlb-description"> Description </a>
13
/// * <a href="#bdlb-hierarchical-synopsis"> Hierarchical Synopsis </a>
14
/// * <a href="#bdlb-component-synopsis"> Component Synopsis </a>
15
///
16
/// # Purpose {#bdlb-purpose}
17
/// Provide basic types and utilities.
18
///
19
/// # Mnemonic {#bdlb-mnemonic}
20
/// Basic Development Library Basis (bdlb)
21
///
22
/// # Description {#bdlb-description}
23
/// The 'bdlb' package provides utility 'struct's in the broad areas
24
/// of bit manipulation, string handling, random number generation, and hashing.
25
/// Classes representing nullable and variant types are also provided.
26
///
27
/// ## Hierarchical Synopsis {#bdlb-hierarchical-synopsis}
28
///
29
/// The 'bdlb' package currently has 57 components having 5 levels of physical
30
/// dependency. The list below shows the hierarchical ordering of the components.
31
/// The order of components within each level is not architecturally significant,
32
/// just alphabetical.
33
/// @code
34
/// 5. bdlb_bitstringutil
35
/// bdlb_indexspanstringutil
36
/// bdlb_indexspanutil
37
/// bdlb_nullablevalueref
38
///
39
/// 4. bdlb_bigendian
40
/// bdlb_bitstringimputil
41
/// bdlb_caselessstringviewequalto
42
/// bdlb_caselessstringviewless
43
/// bdlb_indexspan
44
/// bdlb_nullableallocatedvalue
45
/// bdlb_nullablevalue
46
/// bdlb_optionalprinter
47
/// bdlb_printadapter
48
/// bdlb_variant
49
/// bdlb_variantprinter
50
///
51
/// 3. bdlb_bitmaskutil
52
/// bdlb_caselessstringviewhash
53
/// bdlb_doublecompareutil
54
/// bdlb_guidutil
55
/// bdlb_numericparseutil
56
/// bdlb_printmethods
57
/// bdlb_random
58
/// bdlb_string
59
/// bdlb_stringviewutil
60
///
61
/// 2. bdlb_algorithmworkaroundutil
62
/// bdlb_arrayutil
63
/// bdlb_bitutil
64
/// bdlb_chartype
65
/// bdlb_cstringequalto
66
/// bdlb_cstringhash
67
/// bdlb_cstringless
68
/// bdlb_float
69
/// bdlb_functionoutputiterator
70
/// bdlb_guid
71
/// bdlb_hashutil
72
/// bdlb_literalutil
73
/// bdlb_nullableallocatedvalue_pointerbitspair !PRIVATE!
74
/// bdlb_nullopt !DEPRECATED!
75
/// bdlb_nulloutputiterator
76
/// bdlb_pairutil
77
/// bdlb_pcgrandomgenerator
78
/// bdlb_print
79
/// bdlb_randomdevice
80
/// bdlb_scopeexit
81
/// bdlb_stringrefutil !DEPRECATED!
82
/// bdlb_testinputiterator !DEPRECATED!
83
/// bdlb_tokenizer
84
/// bdlb_topologicalsortutil
85
/// bdlb_transformiterator
86
/// bdlb_transparentequalto
87
/// bdlb_transparenthash
88
/// bdlb_transparentless
89
/// bdlb_transparentstringhash
90
///
91
/// 1. bdlb_nullableallocatedvalue_cpp03 !PRIVATE!
92
/// bdlb_nullablevalue_cpp03 !PRIVATE!
93
/// bdlb_nullablevalueref_cpp03 !PRIVATE!
94
/// bdlb_variant_cpp03 !PRIVATE!
95
/// @endcode
96
///
97
/// ## Component Synopsis {#bdlb-component-synopsis}
98
///
99
/// @ref bdlb_algorithmworkaroundutil :
100
/// Provide a namespace for workarounds for faulty standard algorithms
101
///
102
/// @ref bdlb_arrayutil :
103
/// Provide utilities to determine properties of fixed-sized arrays.
104
///
105
/// @ref bdlb_bigendian :
106
/// Provide big-endian integer types.
107
///
108
/// @ref bdlb_bitmaskutil :
109
/// Provide simple mask values of `uint32_t` and `uint64_t` types.
110
///
111
/// @ref bdlb_bitstringimputil :
112
/// Provide functional bit-manipulation of `uint64_t` values.
113
///
114
/// @ref bdlb_bitstringutil :
115
/// Provide efficient operations on a multi-word sequence of bits.
116
///
117
/// @ref bdlb_bitutil :
118
/// Provide efficient bit-manipulation of `uint32_t`/`uint64_t` values.
119
///
120
/// @ref bdlb_caselessstringviewequalto :
121
/// Provide a case-insensitive equality predicate for string views.
122
///
123
/// @ref bdlb_caselessstringviewhash :
124
/// Provide a case-insensitive hash functor for string views.
125
///
126
/// @ref bdlb_caselessstringviewless :
127
/// Provide a case-insensitive less-than predicate for string views.
128
///
129
/// @ref bdlb_chartype :
130
/// Supply locale-independent version of `<ctype.h>` functionality.
131
///
132
/// @ref bdlb_cstringequalto :
133
/// Provide a standard compatible equality predicate for C-strings.
134
///
135
/// @ref bdlb_cstringhash :
136
/// Provide a functor enabling C-strings as unordered-container keys.
137
///
138
/// @ref bdlb_cstringless :
139
/// Provide a standard compatible less-than predicate for C-strings.
140
///
141
/// @ref bdlb_doublecompareutil :
142
/// Provide "fuzzy" equality/relational operations on `double` values.
143
///
144
/// @ref bdlb_float :
145
/// Provide floating-point classification types and functions.
146
///
147
/// @ref bdlb_functionoutputiterator :
148
/// Provides an output iterator for a client-supplied functor.
149
///
150
/// @ref bdlb_guid :
151
/// Provide a value-semantic type for Globally Unique Identifiers.
152
///
153
/// @ref bdlb_guidutil :
154
/// Provide functions that produce Globally Unique Identifiers.
155
///
156
/// @ref bdlb_hashutil :
157
/// Provide a utility of hash functions.
158
///
159
/// @ref bdlb_indexspan :
160
/// Provide a value-semantic attribute type for position and length.
161
///
162
/// @ref bdlb_indexspanstringutil :
163
/// Provide functions that operate on `IndexSpan` and string objects.
164
///
165
/// @ref bdlb_indexspanutil :
166
/// Provide functions that operate on `IndexSpan` objects.
167
///
168
/// @ref bdlb_literalutil :
169
/// Provide utility routines for programming language literals.
170
///
171
/// @ref bdlb_nullableallocatedvalue :
172
/// Provide a template for nullable allocated (out-of-place) objects.
173
///
174
/// @ref bdlb_nullableallocatedvalue_cpp03 : !PRIVATE!
175
/// Provide C++03 implementation for bdlb_nullableallocatedvalue.h
176
///
177
/// @ref bdlb_nullableallocatedvalue_pointerbitspair : !PRIVATE!
178
/// Provide a mechanism for using the unused bits of a pointer.
179
///
180
/// @ref bdlb_nullablevalue :
181
/// Provide a template for nullable (in-place) objects.
182
///
183
/// @ref bdlb_nullablevalue_cpp03 : !PRIVATE!
184
/// Provide C++03 implementation for bdlb_nullablevalue.h
185
///
186
/// @ref bdlb_nullablevalueref :
187
/// *Tech* *preview* for non-owning reference to nullable objects.
188
///
189
/// @ref bdlb_nullablevalueref_cpp03 : !PRIVATE!
190
/// Provide C++03 implementation for bdlb_nullablevalueref.h
191
///
192
/// @ref bdlb_nullopt : !DEPRECATED!
193
/// Provide a tag type and constant indicating an empty nullable value.
194
///
195
/// @ref bdlb_nulloutputiterator :
196
/// Provide an output iterator type that discards output.
197
///
198
/// @ref bdlb_numericparseutil :
199
/// Provide conversions from text into fundamental numeric types.
200
///
201
/// @ref bdlb_optionalprinter :
202
/// Provide a suite of helper classes for printing `bsl::optional`.
203
///
204
/// @ref bdlb_pairutil :
205
/// Provide support functions for `bsl::pair`.
206
///
207
/// @ref bdlb_pcgrandomgenerator :
208
/// Provide a class to generate random numbers using the PCG algorithm.
209
///
210
/// @ref bdlb_print :
211
/// Provide platform-independent stream utilities.
212
///
213
/// @ref bdlb_printadapter :
214
/// Provide object for streaming objects using `bdlb::PrintMethods`.
215
///
216
/// @ref bdlb_printmethods :
217
/// Provide methods for uniform printing of value-semantic types.
218
///
219
/// @ref bdlb_random :
220
/// Provide a suite of procedures for random-number generation.
221
///
222
/// @ref bdlb_randomdevice :
223
/// Provide a common interface to a system's random number generator.
224
///
225
/// @ref bdlb_scopeexit :
226
/// Provide a general-purpose proctor object for scope-exit logic.
227
///
228
/// @ref bdlb_string :
229
/// Provide utility functions on STL-style and C-style strings.
230
///
231
/// @ref bdlb_stringrefutil : !DEPRECATED!
232
/// Provide utility functions on `bslstl::StringRef`-erenced strings.
233
///
234
/// @ref bdlb_stringviewutil :
235
/// Provide utility functions on `bsl::string_view` containers.
236
///
237
/// @ref bdlb_testinputiterator : !DEPRECATED!
238
/// Provide a pure input iterator for an empty range.
239
///
240
/// @ref bdlb_tokenizer :
241
/// Provide access to user-described tokens via string references.
242
///
243
/// @ref bdlb_topologicalsortutil :
244
/// Provide a utility to topologically sort a collection of inputs.
245
///
246
/// @ref bdlb_transformiterator :
247
/// Provide a wrapping iterator that invokes a functor on dereference.
248
///
249
/// @ref bdlb_transparentequalto :
250
/// Provide a transparent equality predicate.
251
///
252
/// @ref bdlb_transparenthash :
253
/// Provide a transparent hash functor.
254
///
255
/// @ref bdlb_transparentless :
256
/// Provide a transparent less-than predicate.
257
///
258
/// @ref bdlb_transparentstringhash :
259
/// Provide a transparent hash functor.
260
///
261
/// @ref bdlb_variant :
262
/// Provide a variant (discriminated `union`-like) type.
263
///
264
/// @ref bdlb_variant_cpp03 : !PRIVATE!
265
/// Provide C++03 implementation for bdlb_variant.h
266
///
267
/// @ref bdlb_variantprinter :
268
/// Provide a suite of helper classes for printing `bsl::variant`.
269
///
270
/// @}
271
/** @} */
doxygen_input
bde
groups
bdl
bdlb
doc
bdlb.h
Generated by
1.9.8