66 return time - time_epoch;
70#define MS_PER_DAY 86400000
71#define MS_PER_HOUR 3600000
72#define MS_PER_MINUTE 60000
101 if(
y%4 != 0)
return 365;
102 if(
y%100 != 0)
return 366;
103 if(
y%400 != 0)
return 365;
110 if(year != (
int)year)
113 return floor(365.0*(year-1970) +
floor((year-1969)/4)
114 -
floor((year-1901)/100) +
floor((year-1601)/400));
195 if(0<=dwy && dwy<31)
return 0;
196 if(dwy < 59+ily)
return 1;
197 if(dwy < 90+ily)
return 2;
198 if(dwy < 120+ily)
return 3;
199 if(dwy < 151+ily)
return 4;
200 if(dwy < 181+ily)
return 5;
201 if(dwy < 212+ily)
return 6;
202 if(dwy < 243+ily)
return 7;
203 if(dwy < 273+ily)
return 8;
204 if(dwy < 304+ily)
return 9;
205 if(dwy < 334+ily)
return 10;
219 if(mft==0)
return dwy+1;
220 if(mft==1)
return dwy-30;
221 if(mft==2)
return dwy-58-ily;
222 if(mft==3)
return dwy-89-ily;
223 if(mft==4)
return dwy-119-ily;
224 if(mft==5)
return dwy-150-ily;
225 if(mft==6)
return dwy-180-ily;
226 if(mft==7)
return dwy-211-ily;
227 if(mft==8)
return dwy-242-ily;
228 if(mft==9)
return dwy-272-ily;
229 if(mft==10)
return dwy-303-ily;
284 DOUBLE standardTime, daylightTime;
292 if(
isnan(standardTime) ||
isnan(daylightTime))
294 else if(standardTime > daylightTime) {
295 if(daylightTime <=
time &&
time < standardTime)
296 return date->daylightBias;
298 return date->standardBias;
301 if(standardTime <=
time &&
time < daylightTime)
302 return date->standardBias;
304 return date->daylightBias;
410 if(8.64e15 <
time ||
time < -8.64e15) {
453 const WCHAR *formatEra =
L"";
478 formatEra =
L" B.C.";
544 int date_len, time_len;
574 ptr[date_len-1] =
' ';
594 if(
isnan(year) || year > 999999 || year < -999999) {
595 FIXME(
"year %lf should throw an exception\n", year);
602 }
else if(year > 9999) {
650 const WCHAR *formatEra =
L"";
678 formatEra =
L" B.C.";
685 L"%s, %d %s %d%s %02d:%02d:%02d UTC", week,
day,
month, year, formatEra,
726 const WCHAR *formatEra =
L"";
753 formatEra =
L" B.C.";
1368 double t,
min, sec, ms;
1415 double t,
min, sec, ms;
1462 double t, hour,
min, sec, ms;
1516 double t, hour,
min, sec, ms;
1706 double t, year,
month, ddate;
1752 double t, year,
month, ddate;
1814 *
r =
jsval_number((1900<=year && year<2000)?year-1900:year);
1847 year = year >= 0.0 ?
floor(year) : -
floor(-year);
1848 if(-1.0 < year && year < 100.0)
1928 if(object_prototype)
1958 int input_len, parse_len = 0, nest_level = 0,
i,
size;
1959 int year = 0,
month = 0,
day = 0, hour = 0,
min = 0, sec = 0;
1960 int ms = 0,
offset = 0, hour_adjust = 0;
1974 for(
i=0;
i<input_len;
i++) {
1975 if(
input[
i] ==
'(') nest_level++;
1976 else if(
input[
i] ==
')') {
1983 else if(!nest_level) parse_len++;
1991 for(
i=0;
i<input_len;
i++) {
1992 if(
input[
i] ==
'(') nest_level++;
1993 else if(
input[
i] ==
')') nest_level--;
1996 parse[parse_len] = 0;
2020 for(
i=0;
i<parse_len;) {
2022 if(parse[
i] ==
',') {
2023 while(parse[
i] ==
',')
i++;
2027 if(parse[
i]>=
'0' && parse[
i]<=
'9') {
2029 while(parse[
i]>=
'0' && parse[
i]<=
'9')
i++;
2032 if(parse[
i] ==
':') {
2039 while(parse[
i] ==
':')
i++;
2041 if(parse[
i]>=
'0' && parse[
i]<=
'9') {
2043 while(parse[
i]>=
'0' && parse[
i]<=
'9')
i++;
2047 while(parse[
i] ==
':')
i++;
2049 if(parse[
i]>=
'0' && parse[
i]<=
'9') {
2051 while(parse[
i]>=
'0' && parse[
i]<=
'9')
i++;
2054 else if(parse[
i]==
'-' || parse[
i]==
'/') {
2056 if(set_day || set_month || set_year)
break;
2064 while(parse[
i]==
'-' || parse[
i]==
'/')
i++;
2066 if(parse[
i]<
'0' || parse[
i]>
'9')
break;
2068 while(parse[
i]>=
'0' && parse[
i]<=
'9')
i++;
2070 while(parse[
i]==
'-' || parse[
i]==
'/')
i++;
2072 if(parse[
i]<
'0' || parse[
i]>
'9')
break;
2074 while(parse[
i]>=
'0' && parse[
i]<=
'9')
i++;
2083 else if(tmp<0)
break;
2097 else if(parse[
i]==
'+' || parse[
i]==
'-') {
2101 if(set_offset && set_hour_adjust)
break;
2103 set_hour_adjust =
FALSE;
2109 if(parse[
i]<
'0' || parse[
i]>
'9')
break;
2111 while(parse[
i]>=
'0' && parse[
i]<=
'9')
i++;
2120 if(parse[
i]<
'A' || parse[
i]>
'Z')
break;
2121 else if(parse[
i]==
'B' && (parse[
i+1]==
'C' ||
2122 (parse[
i+1]==
'.' && parse[
i+2]==
'C'))) {
2129 if(parse[
i] ==
'.')
i++;
2131 if(parse[
i] ==
'.')
i++;
2133 else if(parse[
i]==
'A' && (parse[
i+1]==
'D' ||
2134 (parse[
i+1]==
'.' && parse[
i+2]==
'D'))) {
2140 if(parse[
i] ==
'.')
i++;
2142 if(parse[
i] ==
'.')
i++;
2144 else if(parse[
i+1]<
'A' || parse[
i+1]>
'Z') {
2146 if(set_offset)
break;
2149 if(parse[
i] <=
'I') hour_adjust = parse[
i]-
'A'+2;
2150 else if(parse[
i] ==
'J')
break;
2151 else if(parse[
i] <=
'M') hour_adjust = parse[
i]-
'K'+11;
2152 else if(parse[
i] <=
'Y') hour_adjust = parse[
i]-
'N';
2153 else hour_adjust = 1;
2156 if(parse[
i] ==
'.')
i++;
2158 else if(parse[
i]==
'A' && parse[
i+1]==
'M') {
2165 else if(parse[
i]==
'P' && parse[
i+1]==
'M') {
2172 else if((parse[
i]==
'U' && parse[
i+1]==
'T' && parse[
i+2]==
'C')
2173 || (parse[
i]==
'G' && parse[
i+1]==
'M' && parse[
i+2]==
'T')) {
2175 if(set_offset)
break;
2177 set_hour_adjust =
FALSE;
2192 if(set_month)
break;
2203 if(
i == parse_len && set_year && set_month && set_day && (!set_am || hour<13)) {
2205 if(hour == 12) hour = 0;
2209 if(!ad) year = -year+1;
2210 else if(year<100) year += 1900;
2259 double year,
month, vdate, hours, minutes, seconds, ms;
2268 if(0 <= year && year <= 99)
2323 make_time(hours, minutes,seconds, ms)));
2359 case DISPATCH_CONSTRUCT:
#define WINE_DEFAULT_DEBUG_CHANNEL(t)
static HRESULT Date_getYear(script_ctx_t *ctx, jsval_t vthis, WORD flags, unsigned argc, jsval_t *argv, jsval_t *r)
static HRESULT Date_setSeconds(script_ctx_t *ctx, jsval_t vthis, WORD flags, unsigned argc, jsval_t *argv, jsval_t *r)
static HRESULT Date_getTimezoneOffset(script_ctx_t *ctx, jsval_t vthis, WORD flags, unsigned argc, jsval_t *argv, jsval_t *r)
static const builtin_prop_t DateConstr_props[]
static HRESULT dateobj_to_string(DateInstance *date, jsval_t *r)
static const builtin_info_t Date_info
static HRESULT Date_getFullYear(script_ctx_t *ctx, jsval_t vthis, WORD flags, unsigned argc, jsval_t *argv, jsval_t *r)
HRESULT create_date_constr(script_ctx_t *ctx, jsdisp_t *object_prototype, jsdisp_t **ret)
static DOUBLE utc(DOUBLE time, DateInstance *date)
static HRESULT Date_setDate(script_ctx_t *ctx, jsval_t vthis, WORD flags, unsigned argc, jsval_t *argv, jsval_t *r)
static DOUBLE min_from_time(DOUBLE time)
static HRESULT Date_setUTCMinutes(script_ctx_t *ctx, jsval_t vthis, WORD flags, unsigned argc, jsval_t *argv, jsval_t *r)
static DateInstance * date_this(jsval_t vthis)
static HRESULT Date_setFullYear(script_ctx_t *ctx, jsval_t vthis, WORD flags, unsigned argc, jsval_t *argv, jsval_t *r)
static HRESULT Date_toString(script_ctx_t *ctx, jsval_t vthis, WORD flags, unsigned argc, jsval_t *argv, jsval_t *r)
static HRESULT create_utc_string(script_ctx_t *ctx, jsval_t vthis, jsval_t *r)
static const builtin_info_t DateInst_info
static HRESULT Date_getTime(script_ctx_t *ctx, jsval_t vthis, WORD flags, unsigned argc, jsval_t *argv, jsval_t *r)
static DOUBLE days_in_year(DOUBLE year)
static DOUBLE make_date(DOUBLE day, DOUBLE time)
static HRESULT Date_valueOf(script_ctx_t *ctx, jsval_t vthis, WORD flags, unsigned argc, jsval_t *argv, jsval_t *r)
static int in_leap_year(DOUBLE time)
static const builtin_info_t DateConstr_info
static DOUBLE make_day(DOUBLE year, DOUBLE month, DOUBLE day)
HRESULT variant_date_to_string(script_ctx_t *ctx, double date, jsstr_t **r)
static HRESULT DateConstr_value(script_ctx_t *ctx, jsval_t vthis, WORD flags, unsigned argc, jsval_t *argv, jsval_t *r)
static DOUBLE time_from_year(DOUBLE year)
static HRESULT Date_getSeconds(script_ctx_t *ctx, jsval_t vthis, WORD flags, unsigned argc, jsval_t *argv, jsval_t *r)
HRESULT variant_date_to_number(double date, double *ret)
static DateInstance * date_from_jsdisp(jsdisp_t *jsdisp)
static HRESULT Date_toDateString(script_ctx_t *ctx, jsval_t vthis, WORD flags, unsigned argc, jsval_t *argv, jsval_t *r)
static HRESULT Date_getUTCMonth(script_ctx_t *ctx, jsval_t vthis, WORD flags, unsigned argc, jsval_t *argv, jsval_t *r)
static HRESULT dateobj_to_date_string(DateInstance *date, jsval_t *r)
static DOUBLE day_from_year(DOUBLE year)
static HRESULT Date_getMinutes(script_ctx_t *ctx, jsval_t vthis, WORD flags, unsigned argc, jsval_t *argv, jsval_t *r)
static int day_within_year(DOUBLE time)
static DOUBLE local_time(DOUBLE time, DateInstance *date)
static HRESULT Date_setMinutes(script_ctx_t *ctx, jsval_t vthis, WORD flags, unsigned argc, jsval_t *argv, jsval_t *r)
static DOUBLE month_from_time(DOUBLE time)
static HRESULT Date_toUTCString(script_ctx_t *ctx, jsval_t vthis, WORD flags, unsigned argc, jsval_t *argv, jsval_t *r)
static HRESULT Date_getUTCMinutes(script_ctx_t *ctx, jsval_t vthis, WORD flags, unsigned argc, jsval_t *argv, jsval_t *r)
static DOUBLE time_clip(DOUBLE time)
static HRESULT Date_getMonth(script_ctx_t *ctx, jsval_t vthis, WORD flags, unsigned argc, jsval_t *argv, jsval_t *r)
static HRESULT Date_getDate(script_ctx_t *ctx, jsval_t vthis, WORD flags, unsigned argc, jsval_t *argv, jsval_t *r)
static HRESULT Date_toLocaleTimeString(script_ctx_t *ctx, jsval_t vthis, WORD flags, unsigned argc, jsval_t *argv, jsval_t *r)
static HRESULT Date_toGMTString(script_ctx_t *ctx, jsval_t vthis, WORD flags, unsigned argc, jsval_t *argv, jsval_t *r)
static DOUBLE convert_time(int year, SYSTEMTIME st)
static HRESULT Date_setYear(script_ctx_t *ctx, jsval_t vthis, WORD flags, unsigned argc, jsval_t *argv, jsval_t *r)
static HRESULT Date_toTimeString(script_ctx_t *ctx, jsval_t vthis, WORD flags, unsigned argc, jsval_t *argv, jsval_t *r)
static HRESULT DateConstr_parse(script_ctx_t *ctx, jsval_t vthis, WORD flags, unsigned argc, jsval_t *argv, jsval_t *r)
static HRESULT Date_toLocaleDateString(script_ctx_t *ctx, jsval_t vthis, WORD flags, unsigned argc, jsval_t *argv, jsval_t *r)
static HRESULT Date_getUTCDay(script_ctx_t *ctx, jsval_t vthis, WORD flags, unsigned argc, jsval_t *argv, jsval_t *r)
static SYSTEMTIME create_systemtime(DOUBLE time)
static HRESULT DateConstr_now(script_ctx_t *ctx, jsval_t vthis, WORD flags, unsigned argc, jsval_t *argv, jsval_t *r)
static HRESULT Date_setUTCDate(script_ctx_t *ctx, jsval_t vthis, WORD flags, unsigned argc, jsval_t *argv, jsval_t *r)
static HRESULT Date_getUTCMilliseconds(script_ctx_t *ctx, jsval_t vthis, WORD flags, unsigned argc, jsval_t *argv, jsval_t *r)
static HRESULT Date_setTime(script_ctx_t *ctx, jsval_t vthis, WORD flags, unsigned argc, jsval_t *argv, jsval_t *r)
static HRESULT Date_getUTCHours(script_ctx_t *ctx, jsval_t vthis, WORD flags, unsigned argc, jsval_t *argv, jsval_t *r)
static HRESULT Date_getUTCFullYear(script_ctx_t *ctx, jsval_t vthis, WORD flags, unsigned argc, jsval_t *argv, jsval_t *r)
static DOUBLE daylight_saving_ta(DOUBLE time, DateInstance *date)
static const builtin_prop_t Date_props[]
static HRESULT Date_setMilliseconds(script_ctx_t *ctx, jsval_t vthis, WORD flags, unsigned argc, jsval_t *argv, jsval_t *r)
static HRESULT Date_getHours(script_ctx_t *ctx, jsval_t vthis, WORD flags, unsigned argc, jsval_t *argv, jsval_t *r)
static HRESULT Date_toLocaleString(script_ctx_t *ctx, jsval_t vthis, WORD flags, unsigned argc, jsval_t *argv, jsval_t *r)
static HRESULT Date_setMonth(script_ctx_t *ctx, jsval_t vthis, WORD flags, unsigned argc, jsval_t *argv, jsval_t *r)
static HRESULT date_utc(script_ctx_t *ctx, unsigned argc, jsval_t *argv, double *ret)
static HRESULT Date_getUTCSeconds(script_ctx_t *ctx, jsval_t vthis, WORD flags, unsigned argc, jsval_t *argv, jsval_t *r)
static DOUBLE date_from_time(DOUBLE time)
static HRESULT Date_getUTCDate(script_ctx_t *ctx, jsval_t vthis, WORD flags, unsigned argc, jsval_t *argv, jsval_t *r)
static HRESULT create_date(script_ctx_t *ctx, jsdisp_t *object_prototype, DOUBLE time, DateInstance **ret)
static DOUBLE hour_from_time(DOUBLE time)
static HRESULT date_to_string(DOUBLE time, BOOL show_offset, int offset, jsval_t *r)
static HRESULT date_parse(jsstr_t *input_str, double *ret)
static DOUBLE ms_from_time(DOUBLE time)
static DOUBLE sec_from_time(DOUBLE time)
static HRESULT Date_setUTCHours(script_ctx_t *ctx, jsval_t vthis, WORD flags, unsigned argc, jsval_t *argv, jsval_t *r)
static DOUBLE week_day(DOUBLE time)
static DOUBLE time_within_day(DOUBLE time)
static HRESULT Date_setUTCSeconds(script_ctx_t *ctx, jsval_t vthis, WORD flags, unsigned argc, jsval_t *argv, jsval_t *r)
static double file_time_to_date_time(const FILETIME *ftime)
static DOUBLE make_time(DOUBLE hour, DOUBLE min, DOUBLE sec, DOUBLE ms)
static DOUBLE year_from_time(DOUBLE time)
static double date_now(void)
static HRESULT Date_setUTCMilliseconds(script_ctx_t *ctx, jsval_t vthis, WORD flags, unsigned argc, jsval_t *argv, jsval_t *r)
static HRESULT Date_setHours(script_ctx_t *ctx, jsval_t vthis, WORD flags, unsigned argc, jsval_t *argv, jsval_t *r)
static HRESULT Date_getDay(script_ctx_t *ctx, jsval_t vthis, WORD flags, unsigned argc, jsval_t *argv, jsval_t *r)
static HRESULT Date_setUTCFullYear(script_ctx_t *ctx, jsval_t vthis, WORD flags, unsigned argc, jsval_t *argv, jsval_t *r)
static HRESULT Date_setUTCMonth(script_ctx_t *ctx, jsval_t vthis, WORD flags, unsigned argc, jsval_t *argv, jsval_t *r)
static HRESULT Date_getMilliseconds(script_ctx_t *ctx, jsval_t vthis, WORD flags, unsigned argc, jsval_t *argv, jsval_t *r)
static DOUBLE day(DOUBLE time)
static HRESULT DateConstr_UTC(script_ctx_t *ctx, jsval_t vthis, WORD flags, unsigned argc, jsval_t *argv, jsval_t *r)
static HRESULT Date_toISOString(script_ctx_t *ctx, jsval_t vthis, WORD flags, unsigned argc, jsval_t *argv, jsval_t *r)
static int day_from_month(int month, int in_leap_year)
HRESULT create_builtin_constructor(script_ctx_t *ctx, builtin_invoke_t value_proc, const WCHAR *name, const builtin_info_t *builtin_info, DWORD flags, jsdisp_t *prototype, jsdisp_t **ret)
HRESULT Function_value(script_ctx_t *ctx, jsval_t vthis, WORD flags, unsigned argc, jsval_t *argv, jsval_t *r)
VOID WINAPI GetSystemTimeAsFileTime(OUT PFILETIME lpFileTime)
BOOL WINAPI FileTimeToLocalFileTime(IN CONST FILETIME *lpFileTime, OUT LPFILETIME lpLocalFileTime)
BOOL WINAPI TzSpecificLocalTimeToSystemTime(CONST TIME_ZONE_INFORMATION *lpTimeZoneInformation, CONST SYSTEMTIME *lpLocalTime, LPSYSTEMTIME lpUniversalTime)
DWORD WINAPI GetTimeZoneInformation(LPTIME_ZONE_INFORMATION lpTimeZoneInformation)
INT WINAPI GetLocaleInfoW(LCID lcid, LCTYPE lctype, LPWSTR buffer, INT len)
_ACRTIMP __msvcrt_long __cdecl wcstol(const wchar_t *, wchar_t **, int)
_ACRTIMP double __cdecl fmod(double, double)
_ACRTIMP double __cdecl floor(double)
static void ftime(struct _timeb *ptr)
static TIME_ZONE_INFORMATION tzi
static const WCHAR month[12][4]
GLint GLint GLint GLint GLint GLint y
GLdouble GLdouble GLdouble r
GLsizei const GLchar *const * strings
GLenum GLuint GLenum GLsizei const GLchar * buf
GLenum GLenum GLenum input
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
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 GLint GLint j
static HRESULT to_string(VARIANT *src, BSTR *dst)
HRESULT init_dispex_from_constr(jsdisp_t *dispex, script_ctx_t *ctx, const builtin_info_t *builtin_info, jsdisp_t *constr)
ULONG jsdisp_release(jsdisp_t *obj)
HRESULT init_dispex(jsdisp_t *dispex, script_ctx_t *ctx, const builtin_info_t *builtin_info, jsdisp_t *prototype)
jsdisp_t * to_jsdisp(IDispatch *disp)
HRESULT to_primitive(script_ctx_t *, jsval_t, jsval_t *, hint_t)
HRESULT to_number(script_ctx_t *, jsval_t, double *)
#define JS_E_DATE_EXPECTED
static BOOL is_class(jsdisp_t *jsdisp, jsclass_t class)
const unsigned int PROPF_METHOD
const unsigned int PROPF_CONSTR
jsstr_t * jsstr_nan(void)
jsstr_t * jsstr_alloc_buf(unsigned len, WCHAR **buf)
static const WCHAR * jsstr_flatten(jsstr_t *str)
static void jsstr_release(jsstr_t *str)
static unsigned jsstr_length(jsstr_t *str)
static jsstr_t * jsstr_alloc(const WCHAR *str)
void jsval_release(jsval_t val)
static jsval_t jsval_string(jsstr_t *str)
static jsval_t jsval_obj(jsdisp_t *obj)
static jsstr_t * get_string(jsval_t v)
static IDispatch * get_object(jsval_t v)
static BOOL is_object_instance(jsval_t v)
static jsval_t jsval_number(double n)
#define MAKELCID(lgid, srtid)
static BOOL is_string(parse_buffer *buf)
#define SUBLANG_ENGLISH_US
#define CONTAINING_RECORD(address, type, field)
HRESULT WINAPI VarUdateFromDate(DATE dateIn, ULONG dwFlags, UDATE *lpUdate)
#define LOCALE_SABBREVMONTHNAME10
#define LOCALE_SMONTHNAME12
#define LOCALE_SMONTHNAME5
#define LOCALE_SABBREVMONTHNAME9
#define LOCALE_SABBREVMONTHNAME11
#define LOCALE_SABBREVDAYNAME5
#define LOCALE_SABBREVDAYNAME2
#define LOCALE_SABBREVMONTHNAME2
#define LOCALE_SMONTHNAME3
#define LOCALE_SMONTHNAME11
#define LOCALE_SMONTHNAME8
#define LOCALE_SMONTHNAME4
#define LOCALE_SMONTHNAME7
#define LOCALE_SABBREVMONTHNAME4
#define LOCALE_SABBREVDAYNAME4
#define LOCALE_SMONTHNAME1
#define LOCALE_SABBREVMONTHNAME3
#define LOCALE_SABBREVMONTHNAME1
#define LOCALE_SABBREVDAYNAME6
#define LOCALE_SMONTHNAME2
#define LOCALE_SABBREVDAYNAME1
#define LOCALE_SABBREVMONTHNAME6
#define LOCALE_SMONTHNAME6
#define LOCALE_SABBREVDAYNAME3
#define LOCALE_SABBREVMONTHNAME5
#define LOCALE_SABBREVMONTHNAME7
#define LOCALE_SABBREVMONTHNAME8
#define LOCALE_SMONTHNAME10
#define LOCALE_SMONTHNAME9
#define LOCALE_SABBREVMONTHNAME12
#define LOCALE_SABBREVDAYNAME7