## e-cal-component-range e-cal-component-range — An ECalComponentRange structure |

## Functions

ECalComponentRange * | e_cal_component_range_new ()
ECalComponentRange * | e_cal_component_range_new_take ()
ECalComponentRange * | e_cal_component_range_copy ()
void | e_cal_component_range_free ()
ECalComponentRangeKind | e_cal_component_range_get_kind ()
void | e_cal_component_range_set_kind ()
ECalComponentDateTime * | e_cal_component_range_get_datetime ()
void | e_cal_component_range_set_datetime ()
void | e_cal_component_range_take_datetime ()

## Types and Values

| ECalComponentRange

## Object Hierarchy

        GBoxed
        ╰── ECalComponentRange

## Includes

    #include <libecal/libecal.h>

## Description

Contains functions to work with the ECalComponentRange structure.

## Functions

### e_cal_component_range_new ()

    ECalComponentRange *
    e_cal_component_range_new (ECalComponentRangeKind kind,
                               const ECalComponentDateTime *datetime);

Creates a new ECalComponentRange describing a range. The returned structure should be freed with `e_cal_component_range_free()`, when no longer needed.

#### Parameters

kind | an ECalComponentRangeKind |
datetime | an ECalComponentDateTime. | [not nullable]

#### Returns

a newly allocated ECalComponentRange.

[transfer full]

Since: 3.34

### e_cal_component_range_new_take ()

    ECalComponentRange *
    e_cal_component_range_new_take (ECalComponentRangeKind kind,
                                    ECalComponentDateTime *datetime);

Creates a new ECalComponentRange describing a range, similar to `e_cal_component_range_new()` except is assumes ownership of `datetime` . The returned structure should be freed with `e_cal_component_range_free()`, when no longer needed.

[skip]

#### Parameters

kind | an ECalComponentRangeKind |
datetime | an ECalComponentDateTime. | [not nullable][transfer full]

#### Returns

a newly allocated ECalComponentRange.

[transfer full]

Since: 3.34

### e_cal_component_range_copy ()

    ECalComponentRange *
    e_cal_component_range_copy (const ECalComponentRange *range);

#### Parameters

range | an ECalComponentRange to copy. | [not nullable]

#### Returns

a newly allocated ECalComponentRange, copy of `range` . The returned structure should be freed with `e_cal_component_range_free()`, when no longer needed.

[transfer full]

Since: 3.34

### e_cal_component_range_free ()

    void
    e_cal_component_range_free (gpointer range);

Free the `range` , previously allocated by `e_cal_component_range_new()`, `e_cal_component_range_new_take()` or `e_cal_component_range_copy()`.

[skip]

#### Parameters

range | an ECalComponentRange to free. | [type ECalComponentRange][nullable]

Since: 3.34

### e_cal_component_range_get_kind ()

    ECalComponentRangeKind
    e_cal_component_range_get_kind (const ECalComponentRange *range);

#### Parameters

range | an ECalComponentRange |

#### Returns

the ECalComponentRangeKind of the `range`

Since: 3.34

### e_cal_component_range_set_kind ()

    void
    e_cal_component_range_set_kind (ECalComponentRange *range,
                                    ECalComponentRangeKind kind);

Set the `kind` of the `range` .

#### Parameters

range | an ECalComponentRange |
kind | an ECalComponentRangeKind |

Since: 3.34

### e_cal_component_range_get_datetime ()

    ECalComponentDateTime *
    e_cal_component_range_get_datetime (const ECalComponentRange *range);

Returns the date/time of the `range` . The returned ECalComponentDateTime is owned by `range` and should not be freed. It's valid until the `range` is freed or its date/time changed.

#### Parameters

range | an ECalComponentRange |

#### Returns

the date/time of the `range` , as an ECalComponentDateTime.

[transfer none]

Since: 3.34

### e_cal_component_range_set_datetime ()

    void
    e_cal_component_range_set_datetime (ECalComponentRange *range,
                                        const ECalComponentDateTime *datetime);

Set the date/time part of the `range` .

#### Parameters

range | an ECalComponentRange |
datetime | an ECalComponentDateTime. | [not nullable]

Since: 3.34

### e_cal_component_range_take_datetime ()

    void
    e_cal_component_range_take_datetime (ECalComponentRange *range,
                                         ECalComponentDateTime *datetime);

Set the date/time part of the `range` , similar to `e_cal_component_range_set_datetime()`, except it assumes ownership of the `datetime` .

[skip]

#### Parameters

range | an ECalComponentRange |
datetime | an ECalComponentDateTime. | [not nullable][transfer full]

Since: 3.34

## Types and Values

### ECalComponentRange

    typedef struct _ECalComponentRange ECalComponentRange;

Describes a range. Use the functions below to work with it.