2 * This file was generated automatically by ExtUtils::ParseXS version 2.2202 from the
3 * contents of DateTime.xs. Do not edit this file, edit DateTime.xs instead.
5 * ANY CHANGES MADE HERE WILL BE LOST!
9 /////////////////////////////////////////////////////////////////////////////
10 // Name: ext/datetime/DateTime.xs
11 // Purpose: XS for Wx::DateTime
12 // Author: Mattia Barbon
14 // Created: 22/09/2002
15 // RCS-ID: $Id: DateTime.xs 2700 2009-12-13 11:25:50Z mbarbon $
16 // Copyright: (c) 2002, 2006, 2008-2009 Mattia Barbon
17 // Licence: This program is free software; you can redistribute it and/or
18 // modify it under the same terms as Perl itself
19 /////////////////////////////////////////////////////////////////////////////
21 #define PERL_NO_GET_CONTEXT
23 #include "cpp/wxapi.h"
27 #ifndef PERL_UNUSED_VAR
28 # define PERL_UNUSED_VAR(var) if (0) var = var
31 #ifndef PERL_ARGS_ASSERT_CROAK_XS_USAGE
32 #define PERL_ARGS_ASSERT_CROAK_XS_USAGE assert(cv); assert(params)
34 /* prototype to pass -Wmissing-prototypes */
36 S_croak_xs_usage(pTHX_ const CV *const cv, const char *const params);
39 S_croak_xs_usage(pTHX_ const CV *const cv, const char *const params)
41 const GV *const gv = CvGV(cv);
43 PERL_ARGS_ASSERT_CROAK_XS_USAGE;
46 const char *const gvname = GvNAME(gv);
47 const HV *const stash = GvSTASH(gv);
48 const char *const hvname = stash ? HvNAME(stash) : NULL;
51 Perl_croak(aTHX_ "Usage: %s::%s(%s)", hvname, gvname, params);
53 Perl_croak(aTHX_ "Usage: %s(%s)", gvname, params);
55 /* Pants. I don't think that it should be possible to get here. */
56 Perl_croak(aTHX_ "Usage: CODE(0x%"UVxf")(%s)", PTR2UV(cv), params);
59 #undef PERL_ARGS_ASSERT_CROAK_XS_USAGE
61 #ifdef PERL_IMPLICIT_CONTEXT
62 #define croak_xs_usage(a,b) S_croak_xs_usage(aTHX_ a,b)
64 #define croak_xs_usage S_croak_xs_usage
69 /* NOTE: the prototype of newXSproto() is different in versions of perls,
70 * so we define a portable version of newXSproto()
73 #define newXSproto_portable(name, c_impl, file, proto) newXS_flags(name, c_impl, file, proto, 0)
75 #define newXSproto_portable(name, c_impl, file, proto) (PL_Sv=(SV*)newXS(name, c_impl, file), sv_setpv(PL_Sv, proto), (CV*)PL_Sv)
76 #endif /* !defined(newXS_flags) */
79 /* INCLUDE: Including 'perl -MExtUtils::XSpp::Cmd -e xspp -- -t ../../typemap.xsp XS/DateTime.xsp |' from 'DateTime.xs' */
81 #include <wx/datetime.h>
82 #define wxDateTime__TimeZone wxDateTime::TimeZone
83 #define Month wxDateTime::Month
84 #define WeekDay wxDateTime::WeekDay
85 #define WeekFlags wxDateTime::WeekFlags
86 #define NameFlags wxDateTime::NameFlags
87 #define wxDateTime_t wxDateTime::wxDateTime_t
88 #define Monday_First wxDateTime::Monday_First
89 #define Name_Full wxDateTime::Name_Full
90 #define Name_Abbr wxDateTime::Name_Abbr
91 #define Calendar wxDateTime::Calendar
92 #define Gregorian wxDateTime::Gregorian
93 #define Inv_Year wxDateTime::Inv_Year
94 #define Inv_Month wxDateTime::Inv_Month
95 #define wxDefaultDateTimePtr (wxDateTime*)&wxDefaultDateTime
96 #if WXPERL_W_VERSION_LT( 2, 5, 4 )
97 #define wxDefaultDateTimeFormat _T("%c")
100 XS(XS_Wx__DateTime_new); /* prototype to pass -Wmissing-prototypes */
101 XS(XS_Wx__DateTime_new)
109 croak_xs_usage(cv, "CLASS");
111 char * CLASS = (char *)SvPV_nolen(ST(0));
114 RETVAL = new wxDateTime();
115 ST(0) = sv_newmortal();
116 wxPli_non_object_2_sv( aTHX_ ST(0), RETVAL, "Wx::DateTime" );
117 wxPli_thread_sv_register( aTHX_ "Wx::DateTime", RETVAL, ST(0) );
124 XS(XS_Wx__DateTime_newFromTimeT); /* prototype to pass -Wmissing-prototypes */
125 XS(XS_Wx__DateTime_newFromTimeT)
133 croak_xs_usage(cv, "CLASS, time");
135 time_t time = (time_t)SvNV(ST(1));
136 char * CLASS = (char *)SvPV_nolen(ST(0));
138 RETVAL = new wxDateTime( time );
139 ST(0) = sv_newmortal();
140 wxPli_non_object_2_sv( aTHX_ ST(0), RETVAL, "Wx::DateTime" );
141 wxPli_thread_sv_register( aTHX_ "Wx::DateTime", RETVAL, ST(0) );
148 XS(XS_Wx__DateTime_newFromDMY); /* prototype to pass -Wmissing-prototypes */
149 XS(XS_Wx__DateTime_newFromDMY)
156 if (items < 2 || items > 8)
157 croak_xs_usage(cv, "CLASS, day, month = Inv_Month, year = Inv_Year, hour = 0, minute = 0, second = 0, millisec = 0");
159 wxDateTime_t day = (wxDateTime_t)SvIV(ST(1));
165 wxDateTime_t millisec;
166 char * CLASS = (char *)SvPV_nolen(ST(0));
172 month = (Month)SvIV(ST(2));
178 year = (int)SvIV(ST(3));
184 hour = (wxDateTime_t)SvIV(ST(4));
190 minute = (wxDateTime_t)SvIV(ST(5));
196 second = (wxDateTime_t)SvIV(ST(6));
202 millisec = (wxDateTime_t)SvIV(ST(7));
204 RETVAL = new wxDateTime( day, month, year, hour, minute, second, millisec );
205 ST(0) = sv_newmortal();
206 wxPli_non_object_2_sv( aTHX_ ST(0), RETVAL, "Wx::DateTime" );
207 wxPli_thread_sv_register( aTHX_ "Wx::DateTime", RETVAL, ST(0) );
214 XS(XS_Wx__DateTime_CLONE); /* prototype to pass -Wmissing-prototypes */
215 XS(XS_Wx__DateTime_CLONE)
223 croak_xs_usage(cv, "CLASS");
225 char * CLASS = (char *)SvPV_nolen(ST(0));
226 wxPli_thread_sv_clone( aTHX_ CLASS, (wxPliCloneSV)wxPli_detach_object );
232 XS(XS_Wx__DateTime_DESTROY); /* prototype to pass -Wmissing-prototypes */
233 XS(XS_Wx__DateTime_DESTROY)
241 croak_xs_usage(cv, "THIS");
243 wxDateTime * THIS = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateTime" );
244 wxPli_thread_sv_unregister( aTHX_ "Wx::DateTime", THIS, ST(0) );
250 #define wxPL_DATETIME_FORMAT wxT("%c")
252 XS(XS_Wx__DateTime_Format); /* prototype to pass -Wmissing-prototypes */
253 XS(XS_Wx__DateTime_Format)
260 if (items < 1 || items > 3)
261 croak_xs_usage(cv, "THIS, format = wxPL_DATETIME_FORMAT, tz = wxDateTime::Local");
263 const wxChar* format;
264 wxDateTime__TimeZone tz;
265 wxDateTime * THIS = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateTime" );
269 format = wxPL_DATETIME_FORMAT;
271 WXCHAR_INPUT( format, wxChar*, ST(1) );
275 tz = wxDateTime::Local;
277 tz = (wxDateTime::TZ)SvIV(ST(2));
280 RETVAL = THIS->Format(format, tz);
281 ST(0) = sv_newmortal();
282 WXSTRING_OUTPUT( RETVAL, ST(0) );
289 XS(XS_Wx__DateTime_FormatDate); /* prototype to pass -Wmissing-prototypes */
290 XS(XS_Wx__DateTime_FormatDate)
298 croak_xs_usage(cv, "THIS");
300 wxDateTime * THIS = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateTime" );
303 RETVAL = THIS->FormatDate();
304 ST(0) = sv_newmortal();
305 WXSTRING_OUTPUT( RETVAL, ST(0) );
312 XS(XS_Wx__DateTime_GetYear); /* prototype to pass -Wmissing-prototypes */
313 XS(XS_Wx__DateTime_GetYear)
320 if (items < 1 || items > 2)
321 croak_xs_usage(cv, "THIS, tz = wxDateTime::Local");
323 wxDateTime__TimeZone tz;
324 wxDateTime * THIS = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateTime" );
329 tz = wxDateTime::Local;
331 tz = (wxDateTime::TZ)SvIV(ST(1));
334 RETVAL = THIS->GetYear(tz);
335 XSprePUSH; PUSHi((IV)RETVAL);
341 XS(XS_Wx__DateTime_GetMonth); /* prototype to pass -Wmissing-prototypes */
342 XS(XS_Wx__DateTime_GetMonth)
349 if (items < 1 || items > 2)
350 croak_xs_usage(cv, "THIS, tz = wxDateTime::Local");
352 wxDateTime__TimeZone tz;
353 wxDateTime * THIS = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateTime" );
358 tz = wxDateTime::Local;
360 tz = (wxDateTime::TZ)SvIV(ST(1));
363 RETVAL = THIS->GetMonth(tz);
364 XSprePUSH; PUSHi((IV)RETVAL);
370 XS(XS_Wx__DateTime_GetDay); /* prototype to pass -Wmissing-prototypes */
371 XS(XS_Wx__DateTime_GetDay)
378 if (items < 1 || items > 2)
379 croak_xs_usage(cv, "THIS, tz = wxDateTime::Local");
381 wxDateTime__TimeZone tz;
382 wxDateTime * THIS = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateTime" );
387 tz = wxDateTime::Local;
389 tz = (wxDateTime::TZ)SvIV(ST(1));
392 RETVAL = THIS->GetDay(tz);
393 XSprePUSH; PUSHi((IV)RETVAL);
399 XS(XS_Wx__DateTime_GetWeekDay); /* prototype to pass -Wmissing-prototypes */
400 XS(XS_Wx__DateTime_GetWeekDay)
407 if (items < 1 || items > 2)
408 croak_xs_usage(cv, "THIS, tz = wxDateTime::Local");
410 wxDateTime__TimeZone tz;
411 wxDateTime * THIS = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateTime" );
416 tz = wxDateTime::Local;
418 tz = (wxDateTime::TZ)SvIV(ST(1));
421 RETVAL = THIS->GetWeekDay(tz);
422 XSprePUSH; PUSHi((IV)RETVAL);
428 XS(XS_Wx__DateTime_GetHour); /* prototype to pass -Wmissing-prototypes */
429 XS(XS_Wx__DateTime_GetHour)
436 if (items < 1 || items > 2)
437 croak_xs_usage(cv, "THIS, tz = wxDateTime::Local");
439 wxDateTime__TimeZone tz;
440 wxDateTime * THIS = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateTime" );
445 tz = wxDateTime::Local;
447 tz = (wxDateTime::TZ)SvIV(ST(1));
450 RETVAL = THIS->GetHour(tz);
451 XSprePUSH; PUSHi((IV)RETVAL);
457 XS(XS_Wx__DateTime_GetMinute); /* prototype to pass -Wmissing-prototypes */
458 XS(XS_Wx__DateTime_GetMinute)
465 if (items < 1 || items > 2)
466 croak_xs_usage(cv, "THIS, tz = wxDateTime::Local");
468 wxDateTime__TimeZone tz;
469 wxDateTime * THIS = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateTime" );
474 tz = wxDateTime::Local;
476 tz = (wxDateTime::TZ)SvIV(ST(1));
479 RETVAL = THIS->GetMinute(tz);
480 XSprePUSH; PUSHi((IV)RETVAL);
486 XS(XS_Wx__DateTime_GetSecond); /* prototype to pass -Wmissing-prototypes */
487 XS(XS_Wx__DateTime_GetSecond)
494 if (items < 1 || items > 2)
495 croak_xs_usage(cv, "THIS, tz = wxDateTime::Local");
497 wxDateTime__TimeZone tz;
498 wxDateTime * THIS = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateTime" );
503 tz = wxDateTime::Local;
505 tz = (wxDateTime::TZ)SvIV(ST(1));
508 RETVAL = THIS->GetSecond(tz);
509 XSprePUSH; PUSHi((IV)RETVAL);
515 XS(XS_Wx__DateTime_GetMillisecond); /* prototype to pass -Wmissing-prototypes */
516 XS(XS_Wx__DateTime_GetMillisecond)
523 if (items < 1 || items > 2)
524 croak_xs_usage(cv, "THIS, tz = wxDateTime::Local");
526 wxDateTime__TimeZone tz;
527 wxDateTime * THIS = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateTime" );
532 tz = wxDateTime::Local;
534 tz = (wxDateTime::TZ)SvIV(ST(1));
537 RETVAL = THIS->GetMillisecond(tz);
538 XSprePUSH; PUSHi((IV)RETVAL);
544 XS(XS_Wx__DateTime_GetDayOfYear); /* prototype to pass -Wmissing-prototypes */
545 XS(XS_Wx__DateTime_GetDayOfYear)
552 if (items < 1 || items > 2)
553 croak_xs_usage(cv, "THIS, tz = wxDateTime::Local");
555 wxDateTime__TimeZone tz;
556 wxDateTime * THIS = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateTime" );
561 tz = wxDateTime::Local;
563 tz = (wxDateTime::TZ)SvIV(ST(1));
566 RETVAL = THIS->GetDayOfYear(tz);
567 XSprePUSH; PUSHi((IV)RETVAL);
573 XS(XS_Wx__DateTime_GetWeekOfYear); /* prototype to pass -Wmissing-prototypes */
574 XS(XS_Wx__DateTime_GetWeekOfYear)
581 if (items < 1 || items > 3)
582 croak_xs_usage(cv, "THIS, flags = Monday_First, tz = wxDateTime::Local");
585 wxDateTime__TimeZone tz;
586 wxDateTime * THIS = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateTime" );
591 flags = Monday_First;
593 flags = (WeekFlags)SvIV(ST(1));
597 tz = wxDateTime::Local;
599 tz = (wxDateTime::TZ)SvIV(ST(2));
602 RETVAL = THIS->GetWeekOfYear(flags, tz);
603 XSprePUSH; PUSHi((IV)RETVAL);
609 XS(XS_Wx__DateTime_GetWeekOfMonth); /* prototype to pass -Wmissing-prototypes */
610 XS(XS_Wx__DateTime_GetWeekOfMonth)
617 if (items < 1 || items > 3)
618 croak_xs_usage(cv, "THIS, flags = Monday_First, tz = wxDateTime::Local");
621 wxDateTime__TimeZone tz;
622 wxDateTime * THIS = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateTime" );
627 flags = Monday_First;
629 flags = (WeekFlags)SvIV(ST(1));
633 tz = wxDateTime::Local;
635 tz = (wxDateTime::TZ)SvIV(ST(2));
638 RETVAL = THIS->GetWeekOfMonth(flags, tz);
639 XSprePUSH; PUSHi((IV)RETVAL);
645 XS(XS_Wx__DateTime_SetTimeT); /* prototype to pass -Wmissing-prototypes */
646 XS(XS_Wx__DateTime_SetTimeT)
654 croak_xs_usage(cv, "THIS, time");
656 time_t time = (time_t)SvNV(ST(1));
657 wxDateTime * THIS = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateTime" );
659 RETVAL = &(THIS->Set( time ));
660 ST(0) = sv_newmortal();
661 wxPli_non_object_2_sv( aTHX_ ST(0), RETVAL, "Wx::DateTime" );
662 wxPli_thread_sv_register( aTHX_ "Wx::DateTime", RETVAL, ST(0) );
669 XS(XS_Wx__DateTime_SetJDN); /* prototype to pass -Wmissing-prototypes */
670 XS(XS_Wx__DateTime_SetJDN)
678 croak_xs_usage(cv, "THIS, jdn");
680 double jdn = (double)SvNV(ST(1));
681 wxDateTime * THIS = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateTime" );
683 RETVAL = &(THIS->Set( jdn ));
684 ST(0) = sv_newmortal();
685 wxPli_non_object_2_sv( aTHX_ ST(0), RETVAL, "Wx::DateTime" );
686 wxPli_thread_sv_register( aTHX_ "Wx::DateTime", RETVAL, ST(0) );
693 XS(XS_Wx__DateTime_SetHMS); /* prototype to pass -Wmissing-prototypes */
694 XS(XS_Wx__DateTime_SetHMS)
701 if (items < 2 || items > 5)
702 croak_xs_usage(cv, "THIS, hour, minute = 0, second = 0, msec = 0");
704 wxDateTime_t hour = (wxDateTime_t)SvIV(ST(1));
708 wxDateTime * THIS = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateTime" );
714 minute = (wxDateTime_t)SvIV(ST(2));
720 second = (wxDateTime_t)SvIV(ST(3));
726 msec = (wxDateTime_t)SvIV(ST(4));
728 RETVAL = &(THIS->Set( hour, minute, second, msec ));
729 ST(0) = sv_newmortal();
730 wxPli_non_object_2_sv( aTHX_ ST(0), RETVAL, "Wx::DateTime" );
731 wxPli_thread_sv_register( aTHX_ "Wx::DateTime", RETVAL, ST(0) );
738 XS(XS_Wx__DateTime_Set); /* prototype to pass -Wmissing-prototypes */
739 XS(XS_Wx__DateTime_Set)
746 if (items < 3 || items > 8)
747 croak_xs_usage(cv, "THIS, day, month = Inv_Month, year = Inv_Year, hour, minute = 0, second = 0, msec = 0");
749 wxDateTime_t day = (wxDateTime_t)SvIV(ST(1));
752 wxDateTime_t hour = (wxDateTime_t)SvIV(ST(4));
756 wxDateTime * THIS = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateTime" );
762 month = (Month)SvIV(ST(2));
768 year = (int)SvIV(ST(3));
774 minute = (wxDateTime_t)SvIV(ST(5));
780 second = (wxDateTime_t)SvIV(ST(6));
786 msec = (wxDateTime_t)SvIV(ST(7));
788 RETVAL = &(THIS->Set( day, month, year,
789 hour, minute, second, msec ));
791 ST(0) = sv_newmortal();
792 wxPli_non_object_2_sv( aTHX_ ST(0), RETVAL, "Wx::DateTime" );
793 wxPli_thread_sv_register( aTHX_ "Wx::DateTime", RETVAL, ST(0) );
800 XS(XS_Wx__DateTime_SetYear); /* prototype to pass -Wmissing-prototypes */
801 XS(XS_Wx__DateTime_SetYear)
809 croak_xs_usage(cv, "THIS, year");
811 int year = (int)SvIV(ST(1));
812 wxDateTime * THIS = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateTime" );
814 RETVAL = new wxDateTime( THIS->SetYear( year ) );
815 ST(0) = sv_newmortal();
816 wxPli_non_object_2_sv( aTHX_ ST(0), RETVAL, "Wx::DateTime" );
817 wxPli_thread_sv_register( aTHX_ "Wx::DateTime", RETVAL, ST(0) );
824 XS(XS_Wx__DateTime_SetMonth); /* prototype to pass -Wmissing-prototypes */
825 XS(XS_Wx__DateTime_SetMonth)
833 croak_xs_usage(cv, "THIS, month");
835 Month month = (Month)SvIV(ST(1));
836 wxDateTime * THIS = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateTime" );
838 RETVAL = new wxDateTime( THIS->SetMonth( month ) );
839 ST(0) = sv_newmortal();
840 wxPli_non_object_2_sv( aTHX_ ST(0), RETVAL, "Wx::DateTime" );
841 wxPli_thread_sv_register( aTHX_ "Wx::DateTime", RETVAL, ST(0) );
848 XS(XS_Wx__DateTime_SetDay); /* prototype to pass -Wmissing-prototypes */
849 XS(XS_Wx__DateTime_SetDay)
857 croak_xs_usage(cv, "THIS, day");
859 wxDateTime_t day = (wxDateTime_t)SvIV(ST(1));
860 wxDateTime * THIS = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateTime" );
862 RETVAL = new wxDateTime( THIS->SetDay( day ) );
863 ST(0) = sv_newmortal();
864 wxPli_non_object_2_sv( aTHX_ ST(0), RETVAL, "Wx::DateTime" );
865 wxPli_thread_sv_register( aTHX_ "Wx::DateTime", RETVAL, ST(0) );
872 XS(XS_Wx__DateTime_SetHour); /* prototype to pass -Wmissing-prototypes */
873 XS(XS_Wx__DateTime_SetHour)
881 croak_xs_usage(cv, "THIS, hour");
883 wxDateTime_t hour = (wxDateTime_t)SvIV(ST(1));
884 wxDateTime * THIS = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateTime" );
886 RETVAL = new wxDateTime( THIS->SetHour( hour ) );
887 ST(0) = sv_newmortal();
888 wxPli_non_object_2_sv( aTHX_ ST(0), RETVAL, "Wx::DateTime" );
889 wxPli_thread_sv_register( aTHX_ "Wx::DateTime", RETVAL, ST(0) );
896 XS(XS_Wx__DateTime_SetMinute); /* prototype to pass -Wmissing-prototypes */
897 XS(XS_Wx__DateTime_SetMinute)
905 croak_xs_usage(cv, "THIS, minute");
907 wxDateTime_t minute = (wxDateTime_t)SvIV(ST(1));
908 wxDateTime * THIS = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateTime" );
910 RETVAL = new wxDateTime( THIS->SetMinute( minute ) );
911 ST(0) = sv_newmortal();
912 wxPli_non_object_2_sv( aTHX_ ST(0), RETVAL, "Wx::DateTime" );
913 wxPli_thread_sv_register( aTHX_ "Wx::DateTime", RETVAL, ST(0) );
920 XS(XS_Wx__DateTime_SetSecond); /* prototype to pass -Wmissing-prototypes */
921 XS(XS_Wx__DateTime_SetSecond)
929 croak_xs_usage(cv, "THIS, second");
931 wxDateTime_t second = (wxDateTime_t)SvIV(ST(1));
932 wxDateTime * THIS = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateTime" );
934 RETVAL = new wxDateTime( THIS->SetSecond( second ) );
935 ST(0) = sv_newmortal();
936 wxPli_non_object_2_sv( aTHX_ ST(0), RETVAL, "Wx::DateTime" );
937 wxPli_thread_sv_register( aTHX_ "Wx::DateTime", RETVAL, ST(0) );
944 XS(XS_Wx__DateTime_SetMillisecond); /* prototype to pass -Wmissing-prototypes */
945 XS(XS_Wx__DateTime_SetMillisecond)
953 croak_xs_usage(cv, "THIS, millisecond");
955 wxDateTime_t millisecond = (wxDateTime_t)SvIV(ST(1));
956 wxDateTime * THIS = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateTime" );
958 RETVAL = new wxDateTime( THIS->SetMillisecond( millisecond ) );
959 ST(0) = sv_newmortal();
960 wxPli_non_object_2_sv( aTHX_ ST(0), RETVAL, "Wx::DateTime" );
961 wxPli_thread_sv_register( aTHX_ "Wx::DateTime", RETVAL, ST(0) );
968 XS(XS_Wx__DateTime_FormatISODate); /* prototype to pass -Wmissing-prototypes */
969 XS(XS_Wx__DateTime_FormatISODate)
977 croak_xs_usage(cv, "THIS");
979 wxDateTime * THIS = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateTime" );
982 RETVAL = THIS->FormatISODate();
983 ST(0) = sv_newmortal();
984 WXSTRING_OUTPUT( RETVAL, ST(0) );
991 XS(XS_Wx__DateTime_FormatTime); /* prototype to pass -Wmissing-prototypes */
992 XS(XS_Wx__DateTime_FormatTime)
1000 croak_xs_usage(cv, "THIS");
1002 wxDateTime * THIS = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateTime" );
1005 RETVAL = THIS->FormatTime();
1006 ST(0) = sv_newmortal();
1007 WXSTRING_OUTPUT( RETVAL, ST(0) );
1014 XS(XS_Wx__DateTime_FormatISOTime); /* prototype to pass -Wmissing-prototypes */
1015 XS(XS_Wx__DateTime_FormatISOTime)
1023 croak_xs_usage(cv, "THIS");
1025 wxDateTime * THIS = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateTime" );
1028 RETVAL = THIS->FormatISOTime();
1029 ST(0) = sv_newmortal();
1030 WXSTRING_OUTPUT( RETVAL, ST(0) );
1036 #if WXPERL_W_VERSION_LT( 2, 9, 0 )
1037 #define XSubPPtmpAAAA 1
1040 XS(XS_Wx__DateTime_ParseFormat); /* prototype to pass -Wmissing-prototypes */
1041 XS(XS_Wx__DateTime_ParseFormat)
1048 if (items < 2 || items > 4)
1049 croak_xs_usage(cv, "THIS, date, format = wxDefaultDateTimeFormat, dateDef = wxDefaultDateTimePtr");
1053 wxDateTime* dateDef;
1054 wxDateTime * THIS = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateTime" );
1057 WXSTRING_INPUT( date, wxString, ST(1) );
1060 format = wxDefaultDateTimeFormat;
1062 WXSTRING_INPUT( format, wxString, ST(2) );
1066 dateDef = wxDefaultDateTimePtr;
1068 dateDef = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(3), "Wx::DateTime" );
1070 RETVAL = THIS->ParseFormat( date, format, *( dateDef ) );
1071 ST(0) = sv_newmortal();
1072 WXSTRING_OUTPUT( RETVAL, ST(0) );
1079 XS(XS_Wx__DateTime_ParseDate); /* prototype to pass -Wmissing-prototypes */
1080 XS(XS_Wx__DateTime_ParseDate)
1088 croak_xs_usage(cv, "THIS, date");
1091 wxDateTime * THIS = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateTime" );
1094 WXSTRING_INPUT( date, wxString, ST(1) );
1096 RETVAL = THIS->ParseDate(date);
1097 ST(0) = sv_newmortal();
1098 WXSTRING_OUTPUT( RETVAL, ST(0) );
1105 XS(XS_Wx__DateTime_ParseDateTime); /* prototype to pass -Wmissing-prototypes */
1106 XS(XS_Wx__DateTime_ParseDateTime)
1114 croak_xs_usage(cv, "THIS, date");
1117 wxDateTime * THIS = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateTime" );
1120 WXSTRING_INPUT( date, wxString, ST(1) );
1122 RETVAL = THIS->ParseDateTime(date);
1123 ST(0) = sv_newmortal();
1124 WXSTRING_OUTPUT( RETVAL, ST(0) );
1131 XS(XS_Wx__DateTime_ParseTime); /* prototype to pass -Wmissing-prototypes */
1132 XS(XS_Wx__DateTime_ParseTime)
1140 croak_xs_usage(cv, "THIS, date");
1143 wxDateTime * THIS = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateTime" );
1146 WXSTRING_INPUT( date, wxString, ST(1) );
1148 RETVAL = THIS->ParseTime(date);
1149 ST(0) = sv_newmortal();
1150 WXSTRING_OUTPUT( RETVAL, ST(0) );
1157 XS(XS_Wx__DateTime_ParseRfc822Date); /* prototype to pass -Wmissing-prototypes */
1158 XS(XS_Wx__DateTime_ParseRfc822Date)
1166 croak_xs_usage(cv, "THIS, date");
1169 wxDateTime * THIS = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateTime" );
1172 WXSTRING_INPUT( date, wxString, ST(1) );
1174 RETVAL = THIS->ParseRfc822Date(date);
1175 ST(0) = sv_newmortal();
1176 WXSTRING_OUTPUT( RETVAL, ST(0) );
1184 XS(XS_Wx__DateTime_SetToCurrent); /* prototype to pass -Wmissing-prototypes */
1185 XS(XS_Wx__DateTime_SetToCurrent)
1193 croak_xs_usage(cv, "THIS");
1195 wxDateTime * THIS = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateTime" );
1196 wxDateTime * RETVAL;
1197 RETVAL = new wxDateTime( THIS->SetToCurrent() );
1198 ST(0) = sv_newmortal();
1199 wxPli_non_object_2_sv( aTHX_ ST(0), RETVAL, "Wx::DateTime" );
1200 wxPli_thread_sv_register( aTHX_ "Wx::DateTime", RETVAL, ST(0) );
1207 XS(XS_Wx__DateTime_ResetTime); /* prototype to pass -Wmissing-prototypes */
1208 XS(XS_Wx__DateTime_ResetTime)
1216 croak_xs_usage(cv, "THIS");
1218 wxDateTime * THIS = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateTime" );
1219 wxDateTime * RETVAL;
1220 RETVAL = new wxDateTime( THIS->ResetTime() );
1221 ST(0) = sv_newmortal();
1222 wxPli_non_object_2_sv( aTHX_ ST(0), RETVAL, "Wx::DateTime" );
1223 wxPli_thread_sv_register( aTHX_ "Wx::DateTime", RETVAL, ST(0) );
1230 XS(XS_Wx__DateTime_IsEqualTo); /* prototype to pass -Wmissing-prototypes */
1231 XS(XS_Wx__DateTime_IsEqualTo)
1239 croak_xs_usage(cv, "THIS, dt");
1241 wxDateTime* dt = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::DateTime" );
1242 wxDateTime * THIS = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateTime" );
1244 RETVAL = THIS->IsEqualTo( *( dt ) );
1245 ST(0) = boolSV(RETVAL);
1252 XS(XS_Wx__DateTime_IsEarlierThan); /* prototype to pass -Wmissing-prototypes */
1253 XS(XS_Wx__DateTime_IsEarlierThan)
1261 croak_xs_usage(cv, "THIS, dt");
1263 wxDateTime* dt = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::DateTime" );
1264 wxDateTime * THIS = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateTime" );
1266 RETVAL = THIS->IsEarlierThan( *( dt ) );
1267 ST(0) = boolSV(RETVAL);
1274 XS(XS_Wx__DateTime_IsLaterThan); /* prototype to pass -Wmissing-prototypes */
1275 XS(XS_Wx__DateTime_IsLaterThan)
1283 croak_xs_usage(cv, "THIS, dt");
1285 wxDateTime* dt = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::DateTime" );
1286 wxDateTime * THIS = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateTime" );
1288 RETVAL = THIS->IsLaterThan( *( dt ) );
1289 ST(0) = boolSV(RETVAL);
1296 XS(XS_Wx__DateTime_IsBetween); /* prototype to pass -Wmissing-prototypes */
1297 XS(XS_Wx__DateTime_IsBetween)
1305 croak_xs_usage(cv, "THIS, dt1, dt2");
1307 wxDateTime* dt1 = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::DateTime" );
1308 wxDateTime* dt2 = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(2), "Wx::DateTime" );
1309 wxDateTime * THIS = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateTime" );
1311 RETVAL = THIS->IsBetween( *( dt1 ), *( dt2 ) );
1312 ST(0) = boolSV(RETVAL);
1319 XS(XS_Wx__DateTime_IsStrictlyBetween); /* prototype to pass -Wmissing-prototypes */
1320 XS(XS_Wx__DateTime_IsStrictlyBetween)
1328 croak_xs_usage(cv, "THIS, dt1, dt2");
1330 wxDateTime* dt1 = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::DateTime" );
1331 wxDateTime* dt2 = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(2), "Wx::DateTime" );
1332 wxDateTime * THIS = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateTime" );
1334 RETVAL = THIS->IsStrictlyBetween( *( dt1 ), *( dt2 ) );
1335 ST(0) = boolSV(RETVAL);
1342 XS(XS_Wx__DateTime_IsSameDate); /* prototype to pass -Wmissing-prototypes */
1343 XS(XS_Wx__DateTime_IsSameDate)
1351 croak_xs_usage(cv, "THIS, dt");
1353 wxDateTime* dt = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::DateTime" );
1354 wxDateTime * THIS = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateTime" );
1356 RETVAL = THIS->IsSameDate( *( dt ) );
1357 ST(0) = boolSV(RETVAL);
1364 XS(XS_Wx__DateTime_IsSameTime); /* prototype to pass -Wmissing-prototypes */
1365 XS(XS_Wx__DateTime_IsSameTime)
1373 croak_xs_usage(cv, "THIS, dt");
1375 wxDateTime* dt = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::DateTime" );
1376 wxDateTime * THIS = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateTime" );
1378 RETVAL = THIS->IsSameTime( *( dt ) );
1379 ST(0) = boolSV(RETVAL);
1386 XS(XS_Wx__DateTime_AddDate); /* prototype to pass -Wmissing-prototypes */
1387 XS(XS_Wx__DateTime_AddDate)
1395 croak_xs_usage(cv, "THIS, ds");
1397 wxDateSpan* ds = (wxDateSpan *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::DateSpan" );
1398 wxDateTime * THIS = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateTime" );
1399 wxDateTime * RETVAL;
1400 RETVAL = new wxDateTime( THIS->Add( *( ds ) ) );
1401 ST(0) = sv_newmortal();
1402 wxPli_non_object_2_sv( aTHX_ ST(0), RETVAL, "Wx::DateTime" );
1403 wxPli_thread_sv_register( aTHX_ "Wx::DateTime", RETVAL, ST(0) );
1410 XS(XS_Wx__DateTime_AddTime); /* prototype to pass -Wmissing-prototypes */
1411 XS(XS_Wx__DateTime_AddTime)
1419 croak_xs_usage(cv, "THIS, ds");
1421 wxTimeSpan* ds = (wxTimeSpan *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::TimeSpan" );
1422 wxDateTime * THIS = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateTime" );
1423 wxDateTime * RETVAL;
1424 RETVAL = new wxDateTime( THIS->Add( *( ds ) ) );
1425 ST(0) = sv_newmortal();
1426 wxPli_non_object_2_sv( aTHX_ ST(0), RETVAL, "Wx::DateTime" );
1427 wxPli_thread_sv_register( aTHX_ "Wx::DateTime", RETVAL, ST(0) );
1434 XS(XS_Wx__DateTime_GetAmPmStrings); /* prototype to pass -Wmissing-prototypes */
1435 XS(XS_Wx__DateTime_GetAmPmStrings)
1443 croak_xs_usage(cv, "THIS");
1444 PERL_UNUSED_VAR(ax); /* -Wall */
1447 wxDateTime * THIS = (wxDateTime *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateTime" );
1449 THIS->GetAmPmStrings( &am, &pm );
1450 SV* ams = wxPli_wxString_2_sv( aTHX_ am, sv_newmortal() ),
1451 * pms = wxPli_wxString_2_sv( aTHX_ pm, sv_newmortal() );
1461 XS(XS_Wx__DateTime_Today); /* prototype to pass -Wmissing-prototypes */
1462 XS(XS_Wx__DateTime_Today)
1470 croak_xs_usage(cv, "");
1472 wxDateTime * RETVAL;
1473 RETVAL = new wxDateTime( wxDateTime::Today() );
1474 ST(0) = sv_newmortal();
1475 wxPli_non_object_2_sv( aTHX_ ST(0), RETVAL, "Wx::DateTime" );
1476 wxPli_thread_sv_register( aTHX_ "Wx::DateTime", RETVAL, ST(0) );
1483 XS(XS_Wx__DateTime_Now); /* prototype to pass -Wmissing-prototypes */
1484 XS(XS_Wx__DateTime_Now)
1492 croak_xs_usage(cv, "");
1494 wxDateTime * RETVAL;
1495 RETVAL = new wxDateTime( wxDateTime::Now() );
1496 ST(0) = sv_newmortal();
1497 wxPli_non_object_2_sv( aTHX_ ST(0), RETVAL, "Wx::DateTime" );
1498 wxPli_thread_sv_register( aTHX_ "Wx::DateTime", RETVAL, ST(0) );
1505 XS(XS_Wx__DateTime_UNow); /* prototype to pass -Wmissing-prototypes */
1506 XS(XS_Wx__DateTime_UNow)
1514 croak_xs_usage(cv, "");
1516 wxDateTime * RETVAL;
1517 RETVAL = new wxDateTime( wxDateTime::UNow() );
1518 ST(0) = sv_newmortal();
1519 wxPli_non_object_2_sv( aTHX_ ST(0), RETVAL, "Wx::DateTime" );
1520 wxPli_thread_sv_register( aTHX_ "Wx::DateTime", RETVAL, ST(0) );
1527 XS(XS_Wx__DateTime_IsLeapYear); /* prototype to pass -Wmissing-prototypes */
1528 XS(XS_Wx__DateTime_IsLeapYear)
1535 if (items < 1 || items > 2)
1536 croak_xs_usage(cv, "year, cal= Gregorian");
1539 int year = (int)SvIV(ST(0));
1545 cal = (Calendar)SvIV(ST(1));
1547 RETVAL = wxDateTime::IsLeapYear( year, cal );
1548 ST(0) = boolSV(RETVAL);
1555 XS(XS_Wx__DateTime_GetMonthName); /* prototype to pass -Wmissing-prototypes */
1556 XS(XS_Wx__DateTime_GetMonthName)
1563 if (items < 1 || items > 2)
1564 croak_xs_usage(cv, "month, flags= Name_Full");
1567 Month month = (Month)SvIV(ST(0));
1573 flags = (NameFlags)SvIV(ST(1));
1575 RETVAL = wxDateTime::GetMonthName( month, flags );
1576 ST(0) = sv_newmortal();
1577 WXSTRING_OUTPUT( RETVAL, ST(0) );
1584 XS(XS_Wx__DateTime_GetWeekDayName); /* prototype to pass -Wmissing-prototypes */
1585 XS(XS_Wx__DateTime_GetWeekDayName)
1592 if (items < 1 || items > 2)
1593 croak_xs_usage(cv, "weekday, flags= Name_Full");
1596 WeekDay weekday = (WeekDay)SvIV(ST(0));
1602 flags = (NameFlags)SvIV(ST(1));
1604 RETVAL = wxDateTime::GetWeekDayName( weekday, flags );
1605 ST(0) = sv_newmortal();
1606 WXSTRING_OUTPUT( RETVAL, ST(0) );
1613 XS(XS_Wx__DateTime_GetNumberOfDaysInYear); /* prototype to pass -Wmissing-prototypes */
1614 XS(XS_Wx__DateTime_GetNumberOfDaysInYear)
1621 if (items < 0 || items > 2)
1622 croak_xs_usage(cv, "year= Inv_Year, cal= Gregorian");
1624 wxDateTime_t RETVAL;
1632 year = (int)SvIV(ST(0));
1638 cal = (Calendar)SvIV(ST(1));
1640 RETVAL = wxDateTime::GetNumberOfDays( year, cal );
1641 XSprePUSH; PUSHi((IV)RETVAL);
1647 XS(XS_Wx__DateTime_GetNumberOfDaysInMonth); /* prototype to pass -Wmissing-prototypes */
1648 XS(XS_Wx__DateTime_GetNumberOfDaysInMonth)
1655 if (items < 1 || items > 3)
1656 croak_xs_usage(cv, "month, year= Inv_Year, cal= Gregorian");
1658 wxDateTime_t RETVAL;
1660 Month month = (Month)SvIV(ST(0));
1667 year = (int)SvIV(ST(1));
1673 cal = (Calendar)SvIV(ST(2));
1675 RETVAL = wxDateTime::GetNumberOfDays( month, year, cal );
1676 XSprePUSH; PUSHi((IV)RETVAL);
1682 XS(XS_Wx__DateTime_GetCentury); /* prototype to pass -Wmissing-prototypes */
1683 XS(XS_Wx__DateTime_GetCentury)
1690 if (items < 0 || items > 1)
1691 croak_xs_usage(cv, "year= Inv_Year");
1700 year = (int)SvIV(ST(0));
1702 RETVAL = wxDateTime::GetCentury( year );
1703 XSprePUSH; PUSHi((IV)RETVAL);
1709 XS(XS_Wx__DateTime_GetCurrentYear); /* prototype to pass -Wmissing-prototypes */
1710 XS(XS_Wx__DateTime_GetCurrentYear)
1717 if (items < 0 || items > 1)
1718 croak_xs_usage(cv, "cal= Gregorian");
1727 cal = (Calendar)SvIV(ST(0));
1729 RETVAL = wxDateTime::GetCurrentYear( cal );
1730 XSprePUSH; PUSHi((IV)RETVAL);
1736 XS(XS_Wx__DateTime_GetCurrentMonth); /* prototype to pass -Wmissing-prototypes */
1737 XS(XS_Wx__DateTime_GetCurrentMonth)
1744 if (items < 0 || items > 1)
1745 croak_xs_usage(cv, "cal= Gregorian");
1754 cal = (Calendar)SvIV(ST(0));
1756 RETVAL = wxDateTime::GetCurrentMonth( cal );
1757 XSprePUSH; PUSHi((IV)RETVAL);
1763 /* INCLUDE: Returning to 'DateTime.xs' from 'perl -MExtUtils::XSpp::Cmd -e xspp -- -t ../../typemap.xsp XS/DateTime.xsp |' */
1766 /* INCLUDE: Including 'perl -MExtUtils::XSpp::Cmd -e xspp -- -t ../../typemap.xsp XS/DateSpan.xsp |' from 'DateTime.xs' */
1768 #include <wx/datetime.h>
1770 XS(XS_Wx__DateSpan_new); /* prototype to pass -Wmissing-prototypes */
1771 XS(XS_Wx__DateSpan_new)
1778 if (items < 1 || items > 5)
1779 croak_xs_usage(cv, "CLASS, year = 0, month = 0, week = 0, day = 0");
1785 char * CLASS = (char *)SvPV_nolen(ST(0));
1786 wxDateSpan * RETVAL;
1791 year = (int)SvIV(ST(1));
1797 month = (int)SvIV(ST(2));
1803 week = (int)SvIV(ST(3));
1809 day = (int)SvIV(ST(4));
1812 RETVAL = new wxDateSpan(year, month, week, day);
1813 ST(0) = sv_newmortal();
1814 wxPli_non_object_2_sv( aTHX_ ST(0), RETVAL, "Wx::DateSpan" );
1821 XS(XS_Wx__DateSpan_GetDays); /* prototype to pass -Wmissing-prototypes */
1822 XS(XS_Wx__DateSpan_GetDays)
1830 croak_xs_usage(cv, "THIS");
1832 wxDateSpan * THIS = (wxDateSpan *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateSpan" );
1836 RETVAL = THIS->GetDays();
1837 XSprePUSH; PUSHi((IV)RETVAL);
1843 XS(XS_Wx__DateSpan_GetMonths); /* prototype to pass -Wmissing-prototypes */
1844 XS(XS_Wx__DateSpan_GetMonths)
1852 croak_xs_usage(cv, "THIS");
1854 wxDateSpan * THIS = (wxDateSpan *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateSpan" );
1858 RETVAL = THIS->GetMonths();
1859 XSprePUSH; PUSHi((IV)RETVAL);
1865 XS(XS_Wx__DateSpan_GetTotalDays); /* prototype to pass -Wmissing-prototypes */
1866 XS(XS_Wx__DateSpan_GetTotalDays)
1874 croak_xs_usage(cv, "THIS");
1876 wxDateSpan * THIS = (wxDateSpan *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateSpan" );
1880 RETVAL = THIS->GetTotalDays();
1881 XSprePUSH; PUSHi((IV)RETVAL);
1887 XS(XS_Wx__DateSpan_GetWeeks); /* prototype to pass -Wmissing-prototypes */
1888 XS(XS_Wx__DateSpan_GetWeeks)
1896 croak_xs_usage(cv, "THIS");
1898 wxDateSpan * THIS = (wxDateSpan *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateSpan" );
1902 RETVAL = THIS->GetWeeks();
1903 XSprePUSH; PUSHi((IV)RETVAL);
1909 XS(XS_Wx__DateSpan_GetYears); /* prototype to pass -Wmissing-prototypes */
1910 XS(XS_Wx__DateSpan_GetYears)
1918 croak_xs_usage(cv, "THIS");
1920 wxDateSpan * THIS = (wxDateSpan *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateSpan" );
1924 RETVAL = THIS->GetYears();
1925 XSprePUSH; PUSHi((IV)RETVAL);
1931 XS(XS_Wx__DateSpan_Add); /* prototype to pass -Wmissing-prototypes */
1932 XS(XS_Wx__DateSpan_Add)
1940 croak_xs_usage(cv, "THIS, ds");
1942 wxDateSpan* ds = (wxDateSpan *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::DateSpan" );
1943 wxDateSpan * THIS = (wxDateSpan *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateSpan" );
1944 wxDateSpan * RETVAL;
1945 RETVAL = new wxDateSpan( THIS->Add( *( ds ) ) );
1946 ST(0) = sv_newmortal();
1947 wxPli_non_object_2_sv( aTHX_ ST(0), RETVAL, "Wx::DateSpan" );
1954 XS(XS_Wx__DateSpan_Multiply); /* prototype to pass -Wmissing-prototypes */
1955 XS(XS_Wx__DateSpan_Multiply)
1963 croak_xs_usage(cv, "THIS, factor");
1965 int factor = (int)SvIV(ST(1));
1966 wxDateSpan * THIS = (wxDateSpan *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateSpan" );
1967 wxDateSpan * RETVAL;
1968 RETVAL = new wxDateSpan( THIS->Multiply( factor ) );
1969 ST(0) = sv_newmortal();
1970 wxPli_non_object_2_sv( aTHX_ ST(0), RETVAL, "Wx::DateSpan" );
1977 XS(XS_Wx__DateSpan_Neg); /* prototype to pass -Wmissing-prototypes */
1978 XS(XS_Wx__DateSpan_Neg)
1986 croak_xs_usage(cv, "THIS");
1988 wxDateSpan * THIS = (wxDateSpan *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateSpan" );
1989 wxDateSpan * RETVAL;
1990 RETVAL = new wxDateSpan( THIS->Neg() );
1991 ST(0) = sv_newmortal();
1992 wxPli_non_object_2_sv( aTHX_ ST(0), RETVAL, "Wx::DateSpan" );
1999 XS(XS_Wx__DateSpan_SetDays); /* prototype to pass -Wmissing-prototypes */
2000 XS(XS_Wx__DateSpan_SetDays)
2008 croak_xs_usage(cv, "THIS, n");
2010 int n = (int)SvIV(ST(1));
2011 wxDateSpan * THIS = (wxDateSpan *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateSpan" );
2012 wxDateSpan * RETVAL;
2013 RETVAL = new wxDateSpan( THIS->SetDays( n ) );
2014 ST(0) = sv_newmortal();
2015 wxPli_non_object_2_sv( aTHX_ ST(0), RETVAL, "Wx::DateSpan" );
2022 XS(XS_Wx__DateSpan_SetYears); /* prototype to pass -Wmissing-prototypes */
2023 XS(XS_Wx__DateSpan_SetYears)
2031 croak_xs_usage(cv, "THIS, n");
2033 int n = (int)SvIV(ST(1));
2034 wxDateSpan * THIS = (wxDateSpan *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateSpan" );
2035 wxDateSpan * RETVAL;
2036 RETVAL = new wxDateSpan( THIS->SetYears( n ) );
2037 ST(0) = sv_newmortal();
2038 wxPli_non_object_2_sv( aTHX_ ST(0), RETVAL, "Wx::DateSpan" );
2045 XS(XS_Wx__DateSpan_SetMonths); /* prototype to pass -Wmissing-prototypes */
2046 XS(XS_Wx__DateSpan_SetMonths)
2054 croak_xs_usage(cv, "THIS, n");
2056 int n = (int)SvIV(ST(1));
2057 wxDateSpan * THIS = (wxDateSpan *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateSpan" );
2058 wxDateSpan * RETVAL;
2059 RETVAL = new wxDateSpan( THIS->SetMonths( n ) );
2060 ST(0) = sv_newmortal();
2061 wxPli_non_object_2_sv( aTHX_ ST(0), RETVAL, "Wx::DateSpan" );
2068 XS(XS_Wx__DateSpan_SetWeeks); /* prototype to pass -Wmissing-prototypes */
2069 XS(XS_Wx__DateSpan_SetWeeks)
2077 croak_xs_usage(cv, "THIS, n");
2079 int n = (int)SvIV(ST(1));
2080 wxDateSpan * THIS = (wxDateSpan *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateSpan" );
2081 wxDateSpan * RETVAL;
2082 RETVAL = new wxDateSpan( THIS->SetWeeks( n ) );
2083 ST(0) = sv_newmortal();
2084 wxPli_non_object_2_sv( aTHX_ ST(0), RETVAL, "Wx::DateSpan" );
2091 XS(XS_Wx__DateSpan_Subtract); /* prototype to pass -Wmissing-prototypes */
2092 XS(XS_Wx__DateSpan_Subtract)
2100 croak_xs_usage(cv, "THIS, ds");
2102 wxDateSpan* ds = (wxDateSpan *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::DateSpan" );
2103 wxDateSpan * THIS = (wxDateSpan *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::DateSpan" );
2104 wxDateSpan * RETVAL;
2105 RETVAL = new wxDateSpan( THIS->Subtract( *( ds ) ) );
2106 ST(0) = sv_newmortal();
2107 wxPli_non_object_2_sv( aTHX_ ST(0), RETVAL, "Wx::DateSpan" );
2114 /* INCLUDE: Returning to 'DateTime.xs' from 'perl -MExtUtils::XSpp::Cmd -e xspp -- -t ../../typemap.xsp XS/DateSpan.xsp |' */
2117 /* INCLUDE: Including 'perl -MExtUtils::XSpp::Cmd -e xspp -- -t ../../typemap.xsp XS/TimeSpan.xsp |' from 'DateTime.xs' */
2119 #include <wx/datetime.h>
2121 XS(XS_Wx__TimeSpan_new); /* prototype to pass -Wmissing-prototypes */
2122 XS(XS_Wx__TimeSpan_new)
2130 croak_xs_usage(cv, "CLASS");
2132 char * CLASS = (char *)SvPV_nolen(ST(0));
2133 wxTimeSpan * RETVAL;
2135 RETVAL = new wxTimeSpan();
2136 ST(0) = sv_newmortal();
2137 wxPli_non_object_2_sv( aTHX_ ST(0), RETVAL, "Wx::TimeSpan" );
2144 XS(XS_Wx__TimeSpan_newFromHMS); /* prototype to pass -Wmissing-prototypes */
2145 XS(XS_Wx__TimeSpan_newFromHMS)
2152 if (items < 1 || items > 5)
2153 croak_xs_usage(cv, "CLASS, hour = 0, minute = 0, second = 0, millisec = 0");
2159 char * CLASS = (char *)SvPV_nolen(ST(0));
2160 wxTimeSpan * RETVAL;
2165 hour = (long)SvIV(ST(1));
2171 minute = (long)SvIV(ST(2));
2177 second = (long)SvIV(ST(3));
2183 millisec = (long)SvIV(ST(4));
2185 RETVAL = new wxTimeSpan( hour, minute, second, millisec );
2186 ST(0) = sv_newmortal();
2187 wxPli_non_object_2_sv( aTHX_ ST(0), RETVAL, "Wx::TimeSpan" );
2194 XS(XS_Wx__TimeSpan_GetHours); /* prototype to pass -Wmissing-prototypes */
2195 XS(XS_Wx__TimeSpan_GetHours)
2203 croak_xs_usage(cv, "THIS");
2205 wxTimeSpan * THIS = (wxTimeSpan *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::TimeSpan" );
2209 RETVAL = THIS->GetHours();
2210 XSprePUSH; PUSHi((IV)RETVAL);
2216 XS(XS_Wx__TimeSpan_GetDays); /* prototype to pass -Wmissing-prototypes */
2217 XS(XS_Wx__TimeSpan_GetDays)
2225 croak_xs_usage(cv, "THIS");
2227 wxTimeSpan * THIS = (wxTimeSpan *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::TimeSpan" );
2231 RETVAL = THIS->GetDays();
2232 XSprePUSH; PUSHi((IV)RETVAL);
2238 XS(XS_Wx__TimeSpan_GetWeeks); /* prototype to pass -Wmissing-prototypes */
2239 XS(XS_Wx__TimeSpan_GetWeeks)
2247 croak_xs_usage(cv, "THIS");
2249 wxTimeSpan * THIS = (wxTimeSpan *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::TimeSpan" );
2253 RETVAL = THIS->GetWeeks();
2254 XSprePUSH; PUSHi((IV)RETVAL);
2260 XS(XS_Wx__TimeSpan_IsNull); /* prototype to pass -Wmissing-prototypes */
2261 XS(XS_Wx__TimeSpan_IsNull)
2269 croak_xs_usage(cv, "THIS");
2271 wxTimeSpan * THIS = (wxTimeSpan *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::TimeSpan" );
2274 RETVAL = THIS->IsNull();
2275 ST(0) = boolSV(RETVAL);
2282 XS(XS_Wx__TimeSpan_IsPositive); /* prototype to pass -Wmissing-prototypes */
2283 XS(XS_Wx__TimeSpan_IsPositive)
2291 croak_xs_usage(cv, "THIS");
2293 wxTimeSpan * THIS = (wxTimeSpan *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::TimeSpan" );
2296 RETVAL = THIS->IsPositive();
2297 ST(0) = boolSV(RETVAL);
2304 XS(XS_Wx__TimeSpan_IsNegative); /* prototype to pass -Wmissing-prototypes */
2305 XS(XS_Wx__TimeSpan_IsNegative)
2313 croak_xs_usage(cv, "THIS");
2315 wxTimeSpan * THIS = (wxTimeSpan *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::TimeSpan" );
2318 RETVAL = THIS->IsNegative();
2319 ST(0) = boolSV(RETVAL);
2326 XS(XS_Wx__TimeSpan_IsEqualTo); /* prototype to pass -Wmissing-prototypes */
2327 XS(XS_Wx__TimeSpan_IsEqualTo)
2335 croak_xs_usage(cv, "THIS, ts");
2337 wxTimeSpan* ts = (wxTimeSpan *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::TimeSpan" );
2338 wxTimeSpan * THIS = (wxTimeSpan *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::TimeSpan" );
2340 RETVAL = THIS->IsEqualTo( *( ts ) );
2341 ST(0) = boolSV(RETVAL);
2348 XS(XS_Wx__TimeSpan_IsLongerThan); /* prototype to pass -Wmissing-prototypes */
2349 XS(XS_Wx__TimeSpan_IsLongerThan)
2357 croak_xs_usage(cv, "THIS, ts");
2359 wxTimeSpan* ts = (wxTimeSpan *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::TimeSpan" );
2360 wxTimeSpan * THIS = (wxTimeSpan *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::TimeSpan" );
2362 RETVAL = THIS->IsLongerThan( *( ts ) );
2363 ST(0) = boolSV(RETVAL);
2370 XS(XS_Wx__TimeSpan_IsShorterThan); /* prototype to pass -Wmissing-prototypes */
2371 XS(XS_Wx__TimeSpan_IsShorterThan)
2379 croak_xs_usage(cv, "THIS, ts");
2381 wxTimeSpan* ts = (wxTimeSpan *) wxPli_sv_2_object( aTHX_ ST(1), "Wx::TimeSpan" );
2382 wxTimeSpan * THIS = (wxTimeSpan *) wxPli_sv_2_object( aTHX_ ST(0), "Wx::TimeSpan" );
2384 RETVAL = THIS->IsShorterThan( *( ts ) );
2385 ST(0) = boolSV(RETVAL);
2392 /* INCLUDE: Returning to 'DateTime.xs' from 'perl -MExtUtils::XSpp::Cmd -e xspp -- -t ../../typemap.xsp XS/TimeSpan.xsp |' */
2394 #if defined(__WXMSW__)
2396 #define XS( name ) WXXS( name )
2401 XS(boot_Wx__DateTime); /* prototype to pass -Wmissing-prototypes */
2402 XS(boot_Wx__DateTime)
2409 #if (PERL_REVISION == 5 && PERL_VERSION < 9)
2410 char* file = __FILE__;
2412 const char* file = __FILE__;
2415 PERL_UNUSED_VAR(cv); /* -W */
2416 PERL_UNUSED_VAR(items); /* -W */
2417 XS_VERSION_BOOTCHECK ;
2419 newXS("Wx::DateTime::new", XS_Wx__DateTime_new, file);
2420 newXS("Wx::DateTime::newFromTimeT", XS_Wx__DateTime_newFromTimeT, file);
2421 newXS("Wx::DateTime::newFromDMY", XS_Wx__DateTime_newFromDMY, file);
2422 newXS("Wx::DateTime::CLONE", XS_Wx__DateTime_CLONE, file);
2423 newXS("Wx::DateTime::DESTROY", XS_Wx__DateTime_DESTROY, file);
2424 newXS("Wx::DateTime::Format", XS_Wx__DateTime_Format, file);
2425 newXS("Wx::DateTime::FormatDate", XS_Wx__DateTime_FormatDate, file);
2426 newXS("Wx::DateTime::GetYear", XS_Wx__DateTime_GetYear, file);
2427 newXS("Wx::DateTime::GetMonth", XS_Wx__DateTime_GetMonth, file);
2428 newXS("Wx::DateTime::GetDay", XS_Wx__DateTime_GetDay, file);
2429 newXS("Wx::DateTime::GetWeekDay", XS_Wx__DateTime_GetWeekDay, file);
2430 newXS("Wx::DateTime::GetHour", XS_Wx__DateTime_GetHour, file);
2431 newXS("Wx::DateTime::GetMinute", XS_Wx__DateTime_GetMinute, file);
2432 newXS("Wx::DateTime::GetSecond", XS_Wx__DateTime_GetSecond, file);
2433 newXS("Wx::DateTime::GetMillisecond", XS_Wx__DateTime_GetMillisecond, file);
2434 newXS("Wx::DateTime::GetDayOfYear", XS_Wx__DateTime_GetDayOfYear, file);
2435 newXS("Wx::DateTime::GetWeekOfYear", XS_Wx__DateTime_GetWeekOfYear, file);
2436 newXS("Wx::DateTime::GetWeekOfMonth", XS_Wx__DateTime_GetWeekOfMonth, file);
2437 newXS("Wx::DateTime::SetTimeT", XS_Wx__DateTime_SetTimeT, file);
2438 newXS("Wx::DateTime::SetJDN", XS_Wx__DateTime_SetJDN, file);
2439 newXS("Wx::DateTime::SetHMS", XS_Wx__DateTime_SetHMS, file);
2440 newXS("Wx::DateTime::Set", XS_Wx__DateTime_Set, file);
2441 newXS("Wx::DateTime::SetYear", XS_Wx__DateTime_SetYear, file);
2442 newXS("Wx::DateTime::SetMonth", XS_Wx__DateTime_SetMonth, file);
2443 newXS("Wx::DateTime::SetDay", XS_Wx__DateTime_SetDay, file);
2444 newXS("Wx::DateTime::SetHour", XS_Wx__DateTime_SetHour, file);
2445 newXS("Wx::DateTime::SetMinute", XS_Wx__DateTime_SetMinute, file);
2446 newXS("Wx::DateTime::SetSecond", XS_Wx__DateTime_SetSecond, file);
2447 newXS("Wx::DateTime::SetMillisecond", XS_Wx__DateTime_SetMillisecond, file);
2448 newXS("Wx::DateTime::FormatISODate", XS_Wx__DateTime_FormatISODate, file);
2449 newXS("Wx::DateTime::FormatTime", XS_Wx__DateTime_FormatTime, file);
2450 newXS("Wx::DateTime::FormatISOTime", XS_Wx__DateTime_FormatISOTime, file);
2452 newXS("Wx::DateTime::ParseFormat", XS_Wx__DateTime_ParseFormat, file);
2453 newXS("Wx::DateTime::ParseDate", XS_Wx__DateTime_ParseDate, file);
2454 newXS("Wx::DateTime::ParseDateTime", XS_Wx__DateTime_ParseDateTime, file);
2455 newXS("Wx::DateTime::ParseTime", XS_Wx__DateTime_ParseTime, file);
2456 newXS("Wx::DateTime::ParseRfc822Date", XS_Wx__DateTime_ParseRfc822Date, file);
2458 newXS("Wx::DateTime::SetToCurrent", XS_Wx__DateTime_SetToCurrent, file);
2459 newXS("Wx::DateTime::ResetTime", XS_Wx__DateTime_ResetTime, file);
2460 newXS("Wx::DateTime::IsEqualTo", XS_Wx__DateTime_IsEqualTo, file);
2461 newXS("Wx::DateTime::IsEarlierThan", XS_Wx__DateTime_IsEarlierThan, file);
2462 newXS("Wx::DateTime::IsLaterThan", XS_Wx__DateTime_IsLaterThan, file);
2463 newXS("Wx::DateTime::IsBetween", XS_Wx__DateTime_IsBetween, file);
2464 newXS("Wx::DateTime::IsStrictlyBetween", XS_Wx__DateTime_IsStrictlyBetween, file);
2465 newXS("Wx::DateTime::IsSameDate", XS_Wx__DateTime_IsSameDate, file);
2466 newXS("Wx::DateTime::IsSameTime", XS_Wx__DateTime_IsSameTime, file);
2467 newXS("Wx::DateTime::AddDate", XS_Wx__DateTime_AddDate, file);
2468 newXS("Wx::DateTime::AddTime", XS_Wx__DateTime_AddTime, file);
2469 newXS("Wx::DateTime::GetAmPmStrings", XS_Wx__DateTime_GetAmPmStrings, file);
2470 newXS("Wx::DateTime::Today", XS_Wx__DateTime_Today, file);
2471 newXS("Wx::DateTime::Now", XS_Wx__DateTime_Now, file);
2472 newXS("Wx::DateTime::UNow", XS_Wx__DateTime_UNow, file);
2473 newXS("Wx::DateTime::IsLeapYear", XS_Wx__DateTime_IsLeapYear, file);
2474 newXS("Wx::DateTime::GetMonthName", XS_Wx__DateTime_GetMonthName, file);
2475 newXS("Wx::DateTime::GetWeekDayName", XS_Wx__DateTime_GetWeekDayName, file);
2476 newXS("Wx::DateTime::GetNumberOfDaysInYear", XS_Wx__DateTime_GetNumberOfDaysInYear, file);
2477 newXS("Wx::DateTime::GetNumberOfDaysInMonth", XS_Wx__DateTime_GetNumberOfDaysInMonth, file);
2478 newXS("Wx::DateTime::GetCentury", XS_Wx__DateTime_GetCentury, file);
2479 newXS("Wx::DateTime::GetCurrentYear", XS_Wx__DateTime_GetCurrentYear, file);
2480 newXS("Wx::DateTime::GetCurrentMonth", XS_Wx__DateTime_GetCurrentMonth, file);
2481 newXS("Wx::DateSpan::new", XS_Wx__DateSpan_new, file);
2482 newXS("Wx::DateSpan::GetDays", XS_Wx__DateSpan_GetDays, file);
2483 newXS("Wx::DateSpan::GetMonths", XS_Wx__DateSpan_GetMonths, file);
2484 newXS("Wx::DateSpan::GetTotalDays", XS_Wx__DateSpan_GetTotalDays, file);
2485 newXS("Wx::DateSpan::GetWeeks", XS_Wx__DateSpan_GetWeeks, file);
2486 newXS("Wx::DateSpan::GetYears", XS_Wx__DateSpan_GetYears, file);
2487 newXS("Wx::DateSpan::Add", XS_Wx__DateSpan_Add, file);
2488 newXS("Wx::DateSpan::Multiply", XS_Wx__DateSpan_Multiply, file);
2489 newXS("Wx::DateSpan::Neg", XS_Wx__DateSpan_Neg, file);
2490 newXS("Wx::DateSpan::SetDays", XS_Wx__DateSpan_SetDays, file);
2491 newXS("Wx::DateSpan::SetYears", XS_Wx__DateSpan_SetYears, file);
2492 newXS("Wx::DateSpan::SetMonths", XS_Wx__DateSpan_SetMonths, file);
2493 newXS("Wx::DateSpan::SetWeeks", XS_Wx__DateSpan_SetWeeks, file);
2494 newXS("Wx::DateSpan::Subtract", XS_Wx__DateSpan_Subtract, file);
2495 newXS("Wx::TimeSpan::new", XS_Wx__TimeSpan_new, file);
2496 newXS("Wx::TimeSpan::newFromHMS", XS_Wx__TimeSpan_newFromHMS, file);
2497 newXS("Wx::TimeSpan::GetHours", XS_Wx__TimeSpan_GetHours, file);
2498 newXS("Wx::TimeSpan::GetDays", XS_Wx__TimeSpan_GetDays, file);
2499 newXS("Wx::TimeSpan::GetWeeks", XS_Wx__TimeSpan_GetWeeks, file);
2500 newXS("Wx::TimeSpan::IsNull", XS_Wx__TimeSpan_IsNull, file);
2501 newXS("Wx::TimeSpan::IsPositive", XS_Wx__TimeSpan_IsPositive, file);
2502 newXS("Wx::TimeSpan::IsNegative", XS_Wx__TimeSpan_IsNegative, file);
2503 newXS("Wx::TimeSpan::IsEqualTo", XS_Wx__TimeSpan_IsEqualTo, file);
2504 newXS("Wx::TimeSpan::IsLongerThan", XS_Wx__TimeSpan_IsLongerThan, file);
2505 newXS("Wx::TimeSpan::IsShorterThan", XS_Wx__TimeSpan_IsShorterThan, file);
2507 /* Initialisation Section */
2509 INIT_PLI_HELPERS( wx_pli_helpers );
2514 /* End of Initialisation Section */
2516 #if (PERL_REVISION == 5 && PERL_VERSION >= 9)
2518 call_list(PL_scopestack_ix, PL_unitcheckav);