autofill_entry.cc revision a1401311d1ab56c4ed0a474bd38c108f75cb0cd9
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 5#include "components/autofill/core/browser/webdata/autofill_entry.h" 6 7#include "base/strings/utf_string_conversions.h" 8 9namespace autofill { 10 11AutofillKey::AutofillKey() {} 12 13AutofillKey::AutofillKey(const base::string16& name, 14 const base::string16& value) 15 : name_(name), 16 value_(value) { 17} 18 19AutofillKey::AutofillKey(const char* name, const char* value) 20 : name_(base::UTF8ToUTF16(name)), 21 value_(base::UTF8ToUTF16(value)) { 22} 23 24AutofillKey::AutofillKey(const AutofillKey& key) 25 : name_(key.name()), 26 value_(key.value()) { 27} 28 29AutofillKey::~AutofillKey() {} 30 31bool AutofillKey::operator==(const AutofillKey& key) const { 32 return name_ == key.name() && value_ == key.value(); 33} 34 35bool AutofillKey::operator<(const AutofillKey& key) const { 36 int diff = name_.compare(key.name()); 37 if (diff < 0) 38 return true; 39 40 if (diff == 0) 41 return value_.compare(key.value()) < 0; 42 43 return false; 44} 45 46AutofillEntry::AutofillEntry(const AutofillKey& key, 47 const base::Time& date_created, 48 const base::Time& date_last_used) 49 : key_(key), 50 date_created_(date_created), 51 date_last_used_(date_last_used) {} 52 53AutofillEntry::~AutofillEntry() {} 54 55bool AutofillEntry::operator==(const AutofillEntry& entry) const { 56 return key() == entry.key() && 57 date_created() == entry.date_created() && 58 date_last_used() == entry.date_last_used(); 59} 60 61bool AutofillEntry::operator<(const AutofillEntry& entry) const { 62 return key_ < entry.key(); 63} 64 65} // namespace autofill 66