1 // Copyright 2014 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
5 #include "components/history/core/browser/history_match.h"
6
7 #include "base/logging.h"
8
9 namespace history {
10
HistoryMatch()11 HistoryMatch::HistoryMatch()
12 : url_info(),
13 input_location(base::string16::npos),
14 match_in_scheme(false),
15 innermost_match(true) {
16 }
17
HistoryMatch(const URLRow & url_info,size_t input_location,bool match_in_scheme,bool innermost_match)18 HistoryMatch::HistoryMatch(const URLRow& url_info,
19 size_t input_location,
20 bool match_in_scheme,
21 bool innermost_match)
22 : url_info(url_info),
23 input_location(input_location),
24 match_in_scheme(match_in_scheme),
25 innermost_match(innermost_match) {
26 }
27
EqualsGURL(const HistoryMatch & h,const GURL & url)28 bool HistoryMatch::EqualsGURL(const HistoryMatch& h, const GURL& url) {
29 return h.url_info.url() == url;
30 }
31
IsHostOnly() const32 bool HistoryMatch::IsHostOnly() const {
33 const GURL& gurl = url_info.url();
34 DCHECK(gurl.is_valid());
35 return (!gurl.has_path() || (gurl.path() == "/")) && !gurl.has_query() &&
36 !gurl.has_ref();
37 }
38
39 } // namespace history
40