Lines Matching refs:Char
88 template <typename Char>
91 typedef stringsearch::Vector<const Char> Vector;
129 if (sizeof(Char) == 1) {
137 static_assert(sizeof(Char) == sizeof(uint8_t) ||
138 sizeof(Char) == sizeof(uint16_t),
139 "sizeof(Char) == sizeof(uint16_t) || sizeof(uint8_t)");
155 Char char_code) {
156 if (sizeof(Char) == 1) {
217 template <typename Char>
218 inline size_t FindFirstCharacter(Vector<const Char> pattern,
219 Vector<const Char> subject, size_t index) {
220 const Char pattern_first_char = pattern[0];
228 const size_t bytes_to_search = (max_n - pos) * sizeof(Char);
233 CHECK_LE(max_n - pos, SIZE_MAX / sizeof(Char));
237 CHECK_LE(subject.length() - pos, SIZE_MAX / sizeof(Char));
242 const Char* char_pos = static_cast<const Char*>(void_pos);
247 char_pos = AlignDown(char_pos, sizeof(Char));
292 template <typename Char>
293 size_t StringSearch<Char>::SingleCharSearch(
305 template <typename Char>
306 size_t StringSearch<Char>::LinearSearch(
335 template <typename Char>
336 size_t StringSearch<Char>::BoyerMooreSearch(
347 Char last_char = pattern_[pattern_length - 1];
385 template <typename Char>
386 void StringSearch<Char>::PopulateBoyerMooreTable() {
410 Char last_char = pattern_[pattern_length - 1];
415 Char c = pattern_[i - 1];
454 template <typename Char>
455 size_t StringSearch<Char>::BoyerMooreHorspoolSearch(
464 Char last_char = pattern_[pattern_length - 1];
505 template <typename Char>
506 void StringSearch<Char>::PopulateBoyerMooreHorspoolTable() {
526 Char c = pattern_[i];
527 int bucket = (sizeof(Char) == 1) ? c : c % AlphabetSize();
538 template <typename Char>
539 size_t StringSearch<Char>::InitialSearch(
581 template <typename Char>
582 size_t SearchString(Vector<const Char> subject,
583 Vector<const Char> pattern,
585 StringSearch<Char> search(pattern);
593 template <typename Char>
594 size_t SearchString(const Char* haystack,
596 const Char* needle,
605 stringsearch::Vector<const Char> v_needle(needle, needle_length, is_forward);
606 stringsearch::Vector<const Char> v_haystack(