Namespace for bit‐level utility functions.

Namespaces

Name

Description

PrintMethods

This namespace contains parameterized print methods having the standard BDE signature for such methods.

Types

Name

Description

AlgorithmWorkaroundUtil

A namespace for replacement workarounds for some platform supplied faulty algorithms (particularly for the Sun Studio compiler).

ArrayUtil

This struct provides a namespace for a collection of function templates providing access to the length and iterators of statically sized built‐in arrays

BigEndianInt16

In‐core representation of a signed 16‐bit big‐endian integer.

BigEndianInt32

In‐core representation of a signed 32‐bit big‐endian integer.

BigEndianInt64

In‐core representation of a signed 64‐bit big‐endian integer.

BigEndianUint16

In‐core representation of an unsigned 16‐bit big‐endian integer.

BigEndianUint32

In‐core representation of an unsigned 32‐bit big‐endian integer.

BigEndianUint64

In‐core representation of an unsigned 64‐bit big‐endian integer.

BitMaskUtil

Namespace for functions that produce 32‐ and 64‐bit bit masks.

BitStringImpUtil

Namespace for static bit‐manipulation helpers used by BitStringUtil.

BitStringUtil

Namespace for bit‐string utility functions.

BitUtil

This utility struct provides a namespace for a set of bit‐level, stateless functions that operate on the built‐in 32‐ and 64‐bit unsigned integer types.

CStringEqualTo

Equality comparison functor for null‐terminated character strings.

CStringHash

Hash functor for null‐terminated C‐strings.

CStringLess

Less‐than functor for null‐terminated character strings.

CaselessStringViewEqualTo

Case‐insensitive equality comparison functor for string views.

CaselessStringViewHash

Case‐insensitive hash functor for string views.

CaselessStringViewLess

Case‐insensitive less‐than functor for string views.

CharType

This struct provides a namespace for a suite of pure procedures operating on the fundamental type char.

ConstNullableValueRef

This class is a wrapper for either a bsl::optional or NullableAllocatedValue, and provides non‐modifiable access to the wrapped object.

DoubleCompareUtil

Namespace for fuzzy comparison functions on double values.

Float

Namespace for floating‐point classification types and functions.

FunctionOutputIterator

Provide an output iterator that invokes a client‐supplied functor.

Guid

This class implements a value‐semantic Guid type.

GuidUtil

This struct provides a namespace for functions that create Universally Unique Identifiers per RFC 4122 (http://www.ietf.org/rfc/rfc4122.txt).

Guid_BslFmtFormatterImpl

Component‐private implementation of bsl::formatter for bdlb::Guid.

HasPrintMethod

Trait metafunction indicating that TYPE provides a BDE‐style print method.

HashUtil

This struct provides a namespace for hash functions.

IndexSpan

A constrained attribute type that represents a position and a length.

IndexSpanStringUtil

This struct serves as a namespace for utility functions that operate on IndexSpan and string objects.

IndexSpanUtil

This struct serves as a namespace for utility functions that operate on IndexSpan objects.

LiteralUtil

This struct provides a namespace for utility routines that operate on (programming language) literals.

NullOutputIterator

Provide an output iterator that ignores the output that is provided. De‐referencing an iterator and assigning to the returned value has no effect.

NullOutputIteratorAssignmentProxy

Provide an object that can appear on the left side of an assignment from TYPE. The operation AssignmentProxy() = TYPE() is valid and has no effect.

NullableAllocatedValue

Template for a nullable TYPE that may be allocated out‐of‐place.

NullableAllocatedValue_PointerBitsPair

This is a component‐private class. Do not use.

NullableValue

Value‐semantic wrapper that adds a null state to TYPE.

NullableValueRef

This class is a wrapper for either a bsl::optional or NullableAllocatedValue, and provides modifiable access to the wrapped object.

NullableValue_WithAllocator

Component‐private base for allocator‐aware NullableValue specializations.

NullableValue_WithoutAllocator

Component‐private base for non‐allocator‐aware NullableValue specializations.

NumericParseUtil

This struct provides a namespace for a suite of stateless procedures that perform parsing functionality for numbers.

OptionalPrinter

Utility for printing bsl::optional to standard output streams. This class has operator<< defined for it, so it can be used, for example, in ball logs.

OptionalPrinterUtil

Utility for creating OptionalPrinter objects with deduced template arguments.

PairUtil

This struct provides a namespace for bsl::pair utilities.

PcgRandomGenerator

This class implements a random number generator (RNG) based on the PCG algorithm.

Print

Provide a namespace for the interface to a suite of procedural stream operations.

PrintAdapter

This class provides an object that may be streamed with operator<< to give full control of the indentation format of the streaming.

PrintAdapterUtil

Utility for constructing a PrintAdapter without naming its template argument (useful in C++03; CTAD can replace this in C++17+).

PrintMethods_Imp<TYPE, bslmf::SelectTraitCase<>>

Component‐private print implementation for types with no recognized print trait.

PrintMethods_Imp<TYPE, bslmf::SelectTraitCase<HasPrintMethod>>

Component‐private print implementation for types with the HasPrintMethod trait.

PrintMethods_Imp<TYPE, bslmf::SelectTraitCase<HasStlIterators>>

Component‐private print implementation for types with the HasStlIterators trait.

PrintMethods_Imp<TYPE, bslmf::SelectTraitCase<IsPair>>

Component‐private print implementation for types with the IsPair trait.

PrintStringHexDumper

Utility for hex dumping a blob to standard output streams.

PrintStringSingleLineHexDumper

Utility for single‐line hex dumping of a string to output streams.

Random

This struct provides a namespace for a suite of functions used for random‐number generation.

RandomDevice

This struct provides a namespace for a suite of functions used for acquiring random numbers from the system.

ScopeExit

Scope proctor that invokes an exit function when destroyed.

ScopeExitUtil

Utility providing a factory for type‐deduced ScopeExit guards.

String

Namespace for utility functions on STL‐style and C‐style strings.

StringRefUtil

This struct provides a namespace for a suite of functions on bslstl::StringRef references to strings.

StringViewUtil

This struct provides a namespace for a suite of functions on bsl::string_view containers.

Tokenizer

Provides sequential read‐only access to tokens with soft and hard delimiters.

TokenizerIterator

Input iterator over the tokens of a bound Tokenizer input string.

Tokenizer_Data

Component‐private class that holds soft and hard delimiter information.

Tokenizer_Proxy

This class provides a proxy holder of a reference to a TokernizerIterator object, allowing correct return of operator‐>.

TopologicalSortUtil

This struct TopologicalSortUtil provides a namespace for topological sorting functions.

TopologicalSortUtilEdgeTraits

Customization point for edge types other than bsl::pair.

TopologicalSortUtil_Helper

Helper that builds work‐set data for a topological sort.

TransformIterator

Wrapping iterator that invokes a functor on dereference.

TransformIteratorUtil

Utility for creating TransformIterator objects.

TransformIterator_AllocatorOfFunctorMethod

Base class template that optionally provides an allocator method.

TransformIterator_AllocatorOfIteratorMethod

Base class template that optionally provides an allocator method.

TransformIterator_Traits

This component‐private class defines various types that are used in the implementation of the transform iterator.

TransparentEqualTo

Transparent equality comparison functor for heterogeneous lookup.

TransparentHash

Transparent hash functor for heterogeneous container lookup.

TransparentLess

Transparent less‐than functor for heterogeneous comparison.

TransparentStringHash

This struct defines a transparent hash functor for string‐like types.

TypeTraitHasPrintMethod

Old‐style trait tag indicating that a class provides a BDE‐style print method.

Variant

Discriminated union that holds a value of one of up to 20 alternative types.

Variant10

Fixed‐arity specialization of Variant for 10 types.

Variant11

Fixed‐arity specialization of Variant for 11 types.

Variant12

Fixed‐arity specialization of Variant for 12 types.

Variant13

Fixed‐arity specialization of Variant for 13 types.

Variant14

Fixed‐arity specialization of Variant for 14 types.

Variant15

Fixed‐arity specialization of Variant for 15 types.

Variant16

Fixed‐arity specialization of Variant for 16 types.

Variant17

Fixed‐arity specialization of Variant for 17 types.

Variant18

Fixed‐arity specialization of Variant for 18 types.

Variant19

Fixed‐arity specialization of Variant for 19 types.

Variant2

Fixed‐arity specialization of Variant for 2 types.

Variant3

Fixed‐arity specialization of Variant for 3 types.

Variant4

Fixed‐arity specialization of Variant for 4 types.

Variant5

Fixed‐arity specialization of Variant for 5 types.

Variant6

Fixed‐arity specialization of Variant for 6 types.

Variant7

Fixed‐arity specialization of Variant for 7 types.

Variant8

Fixed‐arity specialization of Variant for 8 types.

Variant9

Fixed‐arity specialization of Variant for 9 types.

VariantImp

This class provides the implementation of Variant (except for the creators) given a list of template parameter TYPES.

VariantImp_AllocatorBase

Component‐private base holding variant storage and type index.

VariantImp_NoAllocatorBase

Component‐private base holding variant storage and type index.

VariantImp_Traits

Component‐private traits selecting the variant allocator base.

VariantPrinter

Utility for printing bsl::variant to standard output streams. This class has operator<< defined for it, so it can be used, for example, in ball logs.

VariantPrinterUtil

Utility for creating VariantPrinter objects with deduced template arguments.

VariantPrinter_Visitor

Visitor for visiting t_TYPE held by a variant and printing it.

Variant_BdexStreamInVisitor

Visitor that operates on the currently held alternative.

Variant_BdexStreamOutVisitor

Visitor that operates on the currently held alternative.

Variant_CopyAssignVisitor

Visitor that operates on the currently held alternative.

Variant_CopyConstructVisitor

Visitor that operates on the currently held alternative.

Variant_DefaultConstructVisitor

This visitor, when invoked as a non‐modifiable function object on an instance of some template parameter TYPE, will create a default instance of TYPE.

Variant_DestructorVisitor

This visitor, when invoked as a function object on an instance of some template parameter TYPE, will destroy that instance.

Variant_EqualityTestVisitor

Visitor that operates on the currently held alternative.

Variant_MoveAssignVisitor

Visitor that operates on the currently held alternative.

Variant_MoveConstructVisitor

Visitor that operates on the currently held alternative.

Variant_PrintVisitor

Visitor that operates on the currently held alternative.

Variant_RawVisitorHelper

Helper that adapts visitors lacking a bslmf::Nil overload.

Variant_ReturnValueHelper

Component‐private helper that detects a visitor ResultType.

Variant_ReturnValueHelper_Matcher

Component‐private helper that detects a visitor ResultType.

Variant_ReturnValueHelper_NoType

Component‐private struct used by SFINAE detection when ResultType is absent.

Variant_SwapVisitor

This visitor swaps the variant object data that it holds with another variant object data of parameterize TYPE.

Variant_TypeIndex

Component‐private meta‐function. Do not use. This meta‐function computes the index of the template parameter TYPE in the template parameter list of TYPES.

Type Aliases

Name

Description

NullOptType

Tag type representing an empty nullable value.

ScopeExitAny

ScopeExitAny is an alias to ScopeExit<bsl::function<void()> >, effectively making it a polymorphic scope exit type.

TestInputIterator

Alias for bsltf::InputIterator<TYPE>; a pure input iterator for an empty range, used to test algorithm compatibility with restrictive input iterators.

Variant_ReturnValueHelper_YesType

Component‐private type used by SFINAE detection when ResultType exists.

Functions

Name

Description

hashAppend

hashAppend overloads

nullableValue_acceptsBslOptional

Component‐private constraint helper for bsl::optional conversion.

nullableValue_acceptsStdOptional

Component‐private constraint helper for std::optional conversion.

operator+

Return a copy of iterator advanced by the specified offset.

operator++

Increment operators

operator‐

Subtraction operators

operator‐‐

Decrement iterator and return a copy of its previous value.

operator|

Translate a range of `bsl::pair`s into a range of `std::pair`s.

swap

swap overloads

operator<<

Stream insertion operators

operator==

Equality operators

operator!=

Inequality operators

operator<

Less‐than operators

operator<=

Less‐than‐or‐equal operators

operator>

Greater‐than operators

operator>=

Greater‐than‐or‐equal operators

operator<=>

Three‐way comparison operators

Variables

Name

Description

nullOpt

bsl::nullopt value imported into the bdlb namespace.

Concepts

Name

Description

NullableValue_ConvertibleToBool

This component‐private concept models the Standard's exposition‐only boolean‐testable concept.

NullableValue_DerivedFromBslOptional

This component‐private concept is used in the subsequent implementation of the component‐private concept NullableValue_DerivedFromOptional.

NullableValue_DerivedFromOptional

Component‐private concept for types derived from optional.

NullableValue_DerivedFromStdOptional

This component‐private concept is used in the subsequent implementation of the component‐private concept NullableValue_DerivedFromOptional.

Created with MrDocs