ReactOS  0.4.13-dev-249-gcba1a2f
time_facets.cpp File Reference
#include "stlport_prefix.h"
#include <cstdio>
#include <locale>
#include <istream>
#include "c_locale.h"
#include "acquire_release.h"
Include dependency graph for time_facets.cpp:

Go to the source code of this file.

Macros

#define __hour12(hour)   (((hour) % 12 == 0) ? (12) : (hour) % 12)
 
#define _STLP_SPRINTF   sprintf
 

Functions

static void _Init_timeinfo_base (_Time_Info_Base &table)
 
static void _Init_timeinfo (_Time_Info &table)
 
static void _Init_timeinfo (_WTime_Info &table)
 
static void _Init_timeinfo_base (_Time_Info_Base &table, _Locale_time *time)
 
static void _Init_timeinfo (_Time_Info &table, _Locale_time *time)
 
static void _Init_timeinfo (_WTime_Info &table, _Locale_time *time)
 
template<class _Ch , class _TimeInfo >
void __subformat (_STLP_BASIC_IOSTRING(_Ch) &buf, const ctype< _Ch > &ct, const string &format, const _TimeInfo &table, const tm *t)
 
static void __append (__iostring &buf, const string &name)
 
static void __append (__iowstring &buf, const wstring &name)
 
static void __append (__iostring &buf, char *first, char *last, const ctype< char > &)
 
static void __append (__iowstring &buf, char *first, char *last, const ctype< wchar_t > &ct)
 
template<class _Ch , class _TimeInfo >
void _STLP_CALL __write_formatted_timeT (_STLP_BASIC_IOSTRING(_Ch) &buf, const ctype< _Ch > &ct, char format, char modifier, const _TimeInfo &table, const tm *t)
 
void _STLP_CALL __write_formatted_time (__iostring &buf, const ctype< char > &ct, char format, char modifier, const _Time_Info &table, const tm *t)
 
void _STLP_CALL __write_formatted_time (__iowstring &buf, const ctype< wchar_t > &ct, char format, char modifier, const _WTime_Info &table, const tm *t)
 
static time_base::dateorder __get_date_order (_Locale_time *time)
 

Variables

_STLP_BEGIN_NAMESPACE _STLP_MOVE_TO_PRIV_NAMESPACE const char default_dayname [][14]
 
const char default_monthname [][24]
 
const wchar_t default_wdayname [][14]
 
const wchar_t default_wmonthname [][24]
 
_STLP_MOVE_TO_STD_NAMESPACE template class time_get< char, istreambuf_iterator< char, char_traits< char > > >
 

Macro Definition Documentation

◆ __hour12

#define __hour12 (   hour)    (((hour) % 12 == 0) ? (12) : (hour) % 12)

Definition at line 203 of file time_facets.cpp.

◆ _STLP_SPRINTF

#define _STLP_SPRINTF   sprintf

Definition at line 207 of file time_facets.cpp.

Function Documentation

◆ __append() [1/4]

static void __append ( __iostring buf,
const string name 
)
static

Definition at line 165 of file time_facets.cpp.

166 { buf.append(name.data(), name.data() + name.size()); }
GLenum GLuint GLenum GLsizei const GLchar * buf
Definition: glext.h:7751
Definition: name.c:36

Referenced by __write_formatted_timeT().

◆ __append() [2/4]

static void __append ( __iowstring buf,
const wstring &  name 
)
static

Definition at line 168 of file time_facets.cpp.

169 { buf.append(name.data(), name.data() + name.size()); }
GLenum GLuint GLenum GLsizei const GLchar * buf
Definition: glext.h:7751
Definition: name.c:36

◆ __append() [3/4]

static void __append ( __iostring buf,
char first,
char last,
const ctype< char > &   
)
static

Definition at line 171 of file time_facets.cpp.

172 { buf.append(first, last); }
GLenum GLuint GLenum GLsizei const GLchar * buf
Definition: glext.h:7751
POINT last
Definition: font.c:46
const GLint * first
Definition: glext.h:5794

◆ __append() [4/4]

static void __append ( __iowstring buf,
char first,
char last,
const ctype< wchar_t > &  ct 
)
static

Definition at line 174 of file time_facets.cpp.

174  {
175  wchar_t _wbuf[64];
176  ct.widen(first, last, _wbuf);
177  buf.append(_wbuf, _wbuf + (last - first));
178 }
GLenum GLuint GLenum GLsizei const GLchar * buf
Definition: glext.h:7751
POINT last
Definition: font.c:46
const GLint * first
Definition: glext.h:5794
wchar_t widen(char __c) const
Definition: _ctype.h:206

◆ __get_date_order()

static time_base::dateorder __get_date_order ( _Locale_time time)
static

Definition at line 464 of file time_facets.cpp.

464  {
465  const char * fmt = _Locale_d_fmt(time);
466  char first, second, third;
467 
468  while (*fmt != 0 && *fmt != '%') ++fmt;
469  if (*fmt == 0)
470  return time_base::no_order;
471  first = *++fmt;
472  while (*fmt != 0 && *fmt != '%') ++fmt;
473  if (*fmt == 0)
474  return time_base::no_order;
475  second = *++fmt;
476  while (*fmt != 0 && *fmt != '%') ++fmt;
477  if (*fmt == 0)
478  return time_base::no_order;
479  third = *++fmt;
480 
481  switch (first) {
482  case 'd':
483  return (second == 'm' && third == 'y') ? time_base::dmy
485  case 'm':
486  return (second == 'd' && third == 'y') ? time_base::mdy
488  case 'y':
489  switch (second) {
490  case 'd':
491  return third == 'm' ? time_base::ydm : time_base::no_order;
492  case 'm':
493  return third == 'd' ? time_base::ymd : time_base::no_order;
494  default:
495  return time_base::no_order;
496  }
497  default:
498  return time_base::no_order;
499  }
500 }
const GLint * first
Definition: glext.h:5794
const char * fmt
Definition: wsprintf.c:30
__u16 time
Definition: mkdosfs.c:366
const char * _Locale_d_fmt(struct _Locale_time *)
Definition: dsound.c:943

Referenced by time_init< char >::time_init(), and time_init< wchar_t >::time_init().

◆ __subformat()

template<class _Ch , class _TimeInfo >
void __subformat ( _STLP_BASIC_IOSTRING(_Ch) &  buf,
const ctype< _Ch > &  ct,
const string format,
const _TimeInfo &  table,
const tm t 
)

Definition at line 148 of file time_facets.cpp.

149  {
150  const char * cp = format.data();
151  const char * cp_end = cp + format.size();
152  while (cp != cp_end) {
153  if (*cp == '%') {
154  char mod = 0;
155  ++cp;
156  if (*cp == '#') {
157  mod = *cp; ++cp;
158  }
159  __write_formatted_timeT(buf, ct, *cp++, mod, table, t);
160  } else
161  buf.append(1, *cp++);
162  }
163 }
GLenum GLuint GLenum GLsizei const GLchar * buf
Definition: glext.h:7751
GLdouble GLdouble t
Definition: gl.h:2047
GLint GLint GLsizei GLsizei GLsizei GLint GLenum format
Definition: gl.h:1546
POINT cp
Definition: magnifier.c:61
void _STLP_CALL __write_formatted_timeT(_STLP_BASIC_IOSTRING(_Ch) &buf, const ctype< _Ch > &ct, char format, char modifier, const _TimeInfo &table, const tm *t)
static int mod
Definition: i386-dis.c:1273

Referenced by __write_formatted_timeT().

◆ __write_formatted_time() [1/2]

void _STLP_CALL __write_formatted_time ( __iostring buf,
const ctype< char > &  ct,
char  format,
char  modifier,
const _Time_Info table,
const tm t 
)

Definition at line 454 of file time_facets.cpp.

457 { __write_formatted_timeT(buf, ct, format, modifier, table, t); }
GLenum GLuint GLenum GLsizei const GLchar * buf
Definition: glext.h:7751
GLdouble GLdouble t
Definition: gl.h:2047
GLint GLint GLsizei GLsizei GLsizei GLint GLenum format
Definition: gl.h:1546
void _STLP_CALL __write_formatted_timeT(_STLP_BASIC_IOSTRING(_Ch) &buf, const ctype< _Ch > &ct, char format, char modifier, const _TimeInfo &table, const tm *t)

Referenced by time_put< _Ch, _OutIt >::do_put().

◆ __write_formatted_time() [2/2]

void _STLP_CALL __write_formatted_time ( __iowstring buf,
const ctype< wchar_t > &  ct,
char  format,
char  modifier,
const _WTime_Info table,
const tm t 
)

Definition at line 459 of file time_facets.cpp.

462 { __write_formatted_timeT(buf, ct, format, modifier, table, t); }
GLenum GLuint GLenum GLsizei const GLchar * buf
Definition: glext.h:7751
GLdouble GLdouble t
Definition: gl.h:2047
GLint GLint GLsizei GLsizei GLsizei GLint GLenum format
Definition: gl.h:1546
void _STLP_CALL __write_formatted_timeT(_STLP_BASIC_IOSTRING(_Ch) &buf, const ctype< _Ch > &ct, char format, char modifier, const _TimeInfo &table, const tm *t)

◆ __write_formatted_timeT()

template<class _Ch , class _TimeInfo >
void _STLP_CALL __write_formatted_timeT ( _STLP_BASIC_IOSTRING(_Ch) &  buf,
const ctype< _Ch > &  ct,
char  format,
char  modifier,
const _TimeInfo &  table,
const tm t 
)

Definition at line 213 of file time_facets.cpp.

216  {
217  char _buf[64];
218  char *_bend;
219 
220  switch (format) {
221  case 'a':
222  __append(buf, table._M_dayname[t->tm_wday]);
223  break;
224 
225  case 'A':
226  __append(buf, table._M_dayname[t->tm_wday + 7]);
227  break;
228 
229  case 'b':
230  __append(buf, table._M_monthname[t->tm_mon]);
231  break;
232 
233  case 'B':
234  __append(buf, table._M_monthname[t->tm_mon + 12]);
235  break;
236 
237  case 'c':
238  __subformat(buf, ct, (modifier != '#') ? table._M_date_time_format
239  : table._M_long_date_time_format, table, t);
240  break;
241 
242  case 'd':
243  _STLP_SPRINTF(_buf, (modifier != '#') ? "%.2ld" : "%ld", (long)t->tm_mday);
244  __append(buf, _buf, ((long)t->tm_mday < 10L && modifier == '#') ? _buf + 1 : _buf + 2, ct);
245  break;
246 
247  case 'e':
248  _STLP_SPRINTF(_buf, "%2ld", (long)t->tm_mday);
249  __append(buf, _buf, _buf + 2, ct);
250  break;
251 
252  case 'H':
253  _STLP_SPRINTF(_buf, (modifier != '#') ? "%.2ld" : "%ld", (long)t->tm_hour);
254  __append(buf, _buf, ((long)t->tm_hour < 10L && modifier == '#') ? _buf + 1 : _buf + 2, ct);
255  break;
256 
257  case 'I':
258  _STLP_SPRINTF(_buf, (modifier != '#') ? "%.2ld" : "%ld", (long)__hour12(t->tm_hour));
259  __append(buf, _buf, ((long)__hour12(t->tm_hour) < 10L && modifier == '#') ? _buf + 1 : _buf + 2, ct);
260  break;
261 
262  case 'j':
263  _bend = __write_integer(_buf, 0, (long)((long)t->tm_yday + 1));
264  __append(buf, _buf, _bend, ct);
265  break;
266 
267  case 'm':
268  _STLP_SPRINTF(_buf, (modifier != '#') ? "%.2ld" : "%ld", (long)t->tm_mon + 1);
269  __append(buf, _buf, ((long)(t->tm_mon + 1) < 10L && modifier == '#') ? _buf + 1 : _buf + 2, ct);
270  break;
271 
272  case 'M':
273  _STLP_SPRINTF(_buf, (modifier != '#') ? "%.2ld" : "%ld", (long)t->tm_min);
274  __append(buf, _buf, ((long)t->tm_min < 10L && modifier == '#') ? _buf + 1 : _buf + 2, ct);
275  break;
276 
277  case 'p':
278  __append(buf, table._M_am_pm[t->tm_hour / 12]);
279  break;
280 
281  case 'S': // pad with zeros
282  _STLP_SPRINTF(_buf, (modifier != '#') ? "%.2ld" : "%ld", (long)t->tm_sec);
283  __append(buf, _buf, ((long)t->tm_sec < 10L && modifier == '#') ? _buf + 1 : _buf + 2, ct);
284  break;
285 
286  case 'U':
287  _bend = __write_integer(_buf, 0, long((t->tm_yday - t->tm_wday + 7) / 7));
288  __append(buf, _buf, _bend, ct);
289  break;
290 
291  case 'w':
292  _bend = __write_integer(_buf, 0, (long)t->tm_wday);
293  __append(buf, _buf, _bend, ct);
294  break;
295 
296  case 'W':
297  _bend = __write_integer(_buf, 0,
298  (long)(t->tm_wday == 0 ? (t->tm_yday + 1) / 7 :
299  (t->tm_yday + 8 - t->tm_wday) / 7));
300  __append(buf, _buf, _bend, ct);
301  break;
302 
303  case'x':
304  __subformat(buf, ct, (modifier != '#') ? table._M_date_format
305  : table._M_long_date_format, table, t);
306  break;
307 
308  case 'X':
309  __subformat(buf, ct, table._M_time_format, table, t);
310  break;
311 
312  case 'y':
313  _bend = __write_integer(_buf, 0, (long)((long)(t->tm_year + 1900) % 100));
314  __append(buf, _buf, _bend, ct);
315  break;
316 
317  case 'Y':
318  _bend = __write_integer(_buf, 0, (long)((long)t->tm_year + 1900));
319  __append(buf, _buf, _bend, ct);
320  break;
321 
322  case '%':
323  buf.append(1, ct.widen('%'));
324  break;
325 
326 #if defined (__GNUC__)
327  // fbp : at least on SUN
328 # if defined (_STLP_UNIX) && !defined (__linux__)
329 # define __USE_BSD 1
330 # endif
331 
332  /*********************************************
333  * JGS, handle various extensions *
334  *********************************************/
335 
336  case 'h': /* POSIX.2 extension */
337  // same as 'b', abbrev month name
338  __append(buf, table._M_monthname[t->tm_mon]);
339  break;
340  case 'C': /* POSIX.2 extension */
341  // same as 'd', the day
342  _STLP_SPRINTF(_buf, "%2ld", (long)t->tm_mday);
343  __append(buf, _buf, _buf + 2, ct);
344  break;
345 
346  case 'D': /* POSIX.2 extension */
347  // same as 'x'
348  __subformat(buf, ct, table._M_date_format, table, t);
349  break;
350 
351  case 'k': /* GNU extension */
352  _STLP_SPRINTF(_buf, "%2ld", (long)t->tm_hour);
353  __append(buf, _buf, _buf + 2, ct);
354  break;
355 
356  case 'l': /* GNU extension */
357  _STLP_SPRINTF(_buf, "%2ld", (long)t->tm_hour % 12);
358  __append(buf, _buf, _buf + 2, ct);
359  break;
360 
361  case 'n': /* POSIX.2 extension */
362  buf.append(1, ct.widen('\n'));
363  break;
364 
365  case 'R': /* GNU extension */
366  __subformat(buf, ct, "%H:%M", table, t);
367  break;
368 
369  case 'r': /* POSIX.2 extension */
370  __subformat(buf, ct, "%I:%M:%S %p", table, t);
371  break;
372 
373  case 'T': /* POSIX.2 extension. */
374  __subformat(buf, ct, "%H:%M:%S", table, t);
375  break;
376 
377  case 't': /* POSIX.2 extension. */
378  buf.append(1, ct.widen('\t'));
379 
380  case 'u': /* POSIX.2 extension. */
381  _bend = __write_integer(_buf, 0, long((t->tm_wday - 1 + 7)) % 7 + 1);
382  __append(buf, _buf, _bend, ct);
383  break;
384 
385  case 's': {
386  time_t __t = mktime(__CONST_CAST(tm*, t));
387  _bend = __write_integer(_buf, 0, (long)__t );
388  __append(buf, _buf, _bend, ct);
389  break;
390  }
391  case 'g': /* GNU extension */
392  case 'G': {
393  int year = t->tm_year + __TM_YEAR_BASE;
394  int days = __iso_week_days (t->tm_yday, t->tm_wday);
395  if (days < 0) {
396  /* This ISO week belongs to the previous year. */
397  year--;
398  days = __iso_week_days (t->tm_yday + (365 + __is_leap (year)), t->tm_wday);
399  }
400  else {
401  int d = __iso_week_days (t->tm_yday - (365 + __is_leap (year)), t->tm_wday);
402  if (0 <= d) {
403  /* This ISO week belongs to the next year. */
404  ++year;
405  days = d;
406  }
407  }
408  long val;
409  switch (format) {
410  case 'g':
411  val = (long)(year % 100 + 100) % 100;
412  break;
413  case 'G':
414  val = (long)year;
415  break;
416  default:
417  val = (long)days / 7 + 1;
418  break;
419  }
420  _bend = __write_integer(_buf, 0, val);
421  __append(buf, _buf, _bend, ct);
422  break;
423  }
424 
425 # if defined (_STLP_USE_GLIBC)
426  case 'z': /* GNU extension. */
427  if (t->tm_isdst < 0)
428  break;
429  {
430  int diff;
431 # if defined (__USE_BSD) || defined (__BEOS__)
432  diff = t->tm_gmtoff;
433 # else
434  diff = t->__tm_gmtoff;
435 # endif
436  if (diff < 0) {
437  buf.append(1, ct.widen('-'));
438  diff = -diff;
439  } else
440  buf.append(1, ct.widen('+'));
441  diff /= 60;
442  _STLP_SPRINTF(_buf, "%.4d", (diff / 60) * 100 + diff % 60);
443  __append(buf, _buf, _buf + 4, ct);
444  break;
445  }
446 # endif /* __GLIBC__ */
447 #endif /* __GNUC__ */
448 
449  default:
450  break;
451  }
452 }
GLenum GLuint GLenum GLsizei const GLchar * buf
Definition: glext.h:7751
char *_STLP_CALL __write_integer(char *buf, ios_base::fmtflags flags, long x)
Definition: num_put.cpp:125
GLdouble GLdouble t
Definition: gl.h:2047
GLint GLint GLsizei GLsizei GLsizei GLint GLenum format
Definition: gl.h:1546
#define _STLP_SPRINTF
static void __append(__iostring &buf, const string &name)
GLuint GLfloat * val
Definition: glext.h:7180
#define __hour12(hour)
#define d
Definition: ke_i.h:81
static const WCHAR L[]
Definition: oid.c:1250
Definition: time.h:76
__kernel_time_t time_t
Definition: linux.h:252
#define __CONST_CAST(__x, __y)
Definition: features.h:584
#define long
Definition: qsort.c:33
_CRTIMP time_t __cdecl mktime(struct tm *_Tm)
Definition: time.h:428
static char * _buf(void)
Definition: clnt_perror.c:55
void __subformat(_STLP_BASIC_IOSTRING(_Ch) &buf, const ctype< _Ch > &ct, const string &format, const _TimeInfo &table, const tm *t)

Referenced by __subformat(), and __write_formatted_time().

◆ _Init_timeinfo() [1/4]

static void _Init_timeinfo ( _Time_Info table)
static

Definition at line 75 of file time_facets.cpp.

75  {
76  int i;
77  for (i = 0; i < 14; ++i)
78  table._M_dayname[i] = default_dayname[i];
79  for (i = 0; i < 24; ++i)
80  table._M_monthname[i] = default_monthname[i];
81  table._M_am_pm[0] = "AM";
82  table._M_am_pm[1] = "PM";
84 }
_STLP_BEGIN_NAMESPACE _STLP_MOVE_TO_PRIV_NAMESPACE const char default_dayname[][14]
Definition: time_facets.cpp:34
const char default_monthname[][24]
Definition: time_facets.cpp:39
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
Definition: glfuncs.h:248
static void _Init_timeinfo_base(_Time_Info_Base &table)
Definition: time_facets.cpp:69
#define for
Definition: utility.h:88

Referenced by time_init< char >::time_init(), and time_init< wchar_t >::time_init().

◆ _Init_timeinfo() [2/4]

static void _Init_timeinfo ( _WTime_Info table)
static

Definition at line 87 of file time_facets.cpp.

87  {
88  int i;
89  for (i = 0; i < 14; ++i)
90  table._M_dayname[i] = default_wdayname[i];
91  for (i = 0; i < 24; ++i)
92  table._M_monthname[i] = default_wmonthname[i];
93  table._M_am_pm[0] = L"AM";
94  table._M_am_pm[1] = L"PM";
96 }
const wchar_t default_wmonthname[][24]
Definition: time_facets.cpp:51
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
Definition: glfuncs.h:248
static void _Init_timeinfo_base(_Time_Info_Base &table)
Definition: time_facets.cpp:69
#define for
Definition: utility.h:88
const wchar_t default_wdayname[][14]
Definition: time_facets.cpp:46
static const WCHAR L[]
Definition: oid.c:1250

◆ _Init_timeinfo() [3/4]

static void _Init_timeinfo ( _Time_Info table,
_Locale_time time 
)
static

Definition at line 114 of file time_facets.cpp.

114  {
115  int i;
116  for (i = 0; i < 7; ++i)
117  table._M_dayname[i] = _Locale_abbrev_dayofweek(time, i);
118  for (i = 0; i < 7; ++i)
119  table._M_dayname[i+7] = _Locale_full_dayofweek(time, i);
120  for (i = 0; i < 12; ++i)
121  table._M_monthname[i] = _Locale_abbrev_monthname(time, i);
122  for (i = 0; i < 12; ++i)
123  table._M_monthname[i+12] = _Locale_full_monthname(time, i);
124  table._M_am_pm[0] = _Locale_am_str(time);
125  table._M_am_pm[1] = _Locale_pm_str(time);
127 }
const char * _Locale_full_dayofweek(struct _Locale_time *, int)
const char * _Locale_abbrev_monthname(struct _Locale_time *, int)
__u16 time
Definition: mkdosfs.c:366
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
Definition: glfuncs.h:248
static void _Init_timeinfo_base(_Time_Info_Base &table)
Definition: time_facets.cpp:69
const char * _Locale_full_monthname(struct _Locale_time *, int)
const char * _Locale_abbrev_dayofweek(struct _Locale_time *, int)
const char * _Locale_pm_str(struct _Locale_time *)
const char * _Locale_am_str(struct _Locale_time *)

◆ _Init_timeinfo() [4/4]

static void _Init_timeinfo ( _WTime_Info table,
_Locale_time time 
)
static

Definition at line 130 of file time_facets.cpp.

130  {
131  wchar_t buf[128];
132  int i;
133  for (i = 0; i < 7; ++i)
135  for (i = 0; i < 7; ++i)
137  for (i = 0; i < 12; ++i)
139  for (i = 0; i < 12; ++i)
144 }
GLenum GLuint GLenum GLsizei const GLchar * buf
Definition: glext.h:7751
const wchar_t * _WLocale_full_monthname(struct _Locale_time *, int, wchar_t *, size_t)
__u16 time
Definition: mkdosfs.c:366
#define _STLP_ARRAY_AND_SIZE(A)
Definition: features.h:1054
const wchar_t * _WLocale_pm_str(struct _Locale_time *, wchar_t *, size_t)
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
Definition: glfuncs.h:248
static void _Init_timeinfo_base(_Time_Info_Base &table)
Definition: time_facets.cpp:69
const wchar_t * _WLocale_abbrev_dayofweek(struct _Locale_time *, int, wchar_t *, size_t)
const wchar_t * _WLocale_full_dayofweek(struct _Locale_time *, int, wchar_t *, size_t)
const wchar_t * _WLocale_am_str(struct _Locale_time *, wchar_t *, size_t)
const wchar_t * _WLocale_abbrev_monthname(struct _Locale_time *, int, wchar_t *, size_t)

◆ _Init_timeinfo_base() [1/2]

static void _Init_timeinfo_base ( _Time_Info_Base table)
static

Definition at line 69 of file time_facets.cpp.

69  {
70  table._M_time_format = "%H:%M:%S";
71  table._M_date_format = "%m/%d/%y";
72  table._M_date_time_format = "%m/%d/%y";
73 }

Referenced by _Init_timeinfo().

◆ _Init_timeinfo_base() [2/2]

static void _Init_timeinfo_base ( _Time_Info_Base table,
_Locale_time time 
)
static

Definition at line 99 of file time_facets.cpp.

99  {
100  table._M_time_format = _Locale_t_fmt(time);
101  if ( table._M_time_format == "%T" ) {
102  table._M_time_format = "%H:%M:%S";
103  } else if ( table._M_time_format == "%r" ) {
104  table._M_time_format = "%I:%M:%S %p";
105  } else if ( table._M_time_format == "%R" ) {
106  table._M_time_format = "%H:%M";
107  }
108  table._M_date_format = _Locale_d_fmt(time);
109  table._M_date_time_format = _Locale_d_t_fmt(time);
110  table._M_long_date_format = _Locale_long_d_fmt(time);
111  table._M_long_date_time_format = _Locale_long_d_t_fmt(time);
112 }
const char * _Locale_d_t_fmt(struct _Locale_time *)
__u16 time
Definition: mkdosfs.c:366
const char * _Locale_long_d_fmt(struct _Locale_time *)
const char * _Locale_t_fmt(struct _Locale_time *)
const char * _Locale_d_fmt(struct _Locale_time *)
const char * _Locale_long_d_t_fmt(struct _Locale_time *)

Variable Documentation

◆ default_dayname

Initial value:
= {
"Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat",
"Sunday", "Monday", "Tuesday", "Wednesday", "Thursday",
"Friday", "Saturday"}

Definition at line 34 of file time_facets.cpp.

Referenced by _Init_timeinfo().

◆ default_monthname

const char default_monthname[][24]
Initial value:
= {
"Jan", "Feb", "Mar", "Apr", "May", "Jun",
"Jul", "Aug", "Sep", "Oct", "Nov", "Dec",
"January", "February", "March", "April", "May", "June",
"July", "August", "September", "October", "November", "December"}

Definition at line 39 of file time_facets.cpp.

Referenced by _Init_timeinfo().

◆ default_wdayname

const wchar_t default_wdayname[][14]
Initial value:
= {
L"Sun", L"Mon", L"Tue", L"Wed", L"Thu", L"Fri", L"Sat",
L"Sunday", L"Monday", L"Tuesday", L"Wednesday", L"Thursday",
L"Friday", L"Saturday"}
static const WCHAR L[]
Definition: oid.c:1250

Definition at line 46 of file time_facets.cpp.

Referenced by _Init_timeinfo().

◆ default_wmonthname

const wchar_t default_wmonthname[][24]
Initial value:
= {
L"Jan", L"Feb", L"Mar", L"Apr", L"May", L"Jun",
L"Jul", L"Aug", L"Sep", L"Oct", L"Nov", L"Dec",
L"January", L"February", L"March", L"April", L"May", L"June",
L"July", L"August", L"September", L"October", L"November", L"December"}
static const WCHAR L[]
Definition: oid.c:1250

Definition at line 51 of file time_facets.cpp.

Referenced by _Init_timeinfo().

◆ time_get< char, istreambuf_iterator< char, char_traits< char > > >