Merge Chromium + Blink git repositories
[chromium-blink-merge.git] / components / autofill / core / browser / autofill-inl.h
blob33e6a880d08b014140c415965e9ac416abd76dd6
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.
5 #ifndef COMPONENTS_AUTOFILL_CORE_BROWSER_AUTOFILL_INL_H_
6 #define COMPONENTS_AUTOFILL_CORE_BROWSER_AUTOFILL_INL_H_
8 namespace autofill {
10 template<typename T>
11 class FormGroupMatchesByCompareFunctor {
12 public:
13 explicit FormGroupMatchesByCompareFunctor(const T& form_group)
14 : form_group_(form_group) {
17 bool operator()(const T* form_group) {
18 return form_group->Compare(form_group_) == 0;
21 bool operator()(const T& form_group) {
22 return form_group.Compare(form_group_) == 0;
25 private:
26 const T& form_group_;
29 template<typename C, typename T>
30 bool FindByContents(const C& container, const T& form_group) {
31 return std::find_if(
32 container.begin(),
33 container.end(),
34 FormGroupMatchesByCompareFunctor<T>(form_group)) != container.end();
37 } // namespace autofill
39 #endif // COMPONENTS_AUTOFILL_CORE_BROWSER_AUTOFILL_INL_H_