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.
5 #ifndef THIRD_PARTY_LIBADDRESSINPUT_CHROMIUM_ADDRESSINPUT_UTIL_H_
6 #define THIRD_PARTY_LIBADDRESSINPUT_CHROMIUM_ADDRESSINPUT_UTIL_H_
10 #include "third_party/libaddressinput/src/cpp/include/libaddressinput/address_field.h"
11 #include "third_party/libaddressinput/src/cpp/include/libaddressinput/address_problem.h"
14 namespace addressinput
{
20 namespace addressinput
{
22 // Returns true if |address_to_check| has all of its required fields.
23 bool HasAllRequiredFields(
24 const ::i18n::addressinput::AddressData
& address_to_check
);
26 // Validates required fields in |address_to_check| without loading rules from
27 // the server. The |problems| parameter cannot be NULL. Does not take ownership
30 // See documentation of ::i18n::addressinput::AddressValidator::Validate() for
31 // description of |filter| and |problems|.
32 void ValidateRequiredFields(
33 const ::i18n::addressinput::AddressData
& address_to_check
,
34 const std::multimap
< ::i18n::addressinput::AddressField
,
35 ::i18n::addressinput::AddressProblem
>* filter
,
36 std::multimap
< ::i18n::addressinput::AddressField
,
37 ::i18n::addressinput::AddressProblem
>* problems
);
39 } // namespace addressinput
40 } // namespace autofill
42 #endif // THIRD_PARTY_LIBADDRESSINPUT_CHROMIUM_ADDRESSINPUT_UTIL_H_