[#BloombergLP-bslalg-RbTreeUtil-lowerBound-0c] = xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/bslalg.adoc[bslalg]::xref:BloombergLP/bslalg/RbTreeUtil.adoc[RbTreeUtil]::lowerBound :relfileprefix: ../../../ :mrdocs: Return the first node not ordered before `value`, or the sentinel. == Synopsis Declared in `<bslalg_rbtreeutil.h>` [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- template< class NODE_VALUE_COMPARATOR, class VALUE> static xref:BloombergLP/bslalg/RbTreeNode.adoc[RbTreeNode] const* lowerBound( xref:BloombergLP/bslalg/RbTreeAnchor.adoc[RbTreeAnchor] const& tree, NODE_VALUE_COMPARATOR& comparator, VALUE const& value); ---- == Description Return the address of the leftmost node holding the smallest value greater‐than or equal‐to `value` in the specified `tree` (organized according to the specified 'comparator) if found, and return `tree.sentinel()` if `value` is greater‐than the rightmost node in `tree`. `COMPARATOR` shall be a functor providing two methods that can be called as if they had the following signatures: ` bool operator()(const RbTreeNode&, const VALUE&) const; bool operator()(const VALUE&, const RbTreeNode&) const; ` The behavior is undefined unless `comparator` provides a strict weak ordering on objects of type `VALUE`, and `tree` is well‐formed (`isWellFormed`). Note that this function returns the _first_ position before which `value` could be inserted into `tree` while preserving its ordering. == Return Value address of the first node not ordered before `value`, or the sentinel == Parameters [cols="1,4"] |=== | Name| Description | *tree* | tree to search | *comparator* | functor used to order nodes against `value` | *value* | value whose lower bound is returned |=== [.small]#Created with https://www.mrdocs.com[MrDocs]#