Path: blob/aarch64-shenandoah-jdk8u272-b10/jdk/src/share/native/common/langinfo.h
38825 views
/*1* Copyright (C) 2016 The Android Open Source Project2* All rights reserved.3*4* Redistribution and use in source and binary forms, with or without5* modification, are permitted provided that the following conditions6* are met:7* * Redistributions of source code must retain the above copyright8* notice, this list of conditions and the following disclaimer.9* * Redistributions in binary form must reproduce the above copyright10* notice, this list of conditions and the following disclaimer in11* the documentation and/or other materials provided with the12* distribution.13*14* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS15* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT16* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS17* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE18* COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,19* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,20* BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS21* OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED22* AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,23* OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT24* OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF25* SUCH DAMAGE.26*/27#ifndef _LANGINFO_H_28#define _LANGINFO_H_2930#include <stdlib.h>31#include <sys/cdefs.h>32#include "nl_types.h"33#include "xlocale.h"3435__BEGIN_DECLS3637#define CODESET 138#define D_T_FMT 239#define D_FMT 340#define T_FMT 441#define T_FMT_AMPM 542#define AM_STR 643#define PM_STR 744#define DAY_1 845#define DAY_2 946#define DAY_3 1047#define DAY_4 1148#define DAY_5 1249#define DAY_6 1350#define DAY_7 1451#define ABDAY_1 1552#define ABDAY_2 1653#define ABDAY_3 1754#define ABDAY_4 1855#define ABDAY_5 1956#define ABDAY_6 2057#define ABDAY_7 2158#define MON_1 2259#define MON_2 2360#define MON_3 2461#define MON_4 2562#define MON_5 2663#define MON_6 2764#define MON_7 2865#define MON_8 2966#define MON_9 3067#define MON_10 3168#define MON_11 3269#define MON_12 3370#define ABMON_1 3471#define ABMON_2 3572#define ABMON_3 3673#define ABMON_4 3774#define ABMON_5 3875#define ABMON_6 3976#define ABMON_7 4077#define ABMON_8 4178#define ABMON_9 4279#define ABMON_10 4380#define ABMON_11 4481#define ABMON_12 4582#define ERA 4683#define ERA_D_FMT 4784#define ERA_D_T_FMT 4885#define ERA_T_FMT 4986#define ALT_DIGITS 5087#define RADIXCHAR 5188#define THOUSEP 5289#define YESEXPR 5390#define NOEXPR 5491#define CRNCYSTR 559293static inline char* nl_langinfo(nl_item item) {94const char* result = "";95switch (item) {96case CODESET: result = (MB_CUR_MAX == 1) ? "ASCII" : "UTF-8"; break;97case D_T_FMT: result = "%F %T %z"; break;98case D_FMT: result = "%F"; break;99case T_FMT: result = "%T"; break;100case T_FMT_AMPM: result = "%I:%M:%S %p"; break;101case AM_STR: result = "AM"; break;102case PM_STR: result = "PM"; break;103case DAY_1: result = "Sunday"; break;104case DAY_2: result = "Monday"; break;105case DAY_3: result = "Tuesday"; break;106case DAY_4: result = "Wednesday"; break;107case DAY_5: result = "Thursday"; break;108case DAY_6: result = "Friday"; break;109case DAY_7: result = "Saturday"; break;110case ABDAY_1: result = "Sun"; break;111case ABDAY_2: result = "Mon"; break;112case ABDAY_3: result = "Tue"; break;113case ABDAY_4: result = "Wed"; break;114case ABDAY_5: result = "Thu"; break;115case ABDAY_6: result = "Fri"; break;116case ABDAY_7: result = "Sat"; break;117case MON_1: result = "January"; break;118case MON_2: result = "February"; break;119case MON_3: result = "March"; break;120case MON_4: result = "April"; break;121case MON_5: result = "May"; break;122case MON_6: result = "June"; break;123case MON_7: result = "July"; break;124case MON_8: result = "August"; break;125case MON_9: result = "September"; break;126case MON_10: result = "October"; break;127case MON_11: result = "November"; break;128case MON_12: result = "December"; break;129case ABMON_1: result = "Jan"; break;130case ABMON_2: result = "Feb"; break;131case ABMON_3: result = "Mar"; break;132case ABMON_4: result = "Apr"; break;133case ABMON_5: result = "May"; break;134case ABMON_6: result = "Jun"; break;135case ABMON_7: result = "Jul"; break;136case ABMON_8: result = "Aug"; break;137case ABMON_9: result = "Sep"; break;138case ABMON_10: result = "Oct"; break;139case ABMON_11: result = "Nov"; break;140case ABMON_12: result = "Dec"; break;141case ERA: result = ""; break;142case ERA_D_FMT: result = ""; break;143case ERA_D_T_FMT: result = ""; break;144case ERA_T_FMT: result = ""; break;145case ALT_DIGITS: result = ""; break;146case RADIXCHAR: result = "."; break;147case THOUSEP: result = ""; break;148case YESEXPR: result = "^[yY]"; break;149case NOEXPR: result = "^[nN]"; break;150case CRNCYSTR: result = ""; break;151default: break;152}153return result;154}155156// char* nl_langinfo(nl_item); // __INTRODUCED_IN_FUTURE;157// char* nl_langinfo_l(nl_item, locale_t) __INTRODUCED_IN_FUTURE;158159__END_DECLS160161#endif162163164