diff options
author | joaodasilva@chromium.org <joaodasilva@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-12-13 20:36:53 +0000 |
---|---|---|
committer | joaodasilva@chromium.org <joaodasilva@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-12-13 20:36:53 +0000 |
commit | 716c016d95025a8f4d42baab6639b9dc90498f2d (patch) | |
tree | 9efb703e070ecbfb1b73bfac9b350a3b81af14f6 /components/url_matcher/string_pattern.h | |
parent | 32c90a98f03fa68da4ba3d97a8e56ca70e92a07d (diff) | |
download | chromium_src-716c016d95025a8f4d42baab6639b9dc90498f2d.zip chromium_src-716c016d95025a8f4d42baab6639b9dc90498f2d.tar.gz chromium_src-716c016d95025a8f4d42baab6639b9dc90498f2d.tar.bz2 |
Move extensions/common/matcher into components/url_matcher.
This allows using that code in builds that don't include extensions without
having to introduce layering exceptions. This is meant for inclusion on the
iOS build.
BUG=271392
TBR=brettw@chromium.org
Review URL: https://codereview.chromium.org/113903002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@240736 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'components/url_matcher/string_pattern.h')
-rw-r--r-- | components/url_matcher/string_pattern.h | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/components/url_matcher/string_pattern.h b/components/url_matcher/string_pattern.h new file mode 100644 index 0000000..ca5f223 --- /dev/null +++ b/components/url_matcher/string_pattern.h @@ -0,0 +1,43 @@ +// Copyright 2013 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#ifndef COMPONENTS_URL_MATCHER_STRING_PATTERN_H_ +#define COMPONENTS_URL_MATCHER_STRING_PATTERN_H_ + +#include <string> +#include <vector> + +#include "base/basictypes.h" +#include "components/url_matcher/url_matcher_export.h" + +namespace url_matcher { + +// An individual pattern of a substring or regex matcher. A pattern consists of +// a string (interpreted as individual bytes, no character encoding) and an +// identifier. +// IDs are returned to the caller of SubstringSetMatcher::Match() or +// RegexMatcher::MatchURL() to help the caller to figure out what +// patterns matched a string. All patterns registered to a matcher +// need to contain unique IDs. +class URL_MATCHER_EXPORT StringPattern { + public: + typedef int ID; + + StringPattern(const std::string& pattern, ID id); + ~StringPattern(); + const std::string& pattern() const { return pattern_; } + ID id() const { return id_; } + + bool operator<(const StringPattern& rhs) const; + + private: + std::string pattern_; + ID id_; + + DISALLOW_COPY_AND_ASSIGN(StringPattern); +}; + +} // namespace url_matcher + +#endif // COMPONENTS_URL_MATCHER_STRING_PATTERN_H_ |