diff options
author | Ken Murchison <murch@fastmail.com> | 2021-03-18 11:43:12 -0400 |
---|---|---|
committer | Allen Winter <allen.winter@kdab.com> | 2021-04-11 14:29:16 -0400 |
commit | 45ad8c0a2014998aceb289ffbedf0d4f01892666 (patch) | |
tree | 276b2bc22b043aa4352a7a2dff47dcd1faf221d3 | |
parent | 857f27b88e06db0de71a4c269d40759b97a02f6f (diff) | |
download | libical-git-45ad8c0a2014998aceb289ffbedf0d4f01892666.tar.gz |
Added initializers for structured types
-rw-r--r-- | src/libical/icalduration.h | 2 | ||||
-rw-r--r-- | src/libical/icalperiod.h | 6 | ||||
-rw-r--r-- | src/libical/icalrecur.h | 19 | ||||
-rw-r--r-- | src/libical/icaltime.h | 2 |
4 files changed, 29 insertions, 0 deletions
diff --git a/src/libical/icalduration.h b/src/libical/icalduration.h index 64e51519..5618de01 100644 --- a/src/libical/icalduration.h +++ b/src/libical/icalduration.h @@ -43,6 +43,8 @@ struct icaldurationtype unsigned int seconds; }; +#define ICALDURATIONTYPE_INITIALIZER { 0, 0, 0, 0, 0, 0 } + /** * @brief Creates a new ::icaldurationtype from a duration in seconds. * @param t The duration in seconds diff --git a/src/libical/icalperiod.h b/src/libical/icalperiod.h index 6f2be741..6d2e72c0 100644 --- a/src/libical/icalperiod.h +++ b/src/libical/icalperiod.h @@ -41,6 +41,12 @@ struct icalperiodtype struct icaldurationtype duration; }; +#define ICALPERIODTYPE_INITIALIZER { \ + ICALTIMETYPE_INITIALIZER, \ + ICALTIMETYPE_INITIALIZER, \ + ICALDURATIONTYPE_INITIALIZER \ +} + /** * @brief Constructs a new ::icalperiodtype from @a str * @param str The string from which to construct a time period diff --git a/src/libical/icalrecur.h b/src/libical/icalrecur.h index dea9144b..2ae9c02d 100644 --- a/src/libical/icalrecur.h +++ b/src/libical/icalrecur.h @@ -200,6 +200,25 @@ struct icalrecurrencetype icalrecurrencetype_skip skip; }; +#define ICALRECURRENCETYPE_INITIALIZER { \ + ICAL_NO_RECURRENCE, /* freq */ \ + ICALTIMETYPE_INITIALIZER, /* until */ \ + 0, /* count */ \ + 1, /* interval */ \ + ICAL_MONDAY_WEEKDAY, /* week_start */ \ + { ICAL_RECURRENCE_ARRAY_MAX_BYTE }, /* by_second */ \ + { ICAL_RECURRENCE_ARRAY_MAX_BYTE }, /* by_minute */ \ + { ICAL_RECURRENCE_ARRAY_MAX_BYTE }, /* by_hour */ \ + { ICAL_RECURRENCE_ARRAY_MAX_BYTE }, /* by_day */ \ + { ICAL_RECURRENCE_ARRAY_MAX_BYTE }, /* by_month_day */ \ + { ICAL_RECURRENCE_ARRAY_MAX_BYTE }, /* by_year_day */ \ + { ICAL_RECURRENCE_ARRAY_MAX_BYTE }, /* by_week_no */ \ + { ICAL_RECURRENCE_ARRAY_MAX_BYTE }, /* by_month */ \ + { ICAL_RECURRENCE_ARRAY_MAX_BYTE }, /* by_set_pos */ \ + NULL, /* rscale */ \ + ICAL_SKIP_OMIT /* skip */ \ +} + LIBICAL_ICAL_EXPORT int icalrecurrencetype_rscale_is_supported(void); LIBICAL_ICAL_EXPORT icalarray *icalrecurrencetype_rscale_supported_calendars(void); diff --git a/src/libical/icaltime.h b/src/libical/icaltime.h index b44ed1b0..fd03d9c4 100644 --- a/src/libical/icaltime.h +++ b/src/libical/icaltime.h @@ -119,6 +119,8 @@ struct icaltimetype typedef struct icaltimetype icaltimetype; +#define ICALTIMETYPE_INITIALIZER { 0, 0, 0, 0, 0, 0, 0, 0, 0} + /** @brief Constructor. * * @returns A null time, which indicates no time has been set. |