glibc/locale/programs/locfile-token.h

261 lines
4.8 KiB
C

/* Copyright (C) 1996-2024 Free Software Foundation, Inc.
This file is part of the GNU C Library.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published
by the Free Software Foundation; version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, see <https://www.gnu.org/licenses/>. */
#ifndef _TOKEN_H
#define _TOKEN_H
enum token_t
{
tok_none = 0,
tok_eof,
tok_eol,
tok_bsymbol,
tok_ident,
tok_ellipsis2,
tok_ellipsis3,
tok_ellipsis4,
tok_ellipsis2_2,
tok_ellipsis4_2,
tok_semicolon,
tok_comma,
tok_open_brace,
tok_close_brace,
tok_charcode,
tok_ucs4,
tok_number,
tok_minus1,
tok_string,
tok_include,
tok_escape_char,
tok_comment_char,
tok_charmap,
tok_end,
tok_g0esc,
tok_g1esc,
tok_g2esc,
tok_g3esc,
tok_escseq,
tok_addset,
tok_charids,
tok_code_set_name,
tok_mb_cur_max,
tok_mb_cur_min,
tok_charconv,
tok_width,
tok_width_variable,
tok_width_default,
tok_repertoiremap,
tok_lc_ctype,
tok_copy,
/* Keep the following entries up to the next comment in this order! */
tok_upper,
tok_lower,
tok_alpha,
tok_digit,
tok_xdigit,
tok_space,
tok_print,
tok_graph,
tok_blank,
tok_cntrl,
tok_punct,
tok_alnum,
/* OK, shuffling allowed again. */
tok_outdigit,
tok_charclass,
tok_class,
tok_toupper,
tok_tolower,
tok_map,
tok_translit_start,
tok_translit_end,
tok_translit_ignore,
tok_default_missing,
tok_lc_collate,
tok_codepoint_collation,
tok_coll_weight_max,
tok_section_symbol,
tok_collating_element,
tok_collating_symbol,
tok_symbol_equivalence,
tok_script,
tok_order_start,
tok_order_end,
tok_from,
tok_forward,
tok_backward,
tok_position,
tok_undefined,
tok_ignore,
tok_reorder_after,
tok_reorder_end,
tok_reorder_sections_after,
tok_reorder_sections_end,
tok_define,
tok_undef,
tok_ifdef,
tok_ifndef,
tok_else,
tok_elifdef,
tok_elifndef,
tok_endif,
tok_lc_monetary,
tok_int_curr_symbol,
tok_currency_symbol,
tok_mon_decimal_point,
tok_mon_thousands_sep,
tok_mon_grouping,
tok_positive_sign,
tok_negative_sign,
tok_int_frac_digits,
tok_frac_digits,
tok_p_cs_precedes,
tok_p_sep_by_space,
tok_n_cs_precedes,
tok_n_sep_by_space,
tok_p_sign_posn,
tok_n_sign_posn,
tok_int_p_cs_precedes,
tok_int_p_sep_by_space,
tok_int_n_cs_precedes,
tok_int_n_sep_by_space,
tok_int_p_sign_posn,
tok_int_n_sign_posn,
tok_duo_int_curr_symbol,
tok_duo_currency_symbol,
tok_duo_int_frac_digits,
tok_duo_frac_digits,
tok_duo_p_cs_precedes,
tok_duo_p_sep_by_space,
tok_duo_n_cs_precedes,
tok_duo_n_sep_by_space,
tok_duo_int_p_cs_precedes,
tok_duo_int_p_sep_by_space,
tok_duo_int_n_cs_precedes,
tok_duo_int_n_sep_by_space,
tok_duo_p_sign_posn,
tok_duo_n_sign_posn,
tok_duo_int_p_sign_posn,
tok_duo_int_n_sign_posn,
tok_uno_valid_from,
tok_uno_valid_to,
tok_duo_valid_from,
tok_duo_valid_to,
tok_conversion_rate,
tok_lc_numeric,
tok_decimal_point,
tok_thousands_sep,
tok_grouping,
tok_lc_time,
tok_abday,
tok_day,
tok_abmon,
tok_mon,
tok_d_t_fmt,
tok_d_fmt,
tok_t_fmt,
tok_am_pm,
tok_t_fmt_ampm,
tok_era,
tok_era_year,
tok_era_d_fmt,
tok_era_d_t_fmt,
tok_era_t_fmt,
tok_alt_digits,
tok_week,
tok_first_weekday,
tok_first_workday,
tok_cal_direction,
tok_timezone,
tok_date_fmt,
tok_alt_mon,
tok_ab_alt_mon,
tok_lc_messages,
tok_yesexpr,
tok_noexpr,
tok_yesstr,
tok_nostr,
tok_lc_paper,
tok_height,
tok_lc_name,
tok_name_fmt,
tok_name_gen,
tok_name_mr,
tok_name_mrs,
tok_name_miss,
tok_name_ms,
tok_lc_address,
tok_postal_fmt,
tok_country_name,
tok_country_post,
tok_country_ab2,
tok_country_ab3,
tok_country_num,
tok_country_car,
tok_country_isbn,
tok_lang_name,
tok_lang_ab,
tok_lang_term,
tok_lang_lib,
tok_lc_telephone,
tok_tel_int_fmt,
tok_tel_dom_fmt,
tok_int_select,
tok_int_prefix,
tok_lc_measurement,
tok_measurement,
tok_lc_identification,
tok_title,
tok_source,
tok_address,
tok_contact,
tok_email,
tok_tel,
tok_fax,
tok_language,
tok_territory,
tok_audience,
tok_application,
tok_abbreviation,
tok_revision,
tok_date,
tok_category,
tok_error
};
struct keyword_t
{
const char *name;
enum token_t token;
int symname_or_ident;
/* Only for locdef file. */
int locale;
enum token_t base;
enum token_t group;
enum token_t list;
};
#endif /* token.h */