[#BloombergLP-bslstl-BoyerMooreHorspoolSearcher_GeneralImp-2constructor-08]
= xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/bslstl.adoc[bslstl]::xref:BloombergLP/bslstl/BoyerMooreHorspoolSearcher_GeneralImp.adoc[BoyerMooreHorspoolSearcher&lowbar;GeneralImp]::BoyerMooreHorspoolSearcher&lowbar;GeneralImp
:relfileprefix: ../../../
:mrdocs:

Constructors

== Synopses

Declared in `&lt;bslstl&lowbar;boyermoorehorspoolsearcher&period;h&gt;`

Create an implementation with the same state as `original`&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
xref:BloombergLP/bslstl/BoyerMooreHorspoolSearcher_GeneralImp/2constructor-0f.adoc[BoyerMooreHorspoolSearcher&lowbar;GeneralImp](xref:BloombergLP/bslstl/BoyerMooreHorspoolSearcher_GeneralImp.adoc[BoyerMooreHorspoolSearcher&lowbar;GeneralImp] const& original);
----

[.small]#xref:BloombergLP/bslstl/BoyerMooreHorspoolSearcher_GeneralImp/2constructor-0f.adoc[_» more&period;&period;&period;_]#

Create an implementation by moving from the specified `original`&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
xref:BloombergLP/bslstl/BoyerMooreHorspoolSearcher_GeneralImp/2constructor-0d.adoc[BoyerMooreHorspoolSearcher&lowbar;GeneralImp](xref:BloombergLP/bslmf/MovableRef.adoc[BloombergLP::bslmf::MovableRef&lt;BoyerMooreHorspoolSearcher&lowbar;GeneralImp&gt;] original) noexcept;
----

[.small]#xref:BloombergLP/bslstl/BoyerMooreHorspoolSearcher_GeneralImp/2constructor-0d.adoc[_» more&period;&period;&period;_]#

Create an implementation by moving from `original` using the given allocator&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
xref:BloombergLP/bslstl/BoyerMooreHorspoolSearcher_GeneralImp/2constructor-0c.adoc[BoyerMooreHorspoolSearcher&lowbar;GeneralImp](
    xref:BloombergLP/bslmf/MovableRef.adoc[BloombergLP::bslmf::MovableRef&lt;BoyerMooreHorspoolSearcher&lowbar;GeneralImp&gt;] original,
    xref:BloombergLP/bslma/Allocator.adoc[BloombergLP::bslma::Allocator]* basicAllocator);
----

[.small]#xref:BloombergLP/bslstl/BoyerMooreHorspoolSearcher_GeneralImp/2constructor-0c.adoc[_» more&period;&period;&period;_]#

Create an implementation with the same state as `original`&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
xref:BloombergLP/bslstl/BoyerMooreHorspoolSearcher_GeneralImp/2constructor-04.adoc[BoyerMooreHorspoolSearcher&lowbar;GeneralImp](
    xref:BloombergLP/bslstl/BoyerMooreHorspoolSearcher_GeneralImp.adoc[BoyerMooreHorspoolSearcher&lowbar;GeneralImp] const& original,
    xref:BloombergLP/bslma/Allocator.adoc[BloombergLP::bslma::Allocator]* basicAllocator);
----

[.small]#xref:BloombergLP/bslstl/BoyerMooreHorspoolSearcher_GeneralImp/2constructor-04.adoc[_» more&period;&period;&period;_]#

Create an implementation for the needle `&lsqb;needleFirst, needleLast)&rsqb;`&period;


[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
xref:BloombergLP/bslstl/BoyerMooreHorspoolSearcher_GeneralImp/2constructor-05.adoc[BoyerMooreHorspoolSearcher&lowbar;GeneralImp](
    RNDACC&lowbar;ITR&lowbar;NEEDLE needleFirst,
    RNDACC&lowbar;ITR&lowbar;NEEDLE needleLast,
    HASH hash,
    EQUAL equal,
    xref:BloombergLP/bslma/Allocator.adoc[BloombergLP::bslma::Allocator]* basicAllocator);
----

[.small]#xref:BloombergLP/bslstl/BoyerMooreHorspoolSearcher_GeneralImp/2constructor-05.adoc[_» more&period;&period;&period;_]#

== Parameters

[cols="1,4"]
|===
| Name| Description
| *original*
| object whose state to copy
| *basicAllocator*
| memory allocator used to supply memory
| *needleFirst*
| beginning of the needle sequence
| *needleLast*
| end of the needle sequence
| *hash*
| hash functor used to store and look up skip metadata
| *equal*
| equality comparison functor used with `hash`
|===


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