X-Git-Url: http://wien.tomnetworks.com/gitweb/?a=blobdiff_plain;f=mono%2Fmetadata%2Fculture-info.h;h=69e9005e1e2f91422154d36399f92c196ad7f05b;hb=HEAD;hp=09720b71edf64de38a692ab22dccee55b118fe95;hpb=64f85a65b023522d3f34e9932e6a843e0ad8fc3b;p=mono.git diff --git a/mono/metadata/culture-info.h b/mono/metadata/culture-info.h index 09720b71edf..69e9005e1e2 100644 --- a/mono/metadata/culture-info.h +++ b/mono/metadata/culture-info.h @@ -1,43 +1,46 @@ +/** + * \file + */ #ifndef _MONO_METADATA_CULTURE_INFO_H_ #define _MONO_METADATA_CULTURE_INFO_H_ 1 #include +#include #define NUM_DAYS 7 #define NUM_MONTHS 13 -#define GROUP_SIZE 5 -#define NUM_OPT_CALS 5 +#define GROUP_SIZE 2 +#define NUM_CALENDARS 4 #define NUM_SHORT_DATE_PATTERNS 14 -#define NUM_LONG_DATE_PATTERNS 8 -#define NUM_SHORT_TIME_PATTERNS 11 -#define NUM_LONG_TIME_PATTERNS 10 +#define NUM_LONG_DATE_PATTERNS 10 +#define NUM_SHORT_TIME_PATTERNS 12 +#define NUM_LONG_TIME_PATTERNS 9 +#define NUM_YEAR_MONTH_PATTERNS 8 #define idx2string(idx) (locale_strings + (idx)) +#define pattern2string(idx) (patterns + (idx)) +#define dtidx2string(idx) (datetime_strings + (idx)) /* need to change this if the string data ends up to not fit in a 64KB array. */ typedef guint16 stridx_t; typedef struct { - const stridx_t full_date_time_pattern; - const stridx_t long_date_pattern; - const stridx_t short_date_pattern; - const stridx_t long_time_pattern; - const stridx_t short_time_pattern; - const stridx_t year_month_pattern; const stridx_t month_day_pattern; - const stridx_t am_designator; const stridx_t pm_designator; const stridx_t day_names [NUM_DAYS]; const stridx_t abbreviated_day_names [NUM_DAYS]; + const stridx_t shortest_day_names [NUM_DAYS]; const stridx_t month_names [NUM_MONTHS]; + const stridx_t month_genitive_names [NUM_MONTHS]; const stridx_t abbreviated_month_names [NUM_MONTHS]; + const stridx_t abbreviated_month_genitive_names [NUM_MONTHS]; - gint8 calendar_week_rule; - gint8 first_day_of_week; + const gint8 calendar_week_rule; + const gint8 first_day_of_week; const stridx_t date_separator; const stridx_t time_separator; @@ -46,13 +49,12 @@ typedef struct { const stridx_t long_date_patterns [NUM_LONG_DATE_PATTERNS]; const stridx_t short_time_patterns [NUM_SHORT_TIME_PATTERNS]; const stridx_t long_time_patterns [NUM_LONG_TIME_PATTERNS]; + const stridx_t year_month_patterns [NUM_YEAR_MONTH_PATTERNS]; } DateTimeFormatEntry; typedef struct { const stridx_t currency_decimal_separator; const stridx_t currency_group_separator; - const stridx_t percent_decimal_separator; - const stridx_t percent_group_separator; const stridx_t number_decimal_separator; const stridx_t number_group_separator; @@ -66,18 +68,16 @@ typedef struct { const stridx_t negative_sign; const stridx_t positive_sign; - gint8 currency_negative_pattern; - gint8 currency_positive_pattern; - gint8 percent_negative_pattern; - gint8 percent_positive_pattern; - gint8 number_negative_pattern; + const gint8 currency_negative_pattern; + const gint8 currency_positive_pattern; + const gint8 percent_negative_pattern; + const gint8 percent_positive_pattern; + const gint8 number_negative_pattern; - gint8 currency_decimal_digits; - gint8 percent_decimal_digits; - gint8 number_decimal_digits; + const gint8 currency_decimal_digits; + const gint8 number_decimal_digits; const gint currency_group_sizes [GROUP_SIZE]; - const gint percent_group_sizes [GROUP_SIZE]; const gint number_group_sizes [GROUP_SIZE]; } NumberFormatEntry; @@ -86,52 +86,51 @@ typedef struct { const gint ebcdic; const gint mac; const gint oem; + const MonoBoolean is_right_to_left; const char list_sep; } TextInfoEntry; typedef struct { - gint16 lcid; - gint16 parent_lcid; - gint16 specific_lcid; - gint16 region_entry_index; + const gint16 lcid; + const gint16 parent_lcid; + const gint16 calendar_type; + const gint16 region_entry_index; const stridx_t name; - const stridx_t icu_name; const stridx_t englishname; - const stridx_t displayname; const stridx_t nativename; const stridx_t win3lang; const stridx_t iso3lang; const stridx_t iso2lang; + const stridx_t territory; + const stridx_t native_calendar_names [NUM_CALENDARS]; - gint calendar_data [NUM_OPT_CALS]; - - gint16 datetime_format_index; - gint16 number_format_index; + const gint16 datetime_format_index; + const gint16 number_format_index; - TextInfoEntry text_info; + const TextInfoEntry text_info; } CultureInfoEntry; typedef struct { const stridx_t name; - gint16 culture_entry_index; + const gint16 culture_entry_index; } CultureInfoNameEntry; typedef struct { - gint16 region_id; - /* gint8 measurement_system; // 0:metric 1:US 2:UK */ - /* gint16 geo_id; */ + const gint16 geo_id; const stridx_t iso2name; const stridx_t iso3name; const stridx_t win3name; const stridx_t english_name; + const stridx_t native_name; const stridx_t currency_symbol; const stridx_t iso_currency_symbol; const stridx_t currency_english_name; + const stridx_t currency_native_name; } RegionInfoEntry; typedef struct { const stridx_t name; - gint16 region_entry_index; + const gint16 region_entry_index; } RegionInfoNameEntry; #endif