1 /*        $NetBSD: langinfo.h,v 1.11 2024/10/30 15:56:10 riastradh Exp $        */
2 
3 /*
4  * Written by J.T. Conklin <jtc@NetBSD.org>
5  * Public domain.
6  */
7 
8 #ifndef _LANGINFO_H_
9 #define _LANGINFO_H_
10 
11 #include <sys/cdefs.h>
12 #include <sys/featuretest.h>
13 #include <nl_types.h>
14 
15 #define D_T_FMT               ((nl_item)0)        /* String for formatting date and
16                                                      time */
17 #define D_FMT                 ((nl_item)1)        /* Date format string */
18 #define   T_FMT               ((nl_item)2)        /* Time format string */
19 #define T_FMT_AMPM  ((nl_item)3)        /* Time format string with 12 hour
20                                                      clock */
21 #define AM_STR                ((nl_item)4)        /* Ante Meridiem afix */
22 #define PM_STR                ((nl_item)5)        /* Post Meridiem afix */
23 
24 #define DAY_1                 ((nl_item)6)        /* Name of the first day of the week */
25 #define DAY_2                 ((nl_item)7)
26 #define DAY_3                 ((nl_item)8)
27 #define DAY_4                 ((nl_item)9)
28 #define DAY_5                 ((nl_item)10)
29 #define DAY_6                 ((nl_item)11)
30 #define DAY_7                 ((nl_item)12)
31 
32 #define ABDAY_1               ((nl_item)13)       /* Abbrev. name of the first day of
33                                                      the week */
34 #define ABDAY_2               ((nl_item)14)
35 #define ABDAY_3               ((nl_item)15)
36 #define ABDAY_4               ((nl_item)16)
37 #define ABDAY_5               ((nl_item)17)
38 #define ABDAY_6               ((nl_item)18)
39 #define ABDAY_7               ((nl_item)19)
40 
41 #define MON_1                 ((nl_item)20)       /* Name of the first month */
42 #define MON_2                 ((nl_item)21)
43 #define MON_3                 ((nl_item)22)
44 #define MON_4                 ((nl_item)23)
45 #define MON_5                 ((nl_item)24)
46 #define MON_6                 ((nl_item)25)
47 #define MON_7                 ((nl_item)26)
48 #define MON_8                 ((nl_item)27)
49 #define MON_9                 ((nl_item)28)
50 #define MON_10                ((nl_item)29)
51 #define MON_11                ((nl_item)30)
52 #define MON_12                ((nl_item)31)
53 
54 #define ABMON_1               ((nl_item)32)       /* Abbrev. name of the first month */
55 #define ABMON_2               ((nl_item)33)
56 #define ABMON_3               ((nl_item)34)
57 #define ABMON_4               ((nl_item)35)
58 #define ABMON_5               ((nl_item)36)
59 #define ABMON_6               ((nl_item)37)
60 #define ABMON_7               ((nl_item)38)
61 #define ABMON_8               ((nl_item)39)
62 #define ABMON_9               ((nl_item)40)
63 #define ABMON_10    ((nl_item)41)
64 #define ABMON_11    ((nl_item)42)
65 #define ABMON_12    ((nl_item)43)
66 
67 #define RADIXCHAR   ((nl_item)44)       /* Radix character */
68 #define THOUSEP               ((nl_item)45)       /* Separator for thousands */
69 #define YESSTR                ((nl_item)46)       /* Affirmitive response for yes/no
70                                                      queries */
71 #define YESEXPR               ((nl_item)47)       /* Affirmitive response for yes/no
72                                                      queries */
73 #define NOSTR                 ((nl_item)48)       /* Negative response for yes/no
74                                                      queries */
75 #define NOEXPR                ((nl_item)49)       /* Negative response for yes/no
76                                                      queries */
77 #define CRNCYSTR    ((nl_item)50)       /* Currency symbol */
78 
79 #define CODESET               ((nl_item)51)       /* codeset name */
80 
81 #define ERA                   ((nl_item)52)       /* Era description segments */
82 #define ERA_D_FMT   ((nl_item)53)       /* Era date format string */
83 #define ERA_D_T_FMT ((nl_item)54)       /* Era date and time format string */
84 #define ERA_T_FMT   ((nl_item)55)       /* Era time format string */
85 
86 #define ALT_DIGITS  ((nl_item)56)       /* Alternative symbols for digits */
87 
88 __BEGIN_DECLS
89 char *nl_langinfo(nl_item);
90 __END_DECLS
91 
92 #if defined(_NETBSD_SOURCE)
93 #  ifndef __LOCALE_T_DECLARED
94 typedef struct _locale                  *locale_t;
95 #  define __LOCALE_T_DECLARED
96 #  endif
97 __BEGIN_DECLS
98 char *nl_langinfo_l(nl_item, locale_t);
99 __END_DECLS
100 #endif
101 
102 #endif    /* _LANGINFO_H_ */
103