[#BloombergLP-bdlcc-SkipList-0a-addUniqueRawR]
= xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/bdlcc.adoc[bdlcc]::xref:BloombergLP/bdlcc/SkipList-0a.adoc[SkipList]::addUniqueRawR
:relfileprefix: ../../../
:mrdocs:

Add a unique key&sol;data pair and return a raw reference to it&period;

== Synopsis

Declared in `&lt;bdlcc&lowbar;skiplist&period;h&gt;`

[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
int
addUniqueRawR(
    xref:BloombergLP/bdlcc/SkipList-0a/Pair.adoc[Pair]** result,
    KEY const& key,
    DATA const& data,
    bool* newFrontFlag = 0);
----

== Description

Search for the correct position for `key` from the back of the list (in descending order by key value)&period; The `result` reference must be released (using `releaseReferenceRaw`) when it is no longer needed&period; Load into the optionally specified `newFrontFlag` a `true` value if the pair is at the front of the list, and a `false` value otherwise&period; Return 0 on success, and a non&hyphen;zero value (with no effect on the list) if `key` is already in the list&period;

== Return Value

0 on success, and a non&hyphen;zero value if `key` already exists

== Parameters

[cols="1,4"]
|===
| Name| Description
| *result*
| receives a reference to the inserted pair
| *key*
| key of the pair
| *data*
| data associated with `key`
| *newFrontFlag*
| if non&hyphen;null, set to whether the pair is at the front
|===


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