Package namespace for type‐erased reference types (bdlar).

Types

Name

Description

AccessorRef

This class provides a type‐erased wrapper around an accessor functor that dispatches to the appropriate bdlat customization point based on the dynamic type category of the supplied value.

AccessorVtable

This struct stores a series of function pointers to wrappers that invoke the underlying accessor methods with read‐only access of the supplied type‐erased object.

AccessorVtableUtil

This struct provides a namespace for utility functions that construct accessor vtables for type‐erased accessor dispatch.

AccessorWithInfoRef

This class provides a type‐erased wrapper around an accessor functor that dispatches to the appropriate bdlat customization point based on the dynamic type category of the supplied value and field metadata.

AccessorWithInfoVtable

This struct stores a series of function pointers to wrappers that invoke the underlying accessor methods with read‐only access of the supplied type‐erased object and field metadata.

AnyCastUtil

This struct provides a namespace for functions that convert between AnyRef/`AnyConstRef` and the concrete type‐category reference types.

AnyConstRef

A type‐erased universal wrapper for reference to any type category with read‐only access.

AnyConstRefData

In‐core representation of an AnyConstRef value.

AnyConstVtable

Union holding a pointer to any category‐specific const vtable.

AnyRef

A type‐erased universal wrapper for reference to any type category with read/write access.

AnyRefData

In‐core representation of an AnyRef value.

AnyVtable

Union holding a pointer to any category‐specific vtable.

ArrayConstRef

This class provides a type‐erased, read‐only reference to an array value that dispatches operations through a vtable.

ArrayConstVtable

This struct stores a series of function pointers to wrappers that invoke the underlying methods with read‐only access of the supplied type erased object that implement the "array" type category.

ArrayRef

Type‐erased non‐const reference to an object in the bdlat array category.

ArrayVtable

This struct stores a series of function pointers to wrappers that invoke the underlying methods of the supplied type erased object that implement the "array" type category.

ArrayVtableUtil

Utility for constructing ArrayVtable and ArrayConstVtable objects with function pointers that implement the "array" type category.

ChoiceConstRef

ChoiceConstVtable

This struct stores a series of function pointers to wrappers that invoke the underlying methods with read‐only access of the supplied type erased object that implement the "choice" type category.

ChoiceRef

ChoiceVtable

This struct stores a series of function pointers to wrappers that invoke the underlying methods of the supplied type erased object that implement the "choice" type category.

ChoiceVtableUtil

Utility for constructing ChoiceVtable and ChoiceConstVtable objects with function pointers that implement the "choice" type category.

CustomizedTypeConstRef

Type‐erased const reference to an object in the bdlat customized‐type category.

CustomizedTypeConstVtable

This struct stores a series of function pointers to wrappers that invoke the underlying methods with read‐only access of the supplied type erased object that implement the "customized type" type category.

CustomizedTypeRef

CustomizedTypeVtable

This struct stores a series of function pointers to wrappers that invoke the underlying methods of the supplied type erased object that implement the "customized type" type category.

CustomizedTypeVtableUtil

Utility for constructing customized‐type vtables.

DynamicTypeConstRef

DynamicTypeConstVtable

This struct stores a series of function pointers to wrappers that invoke the underlying methods with read‐only access of the supplied type erased object that implement the "dynamic" type category.

DynamicTypeRef

DynamicTypeVtable

This struct stores a series of function pointers to wrappers that invoke the underlying methods of the supplied type erased object that implement the "dynamic" type category.

DynamicTypeVtableUtil

Utility for constructing DynamicTypeVtable and DynamicTypeConstVtable objects with function pointers that implement the "dynamic" type category.

EnumConstRef

Type‐erased const reference to an object in the bdlat enumeration type category.

EnumConstVtable

This struct stores a series of function pointers to wrappers that invoke the underlying methods with read‐only access of the supplied type erased object that implement the "enum" type category.

EnumRef

Type‐erased non‐const reference to an object in the bdlat enumeration type category.

EnumVtable

This struct stores a series of function pointers to wrappers that invoke the underlying methods of the supplied type erased object that implement the "enum" type category.

EnumVtableUtil

Utility for obtaining type‐erased vtables for enumeration types.

FakeDependency

This class is used only to prevent eager template instantiantions by clang.

FieldInfoRef

Type‐erased const reference to an object satisfying the FieldInfo concept.

FieldInfoVtable

Stores function pointers for objects satisfying the FieldInfo concept.

FieldInfo_VtableUtil

Utility for constructing FieldInfoVtable objects with function pointers for objects satisfying the FieldInfo concept.

IsArray

Metafunction indicating whether the specified type is a bdlat array.

IsConstRef

Metafunction that yields true for bdlar const‐reference types.

IsCustomized

Meta‐function indicating whether the specified t_TYPE is a customized type.

IsDynamic

Meta‐function indicating whether the specified t_TYPE is in the bdlat dynamic‐type category.

IsEnum

Meta‐function indicating whether the specified t_TYPE is an enumeration type.

IsMutableRef

Metafunction indicating whether the specified t_TYPE is a mutable bdlar reference type.

IsNullable

Meta‐function indicating whether the specified t_TYPE is a nullable value type.

IsRef

Metafunction that yields true for bdlar reference types.

IsSimple

Meta‐function indicating whether the specified TYPE is in the bdlat simple‐type category.

ManipulatorRef

Type‐erased reference to a bdlat manipulator.

ManipulatorVtable

This struct stores a series of function pointers to wrappers that invoke the underlying manipulator methods of the supplied type‐erased object.

ManipulatorVtableUtil

Utility for constructing ManipulatorVtable and ManipulatorWithInfoVtable objects with function pointers that implement type‐category manipulators.

ManipulatorWithInfoRef

Type‐erased reference to a manipulator callable with a value and field info.

ManipulatorWithInfoVtable

This struct stores a series of function pointers to wrappers that invoke the underlying manipulator methods with field info of the supplied type‐erased object.

NullableValueConstRef

Type‐erased const reference to an object in the bdlat nullable‐value type category.

NullableValueConstVtable

This struct stores a series of function pointers to wrappers that invoke the underlying methods with read‐only access of the supplied type erased object that implement the "nullable value" type category.

NullableValueRef

Type‐erased non‐const reference to an object in the bdlat nullable‐value type category.

NullableValueVtable

This struct stores a series of function pointers to wrappers that invoke the underlying methods of the supplied type erased object that implement the "nullable value" type category.

NullableValueVtableUtil

Utility for constructing NullableValueVtable and NullableValueConstVtable objects with function pointers that implement the "nullable value" type category.

RefDataUtil

Utility for constructing type‐erased reference data objects.

RefUtil

Utility for constructing type‐erased references to bdlat value‐type objects.

SelectCategory

Meta‐function selecting the bdlat type category for t_TYPE.

SequenceConstRef

SequenceConstVtable

This struct stores a series of function pointers to wrappers that invoke the underlying methods with read‐only access of the supplied type erased object that implement the "sequence" type category.

SequenceRef

SequenceVtable

This struct stores a series of function pointers to wrappers that invoke the underlying methods of the supplied type erased object that implement the "sequence" type category.

SequenceVtableUtil

Utility for constructing SequenceVtable and SequenceConstVtable objects with function pointers that implement the "sequence" type category.

SimpleTypeById

Metafunction mapping a SimpleTypeId value to its corresponding type.

SimpleTypeConstRef

Type‐erased const reference to an object in the bdlat simple‐type category.

SimpleTypeConstVtable

This struct stores a series of function pointers to wrappers that invoke the underlying methods with read‐only access of the supplied type erased object that implement the "simple" type category.

SimpleTypeIdOf

Metafunction mapping a simple type to its SimpleTypeId value.

SimpleTypeRef

Type‐erased non‐const reference to an object in the bdlat simple‐type category.

SimpleTypeVtable

This struct stores a series of function pointers to wrappers that invoke the underlying methods of the supplied type erased object that implement the "simple" type category.

SimpleTypeVtableUtil

Utility for constructing SimpleTypeVtable and SimpleTypeConstVtable objects with function pointers that implement the "simple" type category.

SymbolicConverter

This utility contains a single convert function that converts a value from one type to another compatible type.

VtableUtil

Functions returning vtables by type category.

VtableUtil_ByCategory

Metafunction mapping a bdlat type category tag to its corresponding vtable utility type.

Enums

Name

Description

SimpleTypeId

Enumeration of supported simple type identifiers.

Functions

Name

Description

bdlat_TypeName_xsdName

bdlat_TypeName_xsdName overloads

bdlat_arrayAccessElement

Invoke the specified accessor on the array element at the specified index of the specified array. Return the value from the invocation of accessor.

bdlat_arrayManipulateElement

Invoke the specified manipulator on the address of the element at the specified index of the specified array. Return the value from the invocation of manipulator.

bdlat_arrayResize

Set the size of the specified array to the specified newSize.

bdlat_arraySize

Return the number of elements in the specified array.

bdlat_choiceAccessSelection

Invoke the specified accessor on the current selection of the specified ref. Return the value from the invocation of accessor.

bdlat_choiceHasSelection

bdlat_choiceHasSelection overloads

bdlat_choiceMakeSelection

bdlat_choiceMakeSelection overloads

bdlat_choiceManipulateSelection

Invoke the specified manipulator on the current selection of the specified ref. Return the value from the invocation of manipulator.

bdlat_choiceSelectionId

Return the id of the current selection if the selection is defined, and ‐1 otherwise.

bdlat_customizedTypeConvertFromBaseType

Convert the specified value into the customized type referred to by the specified ref. Return 0 on success and a non‐zero value otherwise.

bdlat_customizedTypeConvertToBaseType

bdlat_customizedTypeConvertToBaseType overloads

bdlat_customizedTypeCreateBaseAndConvert

Create an uninitialized value of the base type, apply the specified baseManipulator to it, then convert the result into the customized type referred to by the specified ref. Return 0 on success and a non‐zero value otherwise.

bdlat_enumFromInt

Assign the enumerator value matching the specified number to the specified result. Return 0 on success, and a non‐zero value with no effect on the object if number does not match any enumerator.

bdlat_enumFromString

Assign the enumerator value matching the specified string of the specified stringLength to the specified result. Return 0 on success, and a non‐zero value with no effect on the object if string and stringLength do not match any enumerator.

bdlat_enumHasFallback

bdlat_enumHasFallback overloads

bdlat_enumIsFallback

bdlat_enumIsFallback overloads

bdlat_enumMakeFallback

Assign the fallback enumerator value to the specified result. Return 0 on success, and a non‐zero value with no effect on the object if it does not have a fallback enumerator.

bdlat_enumToInt

Load into the specified result the integer representation of the specified value.

bdlat_enumToString

Load into the specified result the string representation of the specified value.

bdlat_nullableValueAccessValue

Invoke accessor on the non‐null value held by ref.

bdlat_nullableValueIsNull

Return true if the specified ref contains a null value, and false otherwise.

bdlat_nullableValueMakeValue

Create a value in the specified ref if it is currently null.

bdlat_nullableValueManipulateValue

Invoke the specified manipulator on the non‐null value held by the specified ref. Return the value from the invocation of manipulator.

bdlat_sequenceAccessAttribute

bdlat_sequenceAccessAttribute overloads

bdlat_sequenceAccessAttributes

bdlat_sequenceAccessAttributes overloads

bdlat_sequenceHasAttribute

bdlat_sequenceHasAttribute overloads

bdlat_sequenceManipulateAttribute

bdlat_sequenceManipulateAttribute overloads

bdlat_sequenceManipulateAttributes

Invoke the specified manipulator on each attribute of the specified ref. Return the value from the invocation of manipulator.

bdlat_typeCategoryAccessArray

bdlat_typeCategoryAccessArray overloads

bdlat_typeCategoryAccessChoice

bdlat_typeCategoryAccessChoice overloads

bdlat_typeCategoryAccessCustomizedType

bdlat_typeCategoryAccessCustomizedType overloads

bdlat_typeCategoryAccessEnumeration

bdlat_typeCategoryAccessEnumeration overloads

bdlat_typeCategoryAccessNullableValue

bdlat_typeCategoryAccessNullableValue overloads

bdlat_typeCategoryAccessSequence

bdlat_typeCategoryAccessSequence overloads

bdlat_typeCategoryAccessSimple

bdlat_typeCategoryAccessSimple overloads

bdlat_typeCategoryManipulateArray

bdlat_typeCategoryManipulateArray overloads

bdlat_typeCategoryManipulateChoice

bdlat_typeCategoryManipulateChoice overloads

bdlat_typeCategoryManipulateCustomizedType

bdlat_typeCategoryManipulateCustomizedType overloads

bdlat_typeCategoryManipulateEnumeration

bdlat_typeCategoryManipulateEnumeration overloads

bdlat_typeCategoryManipulateNullableValue

bdlat_typeCategoryManipulateNullableValue overloads

bdlat_typeCategoryManipulateSequence

bdlat_typeCategoryManipulateSequence overloads

bdlat_typeCategoryManipulateSimple

bdlat_typeCategoryManipulateSimple overloads

bdlat_typeCategorySelect

bdlat_typeCategorySelect overloads

bdlat_valueTypeReset

bdlat_valueTypeReset overloads

Variables

Name

Description

k_TMP_ANY_BUFFER_SIZE

Minimum buffer size required to store one AnyConstRef object.

Concepts

Name

Description

FieldInfo

Concept requiring formattingMode, id, name, and nameLength accessors.

Using Declarations

Name

Description

IsChoice

Alias for bdlat_ChoiceFunctions::IsChoice.

IsSequence

Alias for bdlat_SequenceFunctions::IsSequence.

Created with MrDocs