matcher_string_pattern.cc 928 B

123456789101112131415161718192021222324252627282930
  1. // Copyright 2013 The Chromium Authors. All rights reserved.
  2. // Use of this source code is governed by a BSD-style license that can be
  3. // found in the LICENSE file.
  4. #include "base/substring_set_matcher/matcher_string_pattern.h"
  5. #include <tuple>
  6. #include <utility>
  7. #include "base/check_op.h"
  8. namespace base {
  9. MatcherStringPattern::MatcherStringPattern(std::string pattern,
  10. MatcherStringPattern::ID id)
  11. : pattern_(std::move(pattern)), id_(id) {
  12. DCHECK_NE(kInvalidId, id_);
  13. }
  14. MatcherStringPattern::~MatcherStringPattern() = default;
  15. MatcherStringPattern::MatcherStringPattern(MatcherStringPattern&&) = default;
  16. MatcherStringPattern& MatcherStringPattern::operator=(MatcherStringPattern&&) =
  17. default;
  18. bool MatcherStringPattern::operator<(const MatcherStringPattern& rhs) const {
  19. return std::tie(id_, pattern_) < std::tie(rhs.id_, rhs.pattern_);
  20. }
  21. } // namespace base