| 440 | |
| 441 | template <typename STR> |
| 442 | bool StartsWithT(const STR& str, const STR& search, bool case_sensitive) { |
| 443 | if (case_sensitive) { |
| 444 | return str.compare(0, search.length(), search) == 0; |
| 445 | } else { |
| 446 | if (search.size() > str.size()) |
| 447 | return false; |
| 448 | return std::equal(search.begin(), search.end(), str.begin(), |
| 449 | butil::CaseInsensitiveCompare<typename STR::value_type>()); |
| 450 | } |
| 451 | } |
| 452 | |
| 453 | bool StartsWith(const string16& str, const string16& search, |
| 454 | bool case_sensitive) { |