BDE 4.14.0 Production release
|
#include <bslstl_boyermoorehorspoolsearcher.h>
Public Types | |
typedef bsl::iterator_traits< RNDACC_ITR_NEEDLE >::value_type | value_type |
typedef bsl::iterator_traits< RNDACC_ITR_NEEDLE >::difference_type | difference_type |
Public Member Functions | |
BoyerMooreHorspoolSearcher_CharImp (RNDACC_ITR_NEEDLE needleFirst, RNDACC_ITR_NEEDLE needleLast, HASH hash, EQUAL equal, BloombergLP::bslma::Allocator *basicAllocator) | |
BoyerMooreHorspoolSearcher_CharImp (const BoyerMooreHorspoolSearcher_CharImp &original) | |
BoyerMooreHorspoolSearcher_CharImp (BloombergLP::bslmf::MovableRef< BoyerMooreHorspoolSearcher_CharImp > original) BSLS_KEYWORD_NOEXCEPT | |
BoyerMooreHorspoolSearcher_CharImp (const BoyerMooreHorspoolSearcher_CharImp &original, BloombergLP::bslma::Allocator *basicAllocator) | |
BoyerMooreHorspoolSearcher_CharImp (BloombergLP::bslmf::MovableRef< BoyerMooreHorspoolSearcher_CharImp > original, BloombergLP::bslma::Allocator *basicAllocator) | |
~BoyerMooreHorspoolSearcher_CharImp () | |
Destroy this object;. | |
BoyerMooreHorspoolSearcher_CharImp & | operator= (const BoyerMooreHorspoolSearcher_CharImp &rhs) |
BoyerMooreHorspoolSearcher_CharImp & | operator= (BloombergLP::bslmf::MovableRef< BoyerMooreHorspoolSearcher_CharImp > rhs) |
difference_type | badCharacterSkip (const value_type &value) const |
HASH | hash () const |
Return the hashing functor supplied on construction. | |
EQUAL | equal () const |
Return the equality comparison functor supplied on construction. | |
BloombergLP::bslma::Allocator * | allocator () const |
Return the allocator supplied on construction. | |
This class template implements the same interfaces as the BoyerMooreHorspoolSearcher_GeneralImp
; however, the implementation is specialized for a value_type
of char
. Notably, needle metadata is stored/accessed from a fixed size array, not a dynamically-sized container.
typedef bsl::iterator_traits<RNDACC_ITR_NEEDLE>::difference_type bslstl::BoyerMooreHorspoolSearcher_CharImp< RNDACC_ITR_NEEDLE, HASH, EQUAL >::difference_type |
a signed type that can describe the distance between RNDACC_ITR_NEEDLE
iterators
typedef bsl::iterator_traits<RNDACC_ITR_NEEDLE>::value_type bslstl::BoyerMooreHorspoolSearcher_CharImp< RNDACC_ITR_NEEDLE, HASH, EQUAL >::value_type |
the type of the values that can be obtained by dereferencing a RNDACC_ITR_NEEDLE
|
inline |
Create a BoyerMooreHorspoolSearcher_CharImp
object for the sequence of char
values in the specified range [needleFirst, needlelast)
. This implementation is invoked when the specified hash
is bsl::hash<char>
and the specified equal
is bsl::equal_to<char>
. Neither functor is used because for the special case of char
the needle metadata is maintained in a fixed size array (256 elements). As always, the specified basicAllocator
is used to supply memory. If basicAllocator
is 0, the currently installed default allocator is used. The behavior is undefined unless needleFirst
can be advanced to needleLast
.
|
inline |
Create a BoyerMooreHorspoolSearcher_CharImp
object having same state as the specified original
object. The allocator of original
is propagated to the new object.
|
inline |
Create a BoyerMooreHorspoolSearcher_CharImp
object having same state as the specified original
object by moving (in constant time) the state of the original object to the new object. The allocator of original
is propagated to the new object. The original
object is left in an unspecified (valid) state.
|
inline |
Create a BoyerMooreHorspoolSearcher_CharImp
object having the same state as the specified original
object and that uses the specified basicAllocator
to supply memory. If basicAllocator
is 0, the currently installed default allocator is used.
|
inline |
Create a BoyerMooreHorspoolSearcher_CharImp
object having the same state as the specified original
object and that uses the specified basicAllocator
to supply memory. The state of original
is moved (in constant time) to the new searcher if basicAllocator == original.allocator()
, and is copied using basicAllocator
otherwise. If basicAllocator
is 0, the currently installed default allocator is used. The original
object is left in an unspecified (valid) state.
|
inline |
|
inline |
|
inline |
Return the number of positions to advance the search in the haystack when the specified value
is found in the rightmost position of the current (unsuccessful) match attempt.
|
inline |
|
inline |
|
inline |
Assign to this object the state of the specified rhs
object and return a non-const
reference to this searcher. The rhs
is left in an unspecified (valid) state.
|
inline |
Assign to this object the state of the specified rhs
object, and return a non-const
reference to this searcher object.