10#include "../core/enum_type.hpp"
12static const char *
const _name_original_english_1[] = {
19static const char *
const _name_original_english_2[] = {
48static const char *
const _name_original_english_3[] = {
59static const char *
const _name_original_english_4[] = {
69static const char *
const _name_original_english_5[] = {
95static const char *
const _name_original_english_6[] = {
107static const char *
const _name_additional_english_prefix[] = {
116static const char *
const _name_additional_english_1a[] = {
162static const char *
const _name_additional_english_1b1[] = {
191static const char *
const _name_additional_english_1b2[] = {
206static const char *
const _name_additional_english_1b3a[] = {
215static const char *
const _name_additional_english_1b3b[] = {
221static const char *
const _name_additional_english_2[] = {
279static const char *
const _name_additional_english_3[] = {
300static const char *
const _name_austrian_a1[] = {
309static const char *
const _name_austrian_a2[] = {
354static const char *
const _name_austrian_a3[] = {
373static const char *
const _name_austrian_a4[] = {
388static const char *
const _name_austrian_a5[] = {
393static const char *
const _name_austrian_a6[] = {
416static const char *
const _name_austrian_f1[] = {
421static const char *
const _name_austrian_f2[] = {
437static const char *
const _name_austrian_b1[] = {
441static const char *
const _name_austrian_b2[] = {
454static const char *
const _name_german_real[] = {
478static const char *
const _name_german_pre[] = {
484static const char *
const _name_german_1[] = {
580static const char *
const _name_german_2[] = {
599static const char *
const _name_german_3_an_der[] = {
603static const char *
const _name_german_3_am[] = {
607static const char *
const _name_german_4_an_der[] = {
615static const char *
const _name_german_4_am[] = {
619static const char *
const _name_spanish_real[] = {
628 "Ciudad Bol\u00edvar",
639 "San Crist\u00f3bal",
688 "Fort\u00edn Esteros",
708static const char *
const _name_french_real[] = {
781static const char *
const _name_silly_1[] = {
872static const char *
const _name_silly_2[] = {
890static const char *
const _name_swedish_1[] = {
897static const char *
const _name_swedish_2[] = {
938static const char *
const _name_swedish_2a[] = {
983static const char *
const _name_swedish_2b[] = {
995static const char *
const _name_swedish_2c[] = {
1024static const char *
const _name_swedish_3[] = {
1059static const char *
const _name_dutch_1[] = {
1070static const char *
const _name_dutch_2[] = {
1126static const char *
const _name_dutch_3[] = {
1149static const char *
const _name_dutch_4[] = {
1158static const char *
const _name_dutch_5[] = {
1217static const char *
const _name_finnish_real[] = {
1223 "J\u00e4rvel\u00e4",
1251static const char *
const _name_finnish_1[] = {
1281static const char *
const _name_finnish_2[] = {
1286 "Pit\u00e4j\u00e4n",
1295static const char *
const _name_finnish_3[] = {
1317static const char *
const _name_polish_1_m[] = {
1331static const char *
const _name_polish_1_f[] = {
1345static const char *
const _name_polish_1_n[] = {
1359static const char *
const _name_polish_2_o[] = {
1387 "Szklarska Por\u0119ba",
1389 "Golub-Dobrzy\u0144",
1396static const char *
const _name_polish_2_m[] = {
1447static const char *
const _name_polish_2_f[] = {
1478static const char *
const _name_polish_2_n[] = {
1511static const char *
const _name_polish_3_m[] = {
1513 " \u015awi\u0119tokrzyski",
1520 " \u015al\u0105ski",
1543static const char *
const _name_polish_3_f[] = {
1545 " \u015awi\u0119tokrzyska",
1552 " \u015al\u0105ska",
1575static const char *
const _name_polish_3_n[] = {
1577 " \u015awietokrzyskie",
1584 " \u015al\u0105skie",
1589 " Warmi\u0144skie ",
1602 " Ma\u0142opolskie",
1607static const char *
const _name_czech_real[] = {
1616 "\u010cesk\u00e1 L\u00edpa",
1617 "\u010cesk\u00e9 Bud\u011bjovice",
1618 "\u010cesk\u00fd Krumlov",
1619 "D\u011b\u010d\u00edn",
1622 "Fr\u00fddek-M\u00edstek",
1623 "Havl\u00ed\u010dk\u016fv Brod",
1625 "Hradec Kr\u00e1lov\u00e9",
1630 "Jablonec nad Nisou",
1634 "Jind\u0159ich\u016fv Hradec",
1641 "Krom\u011b\u0159\u00ed\u017e",
1644 "Litom\u011b\u0159ice",
1646 "Man\u011bt\u00edn",
1648 "Mlad\u00e1 Boleslav",
1651 "Nov\u00fd Ji\u010d\u00edn",
1665 "P\u0159\u00edbram",
1670 "Rychnov nad Kn\u011b\u017enou",
1680 "T\u0159eb\u00ed\u010d",
1682 "Uhersk\u00e9 Hradi\u0161t\u011b",
1683 "\u00dast\u00ed nad Labem",
1684 "\u00dast\u00ed nad Orlic\u00ed",
1687 "\u017d\u010f\u00e1r nad S\u00e1zavou",
1699enum CzechGender : uint8_t {
1712enum CzechPattern : uint8_t {
1721static const char *
const _name_czech_patmod[][3] = {
1722 {
"\u00ed",
"\u00fd",
"X" },
1723 {
"\u00ed",
"\u00e1",
"a" },
1724 {
"\u00ed",
"\u00e9",
"o" },
1725 {
"\u00ed",
"\u00e9",
"y" },
1726 {
"\u00ed",
"\u00e9",
"y" },
1727 {
"\u00ed",
"\u00e1",
"a" }
1732enum CzechAllow : uint8_t {
1736 CZA_ALL = CZA_SHORT | CZA_MIDDLE | CZA_LONG,
1742enum CzechChoose : uint8_t {
1747 CZC_ANY = CZC_COLOR | CZC_POSTFIX | CZC_NOPOSTFIX,
1760 CzechPattern pattern;
1767 { CZP_JARNI, CZC_ANY,
"Horn\u00ed" },
1768 { CZP_JARNI, CZC_ANY,
"Horn\u00ed" },
1769 { CZP_JARNI, CZC_ANY,
"Doln\u00ed" },
1770 { CZP_JARNI, CZC_ANY,
"Doln\u00ed" },
1771 { CZP_JARNI, CZC_ANY,
"P\u0159edn\u00ed" },
1772 { CZP_JARNI, CZC_ANY,
"Zadn\u00ed" },
1773 { CZP_JARNI, CZC_ANY,
"Kosteln\u00ed" },
1774 { CZP_JARNI, CZC_ANY,
"Havran\u00ed" },
1775 { CZP_JARNI, CZC_ANY,
"\u0158\u00ed\u010dn\u00ed" },
1776 { CZP_JARNI, CZC_ANY,
"Jezern\u00ed" },
1777 { CZP_MLADY, CZC_ANY,
"Velk\u00fd" },
1778 { CZP_MLADY, CZC_ANY,
"Velk\u00fd" },
1779 { CZP_MLADY, CZC_ANY,
"Mal\u00fd" },
1780 { CZP_MLADY, CZC_ANY,
"Mal\u00fd" },
1781 { CZP_MLADY, CZC_ANY,
"Vysok\u00fd" },
1782 { CZP_MLADY, CZC_ANY,
"\u010cesk\u00fd" },
1783 { CZP_MLADY, CZC_ANY,
"Moravsk\u00fd" },
1784 { CZP_MLADY, CZC_ANY,
"Slov\u00e1ck\u00fd" },
1785 { CZP_MLADY, CZC_ANY,
"Slezsk\u00fd" },
1786 { CZP_MLADY, CZC_ANY,
"Uhersk\u00fd" },
1787 { CZP_MLADY, CZC_ANY,
"Star\u00fd" },
1788 { CZP_MLADY, CZC_ANY,
"Star\u00fd" },
1789 { CZP_MLADY, CZC_ANY,
"Nov\u00fd" },
1790 { CZP_MLADY, CZC_ANY,
"Nov\u00fd" },
1791 { CZP_MLADY, CZC_ANY,
"Mlad\u00fd" },
1792 { CZP_MLADY, CZC_ANY,
"Kr\u00e1lovsk\u00fd" },
1793 { CZP_MLADY, CZC_ANY,
"Kamenn\u00fd" },
1794 { CZP_MLADY, CZC_ANY,
"Cihlov\u00fd" },
1795 { CZP_MLADY, CZC_ANY,
"Divn\u00fd" },
1796 { CZP_MLADY, CZC_COLOR,
"\u010cerven\u00e1" },
1797 { CZP_MLADY, CZC_COLOR,
"\u010cerven\u00e1" },
1798 { CZP_MLADY, CZC_COLOR,
"\u010cerven\u00e1" },
1799 { CZP_MLADY, CZC_COLOR,
"Zelen\u00e1" },
1800 { CZP_MLADY, CZC_COLOR,
"\u017dlut\u00e1" },
1801 { CZP_MLADY, CZC_COLOR,
"Siv\u00e1" },
1802 { CZP_MLADY, CZC_COLOR,
"\u0160ed\u00e1" },
1803 { CZP_MLADY, CZC_COLOR,
"B\u00edl\u00e1" },
1804 { CZP_MLADY, CZC_COLOR,
"B\u00edl\u00e1" },
1805 { CZP_MLADY, CZC_COLOR,
"Modr\u00e1" },
1806 { CZP_MLADY, CZC_COLOR,
"R\u016f\u017eov\u00e1" },
1807 { CZP_MLADY, CZC_COLOR,
"\u010cern\u00e1" },
1808 { CZP_PRIVL, CZC_ANY,
"Kr\u00e1lova" },
1809 { CZP_PRIVL, CZC_ANY,
"Janova" },
1810 { CZP_PRIVL, CZC_ANY,
"Karlova" },
1811 { CZP_PRIVL, CZC_ANY,
"Kry\u0161tofova" },
1812 { CZP_PRIVL, CZC_ANY,
"Ji\u0159\u00edkova" },
1813 { CZP_PRIVL, CZC_ANY,
"Petrova" },
1814 { CZP_PRIVL, CZC_ANY,
"Sudovo" },
1819 { CZG_SMASC, CZA_ALL, CZC_COLOR,
"Sedlec" },
1820 { CZG_SMASC, CZA_ALL, CZC_COLOR,
"Brod" },
1821 { CZG_SMASC, CZA_ALL, CZC_COLOR,
"Brod" },
1822 { CZG_SMASC, CZA_ALL, CZC_NONE,
"\u00daval" },
1823 { CZG_SMASC, CZA_ALL, CZC_COLOR,
"\u017d\u010f\u00e1r" },
1824 { CZG_SMASC, CZA_ALL, CZC_COLOR,
"Smrk" },
1825 { CZG_SFEM, CZA_ALL, CZC_COLOR,
"Hora" },
1826 { CZG_SFEM, CZA_ALL, CZC_COLOR,
"Lhota" },
1827 { CZG_SFEM, CZA_ALL, CZC_COLOR,
"Lhota" },
1828 { CZG_SFEM, CZA_ALL, CZC_COLOR,
"Hlava" },
1829 { CZG_SFEM, CZA_ALL, CZC_COLOR,
"L\u00edpa" },
1830 { CZG_SNEUT, CZA_ALL, CZC_COLOR,
"Pole" },
1831 { CZG_SNEUT, CZA_ALL, CZC_COLOR,
"\u00dadol\u00ed" },
1832 { CZG_PMASC, CZA_ALL, CZC_NONE,
"\u00davaly" },
1833 { CZG_PFEM, CZA_ALL, CZC_COLOR,
"Luka" },
1834 { CZG_PNEUT, CZA_ALL, CZC_COLOR,
"Pole" },
1839 { CZG_SMASC, CZA_MIDDLE, CZC_COLOR,
"Kostel" },
1840 { CZG_SMASC, CZA_MIDDLE, CZC_COLOR,
"Kl\u00e1\u0161ter" },
1841 { CZG_SMASC, CZA_SHORT, CZC_COLOR,
"Lhot" },
1842 { CZG_SFEM, CZA_SHORT, CZC_COLOR,
"Lhot" },
1843 { CZG_SFEM, CZA_SHORT, CZC_COLOR,
"Hur" },
1844 { CZG_FREE, CZA_MIDDLE | CZA_LONG, CZC_NONE,
"Sedl" },
1845 { CZG_FREE, CZA_SHORT | CZA_MIDDLE | CZA_LONG, CZC_COLOR,
"Hrad" },
1846 { CZG_NFREE, CZA_MIDDLE, CZC_NONE,
"Pras" },
1847 { CZG_NFREE, CZA_MIDDLE, CZC_NONE,
"Ba\u017e" },
1848 { CZG_NFREE, CZA_MIDDLE, CZC_NONE,
"Tes" },
1849 { CZG_NFREE, CZA_MIDDLE, CZC_NONE,
"U\u017e" },
1850 { CZG_NFREE, CZA_MIDDLE | CZA_LONG, CZC_POSTFIX,
"B\u0159" },
1851 { CZG_NFREE, CZA_MIDDLE | CZA_LONG, CZC_NONE,
"Vod" },
1852 { CZG_NFREE, CZA_MIDDLE | CZA_LONG, CZC_NONE,
"Jan" },
1853 { CZG_NFREE, CZA_LONG, CZC_NONE,
"Prach" },
1854 { CZG_NFREE, CZA_LONG, CZC_NONE,
"Kunr" },
1855 { CZG_NFREE, CZA_LONG, CZC_NONE,
"Strak" },
1856 { CZG_NFREE, CZA_LONG, CZC_NONE,
"V\u00edt" },
1857 { CZG_NFREE, CZA_LONG, CZC_NONE,
"Vy\u0161" },
1858 { CZG_NFREE, CZA_LONG, CZC_NONE,
"\u017dat" },
1859 { CZG_NFREE, CZA_LONG, CZC_NONE,
"\u017der" },
1860 { CZG_NFREE, CZA_LONG, CZC_NONE,
"St\u0159ed" },
1861 { CZG_NFREE, CZA_LONG, CZC_NONE,
"Harv" },
1862 { CZG_NFREE, CZA_LONG, CZC_NONE,
"Pruh" },
1863 { CZG_NFREE, CZA_LONG, CZC_NONE,
"Tach" },
1864 { CZG_NFREE, CZA_LONG, CZC_NONE,
"P\u00edsn" },
1865 { CZG_NFREE, CZA_LONG, CZC_NONE,
"Jin" },
1866 { CZG_NFREE, CZA_LONG, CZC_NONE,
"Jes" },
1867 { CZG_NFREE, CZA_LONG, CZC_NONE,
"Jar" },
1868 { CZG_NFREE, CZA_LONG, CZC_NONE,
"Sok" },
1869 { CZG_NFREE, CZA_LONG, CZC_NONE,
"Hod" },
1870 { CZG_NFREE, CZA_LONG, CZC_NONE,
"Net" },
1871 { CZG_FREE, CZA_LONG, CZC_NONE,
"Pra\u017e" },
1872 { CZG_FREE, CZA_LONG, CZC_NONE,
"Nerat" },
1873 { CZG_FREE, CZA_LONG, CZC_NONE,
"Kral" },
1874 { CZG_FREE, CZA_LONG, CZC_NONE,
"Hut" },
1875 { CZG_FREE, CZA_LONG, CZC_NOPOSTFIX,
"Pan" },
1876 { CZG_FREE, CZA_SHORT | CZA_MIDDLE | CZA_LONG, CZC_NOPOSTFIX,
"Odst\u0159ed" },
1877 { CZG_FREE, CZA_SHORT | CZA_MIDDLE | CZA_LONG, CZC_COLOR,
"Mrat" },
1878 { CZG_FREE, CZA_LONG, CZC_COLOR,
"Hlav" },
1879 { CZG_FREE, CZA_SHORT | CZA_MIDDLE, CZC_NONE,
"M\u011b\u0159" },
1880 { CZG_FREE, CZA_MIDDLE | CZA_LONG, CZC_NONE,
"Lip" },
1884static const char *
const _name_czech_subst_postfix[] = {
1892 { CZG_SMASC, CZA_SHORT | CZA_MIDDLE, CZC_ANY,
"ec" },
1893 { CZG_SMASC, CZA_SHORT | CZA_MIDDLE, CZC_ANY,
"\u00edn" },
1894 { CZG_SMASC, CZA_SHORT | CZA_MIDDLE | CZA_LONG, CZC_ANY,
"ov" },
1895 { CZG_SMASC, CZA_SHORT | CZA_LONG, CZC_ANY,
"kov" },
1896 { CZG_SMASC, CZA_LONG, CZC_POSTFIX,
"\u00edn" },
1897 { CZG_SMASC, CZA_LONG, CZC_POSTFIX,
"n\u00edk" },
1898 { CZG_SMASC, CZA_LONG, CZC_ANY,
"burk" },
1899 { CZG_SFEM, CZA_SHORT, CZC_ANY,
"ka" },
1900 { CZG_SFEM, CZA_MIDDLE, CZC_ANY,
"inka" },
1901 { CZG_SFEM, CZA_MIDDLE, CZC_ANY,
"n\u00e1" },
1902 { CZG_SFEM, CZA_LONG, CZC_ANY,
"ava" },
1903 { CZG_PMASC, CZA_LONG, CZC_POSTFIX,
"\u00edky" },
1904 { CZG_PMASC, CZA_LONG, CZC_ANY,
"upy" },
1905 { CZG_PMASC, CZA_LONG, CZC_ANY,
"olupy" },
1906 { CZG_PFEM, CZA_LONG, CZC_ANY,
"avy" },
1907 { CZG_PFEM, CZA_SHORT | CZA_MIDDLE | CZA_LONG, CZC_ANY,
"ice" },
1908 { CZG_PFEM, CZA_SHORT | CZA_MIDDLE | CZA_LONG, CZC_ANY,
"i\u010dky" },
1909 { CZG_PNEUT, CZA_SHORT | CZA_MIDDLE, CZC_ANY,
"na" },
1910 { CZG_SNEUT, CZA_SHORT | CZA_MIDDLE, CZC_ANY,
"no" },
1911 { CZG_SNEUT, CZA_LONG, CZC_ANY,
"i\u0161t\u011b" },
1914static const char *
const _name_czech_suffix[] = {
1923 "nad Ostravic\u00ed",
1926 "pod Prad\u011bdem",
1927 "pod Radho\u0161t\u011bm",
1928 "pod \u0158\u00edpem",
1929 "pod Sn\u011b\u017ekou",
1930 "pod \u0160pi\u010d\u00e1kem",
1932 "v \u010cech\u00e1ch",
1938static const char *
const _name_romanian_real[] = {
1945 "B\u0103ile Herculane",
1946 "B\u0103ile\u0219ti",
1958 "C\u0103l\u0103ra\u0219i",
1968 "Drobeta-Turnu Severin",
1969 "Dr\u0103g\u0103\u0219ani",
1970 "F\u0103g\u0103ra\u0219",
1977 "H\u00e2r\u0219ova",
1998 "Piatra Neam\u021b",
2002 "R\u00e2mnicu V\u00e2lcea",
2006 "Ro\u0219iorii de Vede",
2009 "Sf\u00e2ntu Gheorghe",
2018 "\u021a\u0103nd\u0103rei",
2019 "T\u00e2rgovi\u0219te",
2021 "T\u00e2rgu Mure\u0219",
2026 "Turnu M\u0103gurele",
2035static const char *
const _name_slovak_real[] = {
2037 "B\u00e1novce nad Bebravou",
2038 "Bansk\u00e1 Bystrica",
2039 "Bansk\u00e1 \u0160tiavnica",
2042 "Brezova pod Bradlom",
2045 "\u010cierna nad Tisou",
2049 "Spi\u0161sk\u00e1 Nov\u00e1 Ves",
2050 "Dunajsk\u00e1 Streda",
2051 "Gab\u010d\u00edikovo",
2068 "Liptovsk\u00fd Mikul\u00e1\u0161",
2078 "Nov\u00e1 Ba\u0148a",
2079 "Nov\u00e9 Mesto nad V\u00e1hom",
2080 "Nov\u00e9 Z\u00e1mky",
2083 "Pie\u0161\u0165any",
2086 "Pova\u017esk\u00e1 Bystrica",
2090 "Rimavsk\u00e1 Sobota",
2091 "Ro\u017e\u0148ava",
2099 "Sl\u00e1dkovi\u00cdovo",
2102 "Star\u00e1 \u013dubov\u0148a",
2103 "Star\u00e1 Tur\u00e1",
2104 "Str\u00e1\u017eske",
2107 "\u0160t\u00farovo",
2109 "Topo\u013e\u010dany",
2111 "Tren\u010d\u00edn",
2113 "Tur\u010dianske Teplice",
2114 "Tvrdo\u0161\u00edn",
2116 "Vranov nad Top\u013eou",
2117 "Z\u00e1horsk\u00e1 Bystrica",
2119 "\u013diar nad Hronom",
2121 "Zlat\u00e9 Moravce",
2125static const char *
const _name_norwegian_1[] = {
2212static const char *
const _name_norwegian_2[] = {
2282static const char *
const _name_norwegian_real[] = {
2290 "Br\u00f8nn\u00f8ysund",
2350 "Sandnessj\u00f8en",
2379static const char *
const _name_hungarian_1[] = {
2387static const char *
const _name_hungarian_2[] = {
2422 "Cs\u00e1sz\u00e1r",
2441 "V\u00e1s\u00e1ros",
2444static const char *
const _name_hungarian_3[] = {
2463static const char *
const _name_hungarian_4[] = {
2471static const char *
const _name_hungarian_real[] = {
2480 "G\u00f6d\u00f6ll\u0151",
2510static const char *
const _name_swiss_real[] = {
2538 "Freienbach-Pf\u00e4ffikon",
2548 "Illnau-Effretikon",
2558 "La Chaux-de-Fonds",
2572 "M\u00fcnchenstein",
2581 "Neuhausen am Rheinfall",
2629 "Yverdon-les-Bains",
2636static const char *
const _name_danish_1[] = {
2651static const char *
const _name_danish_2[] = {
2735static const char *
const _name_danish_3[] = {
2768static const char *
const _name_turkish_prefix[] = {
2779 "K\u00fc\u00e7\u00fck",
2787static const char *
const _name_turkish_middle[] = {
2797static const char *
const _name_turkish_suffix[] = {
2814static const char *
const _name_turkish_real[] = {
2829 "\u00c7ank\u0131r\u0131",
2837 "G\u00fcm\u00fc\u015fhane",
2852 "Kahramanmara\u015f",
2865 "\u015eanl\u0131urfa",
2882static const char *
const _name_italian_real[] = {
2963static const char *
const _name_italian_pref[] = {
2978static const char *
const _name_italian_1m[] = {
3006static const char *
const _name_italian_1f[] = {
3032static const char *
const _name_italian_2[] = {
3062static const char *
const _name_italian_2i[] = {
3089static const char *
const _name_italian_3[] = {
3113static const char *
const _name_italian_river1[] = {
3120static const char *
const _name_italian_river2[] = {
3148static const char *
const _name_catalan_real[] = {
3150 "L'Hospitalet de Llobregat",
3171 "Vilafranca del Pened\u00e8s",
3177 "Les Borges Blanques",
3189 "Vilanova i la Geltr\u00fa",
3218static const char *
const _name_catalan_pref[] = {
3242 "Sant Sadurn\u00ed de ",
3244 "Santa Margarida de ",
3246 "Sant Mart\u00ed de ",
3248 "Sant Juli\u00e0 de ",
3249 "Sant Vicen\u00e7 de ",
3253static const char *
const _name_catalan_1m[] = {
3262static const char *
const _name_catalan_1f[] = {
3273static const char *
const _name_catalan_2m[] = {
3284static const char *
const _name_catalan_2f[] = {
3295static const char *
const _name_catalan_3[] = {
3303 " de Bergued\u00e0",
3308static const char *
const _name_catalan_river1[] = {
3314 " de Francol\u00ed",
#define DECLARE_ENUM_AS_BIT_SET(enum_type)
Operators to allow to work with enum as with type safe bit set in C++.