BDE 4.14.0 Production release
Loading...
Searching...
No Matches
bdlb::AlgorithmWorkaroundUtil Struct Reference

#include <bdlb_algorithmworkaroundutil.h>

Static Public Member Functions

template<class FORWARD_IT , class TYPE >
static FORWARD_IT lowerBound (FORWARD_IT first, FORWARD_IT last, const TYPE &value)
 
template<class FORWARD_IT , class TYPE , class COMPARE >
static FORWARD_IT lowerBound (FORWARD_IT first, FORWARD_IT last, const TYPE &value, COMPARE comp)
 
template<class FORWARD_IT , class TYPE >
static FORWARD_IT upperBound (FORWARD_IT first, FORWARD_IT last, const TYPE &value)
 
template<class FORWARD_IT , class TYPE , class COMPARE >
static FORWARD_IT upperBound (FORWARD_IT first, FORWARD_IT last, const TYPE &value, COMPARE comp)
 

Detailed Description

A namespace for replacement workarounds for some platform supplied faulty algorithms (particularly for the Sun Studio compiler).

Member Function Documentation

◆ lowerBound() [1/2]

template<class FORWARD_IT , class TYPE >
FORWARD_IT bdlb::AlgorithmWorkaroundUtil::lowerBound ( FORWARD_IT  first,
FORWARD_IT  last,
const TYPE &  value 
)
inlinestatic

Returns an iterator pointing to the first element in the range starting at the specified first iterator and ending immediately before the specified last iterator, that is greater than or equal to the specified value, or last if no such element is found. This method works around a deficiency in the STLPort standard library that prevents using lower_bound to search for a value of a different type than that held in the range being searched (even if an appropriate operator< is defined). See DRQS 139734639.

◆ lowerBound() [2/2]

template<class FORWARD_IT , class TYPE , class COMPARE >
FORWARD_IT bdlb::AlgorithmWorkaroundUtil::lowerBound ( FORWARD_IT  first,
FORWARD_IT  last,
const TYPE &  value,
COMPARE  comp 
)
inlinestatic

Returns an iterator pointing to the first element in the range starting at the specified first iterator and ending immediately before the specified last iterator, that is greater than or equal to the specified value as determined by the specified comp, or last if no such element is found. This method works around a deficiency in the STLPort standard library that prevents using lower_bound to search for a value of a different type than that held in the range being searched (even if an appropriate operator< is defined). See DRQS 139734639.

◆ upperBound() [1/2]

template<class FORWARD_IT , class TYPE >
FORWARD_IT bdlb::AlgorithmWorkaroundUtil::upperBound ( FORWARD_IT  first,
FORWARD_IT  last,
const TYPE &  value 
)
inlinestatic

Returns an iterator pointing to the first element in the range starting at the specified first iterator and ending immediately before the specified last iterator, that is greater than the specified value, or last if no such element is found. This method works around a deficiency in the STLPort standard library that prevents using upper_bound to search for a value of a different type than that held in the range being searched (even if an appropriate operator< is defined). See DRQS 139734639.

◆ upperBound() [2/2]

template<class FORWARD_IT , class TYPE , class COMPARE >
FORWARD_IT bdlb::AlgorithmWorkaroundUtil::upperBound ( FORWARD_IT  first,
FORWARD_IT  last,
const TYPE &  value,
COMPARE  comp 
)
inlinestatic

Returns an iterator pointing to the first element in the range starting at the specified first iterator and ending immediately before the specified last iterator, that is greater than the specified value as determined by the specified comp, or last if no such element is found. This method works around a deficiency in the STLPort standard library that prevents using upper_bound to search for a value of a different type than that held in the range being searched (even if an appropriate operator< is defined). See DRQS 139734639.


The documentation for this struct was generated from the following file: