[#BloombergLP-bslma-ConstructionUtil_AllocAdaptorUtil-0b-adapt-01]
= xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/bslma.adoc[bslma]::xref:BloombergLP/bslma/ConstructionUtil_AllocAdaptorUtil-0b.adoc[ConstructionUtil&lowbar;AllocAdaptorUtil&lt;TYPE, false, true&gt;]::adapt
:relfileprefix: ../../../
:mrdocs:

`adapt` overloads

== Synopses

Declared in `&lt;bslma&lowbar;constructionutil&period;h&gt;`

Return the `bslma&colon;&colon;Allocator` pointer held by `a`&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
template&lt;class ALLOC&gt;
static
xref:BloombergLP/bslma/Allocator.adoc[bslma::Allocator]*
xref:BloombergLP/bslma/ConstructionUtil_AllocAdaptorUtil-0b/adapt-03.adoc[adapt](ALLOC const& a);
----

[.small]#xref:BloombergLP/bslma/ConstructionUtil_AllocAdaptorUtil-0b/adapt-03.adoc[_» more&period;&period;&period;_]#

Return the specified `alloc&lowbar;p` pointer, implicitly converted to `bslma&colon;&colon;Allocator &ast;`&period; Compilation will fail unless `ALLOC` is derived from `bslma&colon;&colon;Allocator`&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
template&lt;class ALLOC&gt;
static
xref:BloombergLP/bslma/Allocator.adoc[bslma::Allocator]*
xref:BloombergLP/bslma/ConstructionUtil_AllocAdaptorUtil-0b/adapt-0e.adoc[adapt](ALLOC const*& alloc&lowbar;p);
----

[.small]#xref:BloombergLP/bslma/ConstructionUtil_AllocAdaptorUtil-0b/adapt-0e.adoc[_» more&period;&period;&period;_]#

== Return Value

* the `bslma&colon;&colon;Allocator` pointer held by `a`
* `alloc&lowbar;p` converted to `bslma&colon;&colon;Allocator &ast;`

== Parameters

[cols="1,4"]
|===
| Name| Description
| *a*
| allocator object providing a `mechanism()` accessor
| *alloc&lowbar;p*
| pointer to an allocator derived from `bslma&colon;&colon;Allocator`
|===


[.small]#Created with https://www.mrdocs.com[MrDocs]#
