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

Types

Name

Description

AccessorRef

Type‐erased reference to a bdlat accessor.

AccessorVtable

Vtable for read‐only accessor dispatch.

AccessorVtableUtil

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

AccessorWithInfoRef

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

AccessorWithInfoVtable

Vtable for read‐only accessor dispatch with 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

Vtable for read‐only array access.

ArrayRef

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

ArrayVtable

Vtable for mutable array access.

ArrayVtableUtil

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

ChoiceConstRef

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

ChoiceConstVtable

Vtable for read‐only choice access.

ChoiceRef

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

ChoiceVtable

Vtable for mutable choice access.

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

Vtable for read‐only customized type access.

CustomizedTypeRef

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

CustomizedTypeVtable

Vtable for mutable customized type access.

CustomizedTypeVtableUtil

Utility for constructing customized‐type vtables.

DynamicTypeConstRef

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

DynamicTypeConstVtable

Vtable for read‐only dynamic type access.

DynamicTypeRef

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

DynamicTypeVtable

Vtable for mutable dynamic type access.

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

Vtable for read‐only enum access.

EnumRef

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

EnumVtable

Vtable for mutable enum access.

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

Vtable for read‐only nullable‐value access.

NullableValueRef

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

NullableValueVtable

Vtable for mutable nullable‐value access.

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

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

SequenceConstVtable

Vtable for read‐only sequence access.

SequenceRef

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

SequenceVtable

Vtable for mutable sequence access.

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

Vtable for read‐only simple type access.

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

Vtable for mutable simple type access.

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.

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 a base‐type value, apply baseManipulator, then convert it.

bdlat_enumFromInt

Assign the enumerator value matching the specified number to the specified result.

bdlat_enumFromString

Assign the enumerator value matching the specified string of the specified stringLength to the specified result.

bdlat_enumHasFallback

bdlat_enumHasFallback overloads

bdlat_enumIsFallback

bdlat_enumIsFallback overloads

bdlat_enumMakeFallback

Assign the fallback enumerator value to the specified result.

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 the specified accessor on the non‐null value held by the specified ref. Return the value from the invocation of accessor.

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