1// Copyright (C) 2012 The Libphonenumber Authors
2//
3// Licensed under the Apache License, Version 2.0 (the "License");
4// you may not use this file except in compliance with the License.
5// You may obtain a copy of the License at
6//
7// http://www.apache.org/licenses/LICENSE-2.0
8//
9// Unless required by applicable law or agreed to in writing, software
10// distributed under the License is distributed on an "AS IS" BASIS,
11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12// See the License for the specific language governing permissions and
13// limitations under the License.
14//
15// This file is generated automatically, do not edit it manually.
16
17#ifndef I18N_PHONENUMBERS_GEOCODING_DATA
18#define I18N_PHONENUMBERS_GEOCODING_DATA
19
20#include "phonenumbers/base/basictypes.h"
21
22namespace i18n {
23namespace phonenumbers {
24
25struct CountryLanguages {
26  // Sorted array of language codes.
27  const char** available_languages;
28
29  // Number of elements in available_languages.
30  const int available_languages_size;
31};
32
33struct PrefixDescriptions {
34  // Sorted array of phone number prefixes.
35  const int32* prefixes;
36
37  // Number of elements in prefixes.
38  const int prefixes_size;
39
40  // Array of phone number prefix descriptions, mapped one to one
41  // to prefixes.
42  const char** descriptions;
43
44  // Sorted array of unique prefix lengths in base 10.
45  const int32* possible_lengths;
46
47  // Number of elements in possible_lengths.
48  const int possible_lengths_size;
49};
50
51// Returns a sorted array of country calling codes.
52const int* get_country_calling_codes();
53
54// Returns the number of country calling codes in
55// get_country_calling_codes() array.
56int get_country_calling_codes_size();
57
58// Returns the CountryLanguages record for country at index, index
59// being in [0, get_country_calling_codes_size()).
60const CountryLanguages* get_country_languages(int index);
61
62// Returns a sorted array of prefix language code pairs like
63// "1_de" or "82_ko".
64const char** get_prefix_language_code_pairs();
65
66// Returns the number of elements in
67// get_prefix_language_code_pairs()
68int get_prefix_language_code_pairs_size();
69
70// Returns the PrefixDescriptions for language/code pair at index,
71// index being in [0, get_prefix_language_code_pairs_size()).
72const PrefixDescriptions* get_prefix_descriptions(int index);
73
74}  // namespace phonenumbers
75}  // namespace i18n
76
77#endif  // I18N_PHONENUMBERS_GEOCODING_DATA
78