25#include "libical_icalss_export.h"
29typedef struct icalcluster_impl icalcluster;
36LIBICAL_ICALSS_EXPORT icalcluster *
icalcluster_new(
const char *key, icalcomponent *data);
45LIBICAL_ICALSS_EXPORT
void icalcluster_free(icalcluster *cluster);
47LIBICAL_ICALSS_EXPORT
const char *icalcluster_key(
const icalcluster *cluster);
49LIBICAL_ICALSS_EXPORT
int icalcluster_is_changed(
const icalcluster *cluster);
51LIBICAL_ICALSS_EXPORT
void icalcluster_mark(icalcluster *cluster);
53LIBICAL_ICALSS_EXPORT
void icalcluster_commit(icalcluster *cluster);
55LIBICAL_ICALSS_EXPORT icalcomponent *icalcluster_get_component(
const icalcluster *cluster);
57LIBICAL_ICALSS_EXPORT
int icalcluster_count_components(icalcluster *cluster,
60LIBICAL_ICALSS_EXPORT
icalerrorenum icalcluster_add_component(icalcluster *cluster,
61 icalcomponent *child);
63LIBICAL_ICALSS_EXPORT
icalerrorenum icalcluster_remove_component(icalcluster *cluster,
64 icalcomponent *child);
68LIBICAL_ICALSS_EXPORT icalcomponent *icalcluster_get_first_component(icalcluster *cluster);
70LIBICAL_ICALSS_EXPORT icalcomponent *icalcluster_get_next_component(icalcluster *cluster);
icalcomponent * icalcluster_get_current_component(icalcluster *cluster)
Iterate through components.
icalcluster * icalcluster_new(const char *key, icalcomponent *data)
Create a cluster with a key/value pair.
icalcluster * icalcluster_clone(const icalcluster *old)
Deep clone an icalcluster to a new one.
Defines the data structure for iCalendar components.
Error handling for libical.
icalerrorenum
Represents the different types of errors that can be triggered in libical.