Commit 78815e9e authored by Matthias Körber's avatar Matthias Körber Committed by Commit Bot

[Autofill] Cleanups in the field type parser files

Rename variables containing the parsing patterns.
Removes auto& statements in favor of explicit type declarations.
Removes spurious comments.

Change-Id: I9ca9523a5039952ab7de9dbeaa45f0baaa476d68
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2535770
Commit-Queue: Matthias Körber <koerber@google.com>
Reviewed-by: default avatarChristoph Schwering <schwering@google.com>
Cr-Commit-Position: refs/heads/master@{#827993}
parent 68722926
...@@ -88,15 +88,6 @@ class AddressField : public FormField { ...@@ -88,15 +88,6 @@ class AddressField : public FormField {
// RESULT_MATCH_NAME_LABEL, then |scanner| advances and |match| is filled if // RESULT_MATCH_NAME_LABEL, then |scanner| advances and |match| is filled if
// it is non-NULL. Otherwise |scanner| does not advance and |match| does not // it is non-NULL. Otherwise |scanner| does not advance and |match| does not
// change. // change.
// ParseNameLabelResult ParseNameAndLabelSeparately(
// AutofillScanner* scanner,
// const base::string16& pattern,
// int match_type,
// AutofillField** match,
// const RegExLogging& logging);
// New version of function above using new structure MatchingPattern and
// PatternProvider.
ParseNameLabelResult ParseNameAndLabelSeparately( ParseNameLabelResult ParseNameAndLabelSeparately(
AutofillScanner* scanner, AutofillScanner* scanner,
const base::string16& pattern, const base::string16& pattern,
......
...@@ -15,10 +15,11 @@ std::unique_ptr<FormField> EmailField::Parse(AutofillScanner* scanner, ...@@ -15,10 +15,11 @@ std::unique_ptr<FormField> EmailField::Parse(AutofillScanner* scanner,
const LanguageCode& page_language, const LanguageCode& page_language,
LogManager* log_manager) { LogManager* log_manager) {
AutofillField* field; AutofillField* field;
auto& patterns = PatternProvider::GetInstance().GetMatchPatterns( const std::vector<MatchingPattern>& email_patterns =
"EMAIL_ADDRESS", page_language); PatternProvider::GetInstance().GetMatchPatterns("EMAIL_ADDRESS",
page_language);
if (ParseFieldSpecifics(scanner, base::UTF8ToUTF16(kEmailRe), if (ParseFieldSpecifics(scanner, base::UTF8ToUTF16(kEmailRe),
MATCH_DEFAULT | MATCH_EMAIL, patterns, &field, MATCH_DEFAULT | MATCH_EMAIL, email_patterns, &field,
{log_manager, "kEmailRe"})) { {log_manager, "kEmailRe"})) {
return std::make_unique<EmailField>(field); return std::make_unique<EmailField>(field);
} }
......
...@@ -103,6 +103,7 @@ class FormField { ...@@ -103,6 +103,7 @@ class FormField {
int match_field_input_types, int match_field_input_types,
AutofillField** match, AutofillField** match,
const RegExLogging& logging = {}); const RegExLogging& logging = {});
struct MatchFieldBitmasks { struct MatchFieldBitmasks {
int restrict_attributes = ~0; int restrict_attributes = ~0;
int augment_types = 0; int augment_types = 0;
......
...@@ -420,7 +420,8 @@ const char* PhoneField::GetRegExpName(RegexType regex_id) { ...@@ -420,7 +420,8 @@ const char* PhoneField::GetRegExpName(RegexType regex_id) {
return ""; return "";
} }
// // Returns the string representation of |phonetype_id| as it is used to key to
// identify coressponding patterns.
std::string PhoneField::GetJSONFieldType(RegexType phonetype_id) { std::string PhoneField::GetJSONFieldType(RegexType phonetype_id) {
switch (phonetype_id) { switch (phonetype_id) {
case REGEX_COUNTRY: case REGEX_COUNTRY:
...@@ -461,8 +462,9 @@ bool PhoneField::ParsePhoneField(AutofillScanner* scanner, ...@@ -461,8 +462,9 @@ bool PhoneField::ParsePhoneField(AutofillScanner* scanner,
if (is_country_code_field) if (is_country_code_field)
match_type |= MATCH_SELECT; match_type |= MATCH_SELECT;
auto& patterns = PatternProvider::GetInstance().GetMatchPatterns( const std::vector<MatchingPattern>& patterns =
json_field_type, page_language); PatternProvider::GetInstance().GetMatchPatterns(json_field_type,
page_language);
return ParseFieldSpecifics(scanner, base::UTF8ToUTF16(regex), match_type, return ParseFieldSpecifics(scanner, base::UTF8ToUTF16(regex), match_type,
patterns, field, logging); patterns, field, logging);
......
...@@ -16,13 +16,13 @@ std::unique_ptr<FormField> PriceField::Parse(AutofillScanner* scanner, ...@@ -16,13 +16,13 @@ std::unique_ptr<FormField> PriceField::Parse(AutofillScanner* scanner,
const LanguageCode& page_language, const LanguageCode& page_language,
LogManager* log_manager) { LogManager* log_manager) {
AutofillField* field; AutofillField* field;
auto& patterns = const std::vector<MatchingPattern>& price_patterns =
PatternProvider::GetInstance().GetMatchPatterns("PRICE", page_language); PatternProvider::GetInstance().GetMatchPatterns("PRICE", page_language);
if (ParseFieldSpecifics(scanner, base::UTF8ToUTF16(kPriceRe), if (ParseFieldSpecifics(scanner, base::UTF8ToUTF16(kPriceRe),
MATCH_DEFAULT | MATCH_NUMBER | MATCH_SELECT | MATCH_DEFAULT | MATCH_NUMBER | MATCH_SELECT |
MATCH_TEXT_AREA | MATCH_SEARCH, MATCH_TEXT_AREA | MATCH_SEARCH,
patterns, &field, {log_manager, kPriceRe})) { price_patterns, &field, {log_manager, kPriceRe})) {
return std::make_unique<PriceField>(field); return std::make_unique<PriceField>(field);
} }
......
...@@ -18,27 +18,31 @@ TravelField::~TravelField() = default; ...@@ -18,27 +18,31 @@ TravelField::~TravelField() = default;
std::unique_ptr<FormField> TravelField::Parse(AutofillScanner* scanner, std::unique_ptr<FormField> TravelField::Parse(AutofillScanner* scanner,
const LanguageCode& page_language, const LanguageCode& page_language,
LogManager* log_manager) { LogManager* log_manager) {
if (!scanner || scanner->IsEnd()) { if (!scanner || scanner->IsEnd())
return nullptr; return nullptr;
}
auto& patternsP = PatternProvider::GetInstance().GetMatchPatterns( const std::vector<MatchingPattern>& passport_patterns =
"PASSPORT", page_language); PatternProvider::GetInstance().GetMatchPatterns("PASSPORT",
auto& patternsTO = PatternProvider::GetInstance().GetMatchPatterns( page_language);
"TRAVEL_ORIGIN", page_language); const std::vector<MatchingPattern>& travel_origin_patterns =
auto& patternsTD = PatternProvider::GetInstance().GetMatchPatterns( PatternProvider::GetInstance().GetMatchPatterns("TRAVEL_ORIGIN",
"TRAVEL_DESTINATION", page_language); page_language);
auto& patternsF = const std::vector<MatchingPattern>& travel_destination_patterns =
PatternProvider::GetInstance().GetMatchPatterns("TRAVEL_DESTINATION",
page_language);
const std::vector<MatchingPattern>& flight_patterns =
PatternProvider::GetInstance().GetMatchPatterns("FLIGHT", page_language); PatternProvider::GetInstance().GetMatchPatterns("FLIGHT", page_language);
auto travel_field = std::make_unique<TravelField>(); auto travel_field = std::make_unique<TravelField>();
if (ParseField(scanner, base::UTF8ToUTF16(kPassportRe), patternsP, if (ParseField(scanner, base::UTF8ToUTF16(kPassportRe), passport_patterns,
&travel_field->passport_, {log_manager, "kPassportRe"}) || &travel_field->passport_, {log_manager, "kPassportRe"}) ||
ParseField(scanner, base::UTF8ToUTF16(kTravelOriginRe), patternsTO, ParseField(scanner, base::UTF8ToUTF16(kTravelOriginRe),
&travel_field->origin_, {log_manager, "kTravelOriginRe"}) || travel_origin_patterns, &travel_field->origin_,
ParseField(scanner, base::UTF8ToUTF16(kTravelDestinationRe), patternsTD, {log_manager, "kTravelOriginRe"}) ||
&travel_field->destination_, ParseField(scanner, base::UTF8ToUTF16(kTravelDestinationRe),
travel_destination_patterns, &travel_field->destination_,
{log_manager, "kTravelDestinationRe"}) || {log_manager, "kTravelDestinationRe"}) ||
ParseField(scanner, base::UTF8ToUTF16(kFlightRe), patternsF, ParseField(scanner, base::UTF8ToUTF16(kFlightRe), flight_patterns,
&travel_field->flight_, {log_manager, "kFlightRe"})) { &travel_field->flight_, {log_manager, "kFlightRe"})) {
// If any regex matches, then we found a travel field. // If any regex matches, then we found a travel field.
return std::move(travel_field); return std::move(travel_field);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment