blob: c3ae04da314b241590723e33bbd790acd999e620 [file] [log] [blame]
/*
* Copyright (C) 2013 The Android Open Source Project
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
* * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in
* the documentation and/or other materials provided with the
* distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
* COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
* OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
* AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
* OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
* OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*/
#ifndef NDK_ANDROID_SUPPORT_LANGINFO_H
#define NDK_ANDROID_SUPPORT_LANGINFO_H
// __LP64__
#include <nl_types.h>
#define _NL_ITEM(category,index) (((category) << 10) | (index))
#define _NL_ITEM_CATEGORY(nl) ((nl) >> 10)
#define _NL_ITEM_INDEX(nl) ((nl) & 0x3ff)
#define CODESET _NL_ITEM(LC_CTYPE, 0)
/* Abbreviated days of the week */
#define ABDAY_1 _NL_ITEM(LC_TIME,1)
#define ABDAY_2 _NL_ITEM(LC_TIME,2)
#define ABDAY_3 _NL_ITEM(LC_TIME,3)
#define ABDAY_4 _NL_ITEM(LC_TIME,4)
#define ABDAY_5 _NL_ITEM(LC_TIME,5)
#define ABDAY_6 _NL_ITEM(LC_TIME,6)
#define ABDAY_7 _NL_ITEM(LC_TIME,7)
/* Long names of the week */
#define DAY_1 _NL_ITEM(LC_TIME,11)
#define DAY_2 _NL_ITEM(LC_TIME,12)
#define DAY_3 _NL_ITEM(LC_TIME,13)
#define DAY_4 _NL_ITEM(LC_TIME,14)
#define DAY_5 _NL_ITEM(LC_TIME,15)
#define DAY_6 _NL_ITEM(LC_TIME,16)
#define DAY_7 _NL_ITEM(LC_TIME,17)
/* Abbreviated month names */
#define ABMON_1 _NL_ITEM(LC_TIME,21)
#define ABMON_2 _NL_ITEM(LC_TIME,22)
#define ABMON_3 _NL_ITEM(LC_TIME,23)
#define ABMON_4 _NL_ITEM(LC_TIME,24)
#define ABMON_5 _NL_ITEM(LC_TIME,25)
#define ABMON_6 _NL_ITEM(LC_TIME,26)
#define ABMON_7 _NL_ITEM(LC_TIME,27)
#define ABMON_8 _NL_ITEM(LC_TIME,28)
#define ABMON_9 _NL_ITEM(LC_TIME,29)
#define ABMON_10 _NL_ITEM(LC_TIME,30)
#define ABMON_11 _NL_ITEM(LC_TIME,31)
#define ABMON_12 _NL_ITEM(LC_TIME,32)
/* Long month names */
#define MON_1 _NL_ITEM(LC_TIME,41)
#define MON_2 _NL_ITEM(LC_TIME,42)
#define MON_3 _NL_ITEM(LC_TIME,43)
#define MON_4 _NL_ITEM(LC_TIME,44)
#define MON_5 _NL_ITEM(LC_TIME,45)
#define MON_6 _NL_ITEM(LC_TIME,46)
#define MON_7 _NL_ITEM(LC_TIME,47)
#define MON_8 _NL_ITEM(LC_TIME,48)
#define MON_9 _NL_ITEM(LC_TIME,49)
#define MON_10 _NL_ITEM(LC_TIME,50)
#define MON_11 _NL_ITEM(LC_TIME,51)
#define MON_12 _NL_ITEM(LC_TIME,52)
#define AM_STR _NL_ITEM(LC_TIME,53)
#define PM_STR _NL_ITEM(LC_TIME,54)
#define D_T_FMT _NL_ITEM(LC_TIME,55)
#define D_FMT _NL_ITEM(LC_TIME,56)
#define T_FMT _NL_ITEM(LC_TIME,57)
#define T_FMT_AMPM _NL_ITEM(LC_TIME,58)
#define ERA _NL_ITEM(LC_TIME,59)
#define ERA_D_FMT _NL_ITEM(LC_TIME,60)
#define ERA_D_T_FMT _NL_ITEM(LC_TIME,61)
#define ERA_T_FMT _NL_ITEM(LC_TIME,62)
#define ALT_DIGITS _NL_ITEM(LC_TIME,70)
#define INT_CURRENCY_SYMBOL _NL_ITEM(LC_MONETARY,0)
#define CURRENCY_SYMBOL _NL_ITEM(LC_MONETARY,1)
#define MON_DECIMAL_POINT _NL_ITEM(LC_MONETARY,2)
#define MON_THOUSANDS_SEP _NL_ITEM(LC_MONETARY,3)
#define MON_GROUPING _NL_ITEM(LC_MONETARY,4)
#define POSITIVE_SIGN _NL_ITEM(LC_MONETARY,5)
#define NEGATIVE_SIGN _NL_ITEM(LC_MONETARY,6)
#define INT_FRAC_DIGITS _NL_ITEM(LC_MONETARY,7)
#define FRAC_DIGITS _NL_ITEM(LC_MONETARY,8)
#ifdef __cplusplus
extern "C" {
#endif
#if !defined(__LP64__)
char *nl_langinfo(nl_item);
char *nl_langinfo_l(nl_item, locale_t);
#endif // !__LP64__
#ifdef __cplusplus
} // extern "C"
#endif
#endif /* NDK_ANDROID_SUPPORT_LANGINFO_H */