// Copyright 2024 The Chromium Authors // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #ifndef COMPONENTS_AUTOFILL_CORE_BROWSER_FORM_PARSING_ADDRESS_FIELD_PARSER_NG_H_ #define COMPONENTS_AUTOFILL_CORE_BROWSER_FORM_PARSING_ADDRESS_FIELD_PARSER_NG_H_ #include <map> #include <memory> #include <string_view> #include "components/autofill/core/browser/field_types.h" #include "components/autofill/core/browser/form_parsing/form_field_parser.h" namespace autofill { // A partial or final interpretation of fields. // A `ClassifiedFieldSequence` assigns field types to fields such that // - no field type can be assigned to two different fields. // - no field can be assigned more than one type. struct ClassifiedFieldSequence { … }; // This is an address field parser that is based on backtracing to find the // highest scoring set of assignments of types to fields while respecting a set // of constraints (e.g. which field types may co-occur, the order in which field // types may occur, ...). class AddressFieldParserNG : public FormFieldParser { … }; } // namespace autofill #endif // COMPONENTS_AUTOFILL_CORE_BROWSER_FORM_PARSING_ADDRESS_FIELD_PARSER_NG_H_