tmp/tmpnm8m9zlf/{from.md → to.md}
RENAMED
|
@@ -1,8 +1,9 @@
|
|
| 1 |
#### Class template `boyer_moore_searcher` <a id="func.search.bm">[[func.search.bm]]</a>
|
| 2 |
|
| 3 |
``` cpp
|
|
|
|
| 4 |
template<class RandomAccessIterator1,
|
| 5 |
class Hash = hash<typename iterator_traits<RandomAccessIterator1>::value_type>,
|
| 6 |
class BinaryPredicate = equal_to<>>
|
| 7 |
class boyer_moore_searcher {
|
| 8 |
public:
|
|
@@ -19,30 +20,30 @@ template<class RandomAccessIterator1,
|
|
| 19 |
RandomAccessIterator1 pat_first_; // exposition only
|
| 20 |
RandomAccessIterator1 pat_last_; // exposition only
|
| 21 |
Hash hash_; // exposition only
|
| 22 |
BinaryPredicate pred_; // exposition only
|
| 23 |
};
|
|
|
|
| 24 |
```
|
| 25 |
|
| 26 |
``` cpp
|
| 27 |
boyer_moore_searcher(RandomAccessIterator1 pat_first,
|
| 28 |
RandomAccessIterator1 pat_last,
|
| 29 |
Hash hf = Hash(),
|
| 30 |
BinaryPredicate pred = BinaryPredicate());
|
| 31 |
```
|
| 32 |
|
| 33 |
*Preconditions:* The value type of `RandomAccessIterator1` meets the
|
| 34 |
-
*Cpp17DefaultConstructible*
|
| 35 |
-
|
| 36 |
|
| 37 |
-
|
| 38 |
-
`
|
| 39 |
-
`
|
| 40 |
-
is `true`.
|
| 41 |
|
| 42 |
*Effects:* Initializes `pat_first_` with `pat_first`, `pat_last_` with
|
| 43 |
-
`pat_last`, `hash_` with `hf`, and
|
| 44 |
|
| 45 |
*Throws:* Any exception thrown by the copy constructor of
|
| 46 |
`RandomAccessIterator1`, or by the default constructor, copy
|
| 47 |
constructor, or the copy assignment operator of the value type of
|
| 48 |
`RandomAccessIterator1`, or the copy constructor or `operator()` of
|
|
|
|
| 1 |
#### Class template `boyer_moore_searcher` <a id="func.search.bm">[[func.search.bm]]</a>
|
| 2 |
|
| 3 |
``` cpp
|
| 4 |
+
namespace std {
|
| 5 |
template<class RandomAccessIterator1,
|
| 6 |
class Hash = hash<typename iterator_traits<RandomAccessIterator1>::value_type>,
|
| 7 |
class BinaryPredicate = equal_to<>>
|
| 8 |
class boyer_moore_searcher {
|
| 9 |
public:
|
|
|
|
| 20 |
RandomAccessIterator1 pat_first_; // exposition only
|
| 21 |
RandomAccessIterator1 pat_last_; // exposition only
|
| 22 |
Hash hash_; // exposition only
|
| 23 |
BinaryPredicate pred_; // exposition only
|
| 24 |
};
|
| 25 |
+
}
|
| 26 |
```
|
| 27 |
|
| 28 |
``` cpp
|
| 29 |
boyer_moore_searcher(RandomAccessIterator1 pat_first,
|
| 30 |
RandomAccessIterator1 pat_last,
|
| 31 |
Hash hf = Hash(),
|
| 32 |
BinaryPredicate pred = BinaryPredicate());
|
| 33 |
```
|
| 34 |
|
| 35 |
*Preconditions:* The value type of `RandomAccessIterator1` meets the
|
| 36 |
+
*Cpp17DefaultConstructible*, the *Cpp17CopyConstructible*, and the
|
| 37 |
+
*Cpp17CopyAssignable* requirements.
|
| 38 |
|
| 39 |
+
Let `V` be `iterator_traits<RandomAccessIterator1>::value_type`. For any
|
| 40 |
+
two values `A` and `B` of type `V`, if `pred(A, B) == true`, then
|
| 41 |
+
`hf(A) == hf(B)` is `true`.
|
|
|
|
| 42 |
|
| 43 |
*Effects:* Initializes `pat_first_` with `pat_first`, `pat_last_` with
|
| 44 |
+
`pat_last`, `hash_` with `hf`, and \texttt{pred\_} with `pred`.
|
| 45 |
|
| 46 |
*Throws:* Any exception thrown by the copy constructor of
|
| 47 |
`RandomAccessIterator1`, or by the default constructor, copy
|
| 48 |
constructor, or the copy assignment operator of the value type of
|
| 49 |
`RandomAccessIterator1`, or the copy constructor or `operator()` of
|