xref: /netbsd-src/include/langinfo.h (revision cddc78ea67e20759c213d3f50ea3bd06ade17338)
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