[#BloombergLP-ball-CategoryManager_RadixTree-EmplaceResult]
= xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/ball.adoc[ball]::xref:BloombergLP/ball/CategoryManager_RadixTree.adoc[CategoryManager&lowbar;RadixTree]::EmplaceResult
:relfileprefix: ../../../
:mrdocs:

Result of emplacing a value into the tree&period;

== Synopsis

Declared in `&lt;ball&lowbar;categorymanager&lowbar;radixtree&period;h&gt;`

[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
typedef xref:bsl/pair-0b.adoc[bsl::pair&lt;bool, bsl::reference&lowbar;wrapper&lt;t&lowbar;VALUE&gt;&gt;] EmplaceResult;
----

== Description

The return type of adding a value to the tree with `emplace()`&period; It is _not_ the usual `insert` return type, because this data structure does not provide an iterator&period; The `&period;first` boolean is `true` if an element was inserted, and the `&period;second` data member is a reference to the (possibly newly created) value&period; Notice that if the value existed (`&period;first &equals;&equals; false`) the reference wrapper will still give access to the value of that node&semi; the `&period;second` is always a valid mutable reference to the value belonging to the key used in the `emplace` call&period;


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