Namespace for platform‐trait definitions.

Types

Name

Description

AlignedBuffer

Uninitialized buffer of specified SIZE and ALIGNMENT.

AlignedBuffer_Data

Private char array of specified SIZE aligned to ALIGNMENT.

Alignment

This struct provides a namespace for enumerating the set of strategies for aligning arbitrary blocks of memory.

AlignmentFromType

This struct computes the required alignment for the specified TYPE.

AlignmentImpCalc

This struct provides an enumerator VALUE that is initialized to the required alignment for the specified TYPE.

AlignmentImpMatch

Namespace for a set of overloaded match functions, as defined by the macro BSLS_ALIGNMENTIMP_MATCH_FUNC.

AlignmentImpPriorityToType

Specializations of this struct provide a primitive type (as a Type typedef) that corresponds to the specified PRIORITY level.

AlignmentImpTag

This struct defines a unique type having the specified compile‐time SIZE.

AlignmentImp_Priority

Unique type used as a trailing overload‐resolution parameter.

AlignmentToType

This struct provides a typedef, Type, that aliases a type having the specified ALIGNMENT requirement.

AlignmentUtil

This struct provides a namespace for a suite of compile‐time constants, types, and pure procedures that provide platform‐dependent alignment information.

Assert

Utility that administers the process‐wide assertion‐failure handler.

AssertFailureHandlerGuard

Guard that temporarily replaces the assertion‐failure handler.

AssertImpUtil

This "implementation utility" struct provides static functions with shared functionality that is made use of by both bsls_assert and bsls_review.

AssertImpUtil_UseContractsNo

Tag type indicating language‐level contracts are not enabled.

AssertTest

Utility providing methods for negative testing of assertion macros.

AssertTestException

Immutable exception conveying failed‐assertion context to a test handler.

AssertTestException_String

This non‐assignable class owns a null‐terminated string, provides no accessors to manipulate that string, and allocates a new copy of that string when copied.

AssertTestHandlerGuard

Guard that installs the negative‐testing assertion and review handlers.

AssertViolation

This class is an unconstrained in‐core value‐semantic class that characterizes the details of a assert failure that has occurred.

AtomicBool

Atomic boolean providing sequentially consistent operations by default.

AtomicInt

Atomic integer providing sequentially consistent operations by default.

AtomicInt64

Atomic 64‐bit integer with sequentially consistent operations by default.

AtomicOperations

Namespace for a suite of platform atomic operations.

AtomicOperations_ALL_ALL_ClangIntrinsics

Platform‐specific atomic operations using clang __c11_atomic_* intrinsics.

AtomicOperations_Default32

Default atomic operations for a generic 32‐bit platform.

AtomicOperations_Default64

Default atomic operations for a generic 64‐bit platform.

AtomicOperations_DefaultInt

Default implementations of non‐essential 32‐bit integer atomic operations.

AtomicOperations_DefaultInt64

Default implementations of non‐essential 64‐bit integer atomic operations.

AtomicOperations_DefaultPointer32

Default implementations of non‐essential 32‐bit pointer atomic operations.

AtomicOperations_DefaultPointer64

Default implementations of non‐essential 64‐bit pointer atomic operations.

AtomicOperations_DefaultUint

Default implementations of non‐essential 32‐bit unsigned atomic operations.

AtomicOperations_DefaultUint64

Default implementations of non‐essential 64‐bit unsigned atomic operations.

AtomicOperations_X64_ALL_GCC

AtomicPointer

Atomic pointer providing sequentially consistent operations by default.

AtomicUint

Atomic unsigned integer with sequentially consistent operations by default.

AtomicUint64

Atomic 64‐bit unsigned integer with sequentially consistent ops by default.

Atomic_TypeTraits

Forward declaration of atomic type traits for implementation class IMP.

BlockGrowth

This struct provides a namespace for memory block growth strategies for pools, allocators, containers, etc.

BslExceptionUtil

This struct provides a namespace for static utility functions that throw standard library exceptions.

BslLock

Light‐weight, portable wrapper of an OS‐level mutex.

BslLockGuard

RAII guard that acquires and releases a bsls::BslLock.

BslLockImpl_pthread

This class provides a non‐recursive pthread mutex for intra‐process use.

BslOnce

Gate‐keeper that ensures a block of code is executed only once.

BslOnceGuard

This class provides a guard for managing a BslOnce for the purpose of executing a block of code (only) once.

BslSourceNameParserUtil

Namespace for utilities that parse BDE‐style source file names.

BslTestUtil

Utilities for writing bsl test drivers without iostream.

BuildTargetExcYes

Tag type indicating that the build target has exceptions enabled.

ByteOrderUtil

This class provides a namespace for functions used for reversing the byte order of values having integral type.

FuzzTestHandlerGuard

Guard that installs and restores fuzz‐test assertion and precondition handlers.

FuzzTestPreconditionException

Immutable exception conveying failed‐precondition context to a test handler.

FuzzTestPreconditionTracker

This utility class is used by the preprocessor macros to appropriately handle precondition violations that occur in different levels and components.

FuzzTest_TestUtil

Provide sample functions that trigger assert and review violations.

Log

This class provides a namespace for low‐level logging utilities.

LogSeverity

This struct provides a namespace for enumerating logging severity levels.

NameOf

Provide a means to display the type name of its template parameter TYPE.

NameOf_Base

This class provide non‐template implementation code for the NameOf template class.

ObjectBuffer

Raw buffer sized and aligned to hold an object of type TYPE.

OutputRedirector

Redirect stdout or stderr to a temporary capture file.

PerformanceHint

This struct provides a namespace for a suite of functions that give performance hints to the compiler or hardware.

Platform

Namespace for platform‐trait definitions.

PlatformUtil

Provide a namespace for a suite of `typedef`s and pure procedures that encapsulate, platform‐dependent types and APIs.

PointerCastUtil

This struct provides a namespace for a static utility function that allows casting between function and data pointers.

PreconditionsHandler

Utility for managing begin/end precondition handler callbacks.

ProtocolTest

Mechanism that tests protocol‐class concerns via test* methods and operator‐>.

ProtocolTestImp

Base class for a test implementation of the BSLS_PROTOCOL protocol.

ProtocolTest_AsBigAsT

This auxiliary structure has a size no less than the size of (template parameter) T.

ProtocolTest_Dtor

Helper that verifies a protocol destructor is declared virtual.

ProtocolTest_IsAbstract

Compile‐time metafunction that reports whether T is an abstract type.

ProtocolTest_MethodReturnRefType

Proxy return type convertible to any reference type.

ProtocolTest_MethodReturnType

Proxy return type convertible to any non‐reference type.

ProtocolTest_Status

This class keeps track of the test status, which includes the status of the last test and the number of failures across all tests.

Review

Utility that administers the process‐wide review‐failure handler.

ReviewFailureHandlerGuard

Guard that temporarily replaces the review failure handler.

ReviewViolation

This class is an unconstrained in‐core value‐semantic class that characterizes the details of a review failure that has occurred.

SpinLock

Statically‐initializable mutex that spins instead of blocking.

SpinLockGuard

This type implements a scoped guard for SpinLock.

SpinLock_MemberInitializer

Empty tag type for legacy SpinLock member initialization.

StackAddressUtil

This struct provides a namespace for the function to obtain return addresses from the stack.

Stopwatch

This class accumulates system, user, and wall times of the current process.

SystemClockType

This struct provides a namespace for enumerating the set of system clock types.

SystemTime

This struct provides a namespace for system‐time‐retrieval functions.

TimeInterval

A time interval with nanosecond resolution.

TimeInterval_DurationTraits

Trait metafunction that determines whether the std::chrono::duration<REP, PERIOD> object can be converted to bsls::TimeInterval either implicitly or explicitly.

TimeInterval_IsDuration

Template metafunction to determine if the specified TYPE is a std::chrono::duration.

TimeInterval_RepTraits

Trait metafunction that determines whether the specified REP type is considered a floating point type.

TimeUtil

This struct provides a namespace for platform‐neutral system‐clock procedures.

Types

Provide a namespace for a suite of `typedef`s that encapsulate platform‐dependent types.

UnspecifiedBool

This class provides a member, d_member, whose pointer‐to‐member may be used as an "unspecified boolean type" for implicit conversion operators.

Util

This struct provides a namespace for essential low‐level functions for implementing portable generic facilities such as the C++ standard library.

Util_AssertNotLvalue

Metafunction that provides a dummy type when TYPE is not an lvalue.

Util_Identity

Identity metafunction that aliases its template parameter as type.

Util_RemoveReference

Metafunction providing the referenced type of the specified TYPE.

Type Aliases

Name

Description

AssertImpUtil_UseContracts

Alias selecting the contracts tag type for the current build.

BuildTargetExc

Tag type indicating that the build target has exceptions enabled.

Functions

Name

Description

debugprint

debugprint overloads

nameOfType

Return the name of the type of the object passed to this function.

operator""_h

Convert the specified hours literal to a TimeInterval.

operator""_min

Convert the specified minutes literal to a TimeInterval.

operator""_ms

Convert the specified milliseconds literal to a TimeInterval.

operator""_ns

Convert the specified nanoseconds literal to a TimeInterval.

operator""_s

Convert the specified seconds literal to a TimeInterval.

operator""_us

Convert the specified microseconds literal to a TimeInterval.

operator+

Addition operators

operator‐

Unary minus operators

operator<<

Write the specified timeInterval to the specified output stream.

operator==

Equality operators

operator!=

Inequality operators

operator<

Less‐than operators

operator<=

Same as the preceding overload.

operator>

Same as the preceding overload.

operator>=

Same as the preceding overload.

Created with MrDocs