[#BloombergLP-bdlar-SimpleTypeRef] = xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/bdlar.adoc[bdlar]::SimpleTypeRef :relfileprefix: ../../ :mrdocs: Type‐erased non‐const reference to an object in the `bdlat` simple‐type category. == Synopsis Declared in `<bdlar_simpletyperef.h>` [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- class SimpleTypeRef; ---- == Member Functions [cols="1,4"] |=== | Name| Description | xref:BloombergLP/bdlar/SimpleTypeRef/2constructor-035.adoc[`SimpleTypeRef`] [.small]#[constructor]# | Constructors | xref:BloombergLP/bdlar/SimpleTypeRef/access-0a5.adoc[`access`] | `access` overloads | xref:BloombergLP/bdlar/SimpleTypeRef/accessWithCategory.adoc[`accessWithCategory`] | Invoke the specified `accessor` on the value held by this object supplying `accessor` with an object of `bdlat_TypeCategory::Simple` type for any type except `bsl::vector<char>`. The latter is supplied with an object of `bdlat_TypeCategory::Array` type. The supplied `accessor` must be an object callable with a value of any simple type as if it had the following signature: ` int accessor(const VALUE& value, bdlat_TypeCategory::Simple); // and int accessor(const bsl::vector<char>& value, bdlat_TypeCategory::Array); ` Return the value from the invocation of `accessor`. | xref:BloombergLP/bdlar/SimpleTypeRef/manipulate-040.adoc[`manipulate`] | `manipulate` overloads | xref:BloombergLP/bdlar/SimpleTypeRef/manipulateWithCategory.adoc[`manipulateWithCategory`] | Invoke the specified `manipulator` on the value held by this object supplying `manipulator` with an object of `bdlat_TypeCategory::Simple` type for any type except `bsl::vector<char>`. The latter is supplied with an object of `bdlat_TypeCategory::Array` type. The supplied `manipulator` must be an object callable with a value of any simple type as if it had the following signature: ` int manipulator(VALUE *value, bdlat_TypeCategory::Simple); // and int manipulator(bsl::vector<char> *value, bdlat_TypeCategory::Array); ` Return the value from the invocation of `manipulator`. | xref:BloombergLP/bdlar/SimpleTypeRef/objectAddress.adoc[`objectAddress`] | Return a pointer to the wrapped object. | xref:BloombergLP/bdlar/SimpleTypeRef/reset.adoc[`reset`] | Reset the referred object to the default value. | xref:BloombergLP/bdlar/SimpleTypeRef/typeId.adoc[`typeId`] | Return the type ID corresponding to the simple type held by this object. | xref:BloombergLP/bdlar/SimpleTypeRef/vtable.adoc[`vtable`] | Return a pointer to the vtable. |=== == Non-Member Functions [cols="1,4"] |=== | Name| Description | xref:BloombergLP/bdlar/bdlat_valueTypeReset-089.adoc[`bdlat_valueTypeReset`] | Reset the specified `ref` to the default value. |=== [.small]#Created with https://www.mrdocs.com[MrDocs]#