## ICalRecurIterator ICalRecurIterator |

## Synopsis

    #include <i-cal-recurrence-type>
    #include <i-cal-timetype>

    #define             I_CAL_RECUR_ITERATOR_TYPE
    struct              ICalRecurIterator;
    struct              ICalRecurIteratorClass;
    ICalRecurIterator * i_cal_recur_iterator_new_full       (icalrecur_iterator *native,
                                                             GObject *owner);
    ICalRecurIterator * i_cal_recur_iterator_new            (ICalRecurrenceType *rule,
                                                             ICalTimetype *dtstart);
    ICalTimetype *      i_cal_recur_iterator_next           (ICalRecurIterator *iterator);
    void                i_cal_recur_iterator_free           (ICalRecurIterator *iterator);

## Object Hierarchy

      GObject
       +----ICalObject
             +----ICalRecurIterator

## Description

## Details

### I_CAL_RECUR_ITERATOR_TYPE

    #define             I_CAL_RECUR_ITERATOR_TYPE

### struct ICalRecurIterator

    struct ICalRecurIterator;

This is the ICalRecurIterator instance.

### struct ICalRecurIteratorClass

    struct ICalRecurIteratorClass {
    };

This is the ICalRecurIterator class.

### i_cal_recur_iterator_new_full ()

    ICalRecurIterator * i_cal_recur_iterator_new_full       (icalrecur_iterator *native,
                                                             GObject *owner);

Create a new libical-glib object from the native libical object and the owner.

`native` : | The native libical object.
`owner` : | The parent.
Returns : | The newly create libical-glib object. [transfer full]

Since 1.0

### i_cal_recur_iterator_new ()

    ICalRecurIterator * i_cal_recur_iterator_new            (ICalRecurrenceType *rule,
                                                             ICalTimetype *dtstart);

Create a ICalRecurIterator.

`rule` : | The rule applied on the ICalRecurIterator.
`dtstart` : | The start time of the recurrence.
Returns : | The newly created ICalRecurIterator. [transfer full]

Since 1.0

### i_cal_recur_iterator_next ()

    ICalTimetype *      i_cal_recur_iterator_next           (ICalRecurIterator *iterator);

Get the next occurrence from an iterator.

`iterator` : | The iterator.
Returns : | The next occurrence according to this recurrence rule. [transfer none]

Since 1.0

### i_cal_recur_iterator_free ()

    void                i_cal_recur_iterator_free           (ICalRecurIterator *iterator);

Free an iterator.

`iterator` : | The iterator to be freed.

Since 1.0