Libical API Documentation 4.0 UNRELEASED Go to the stable 3.0 documentation
Loading...
Searching...
No Matches
icalvalue.h
Go to the documentation of this file.
1/*======================================================================
2 FILE: icalvalue.h
3 CREATOR: eric 20 March 1999
4
5 SPDX-FileCopyrightText: 2000, Eric Busboom <eric@civicknowledge.com>
6 SPDX-License-Identifier: LGPL-2.1-only OR MPL-2.0
7 ======================================================================*/
8
13
14#ifndef ICALVALUE_H
15#define ICALVALUE_H
16
17#include "libical_ical_export.h"
18#include "icalvalueimpl.h"
19
20#include <stdbool.h>
21
31LIBICAL_ICAL_EXPORT icalvalue *icalvalue_new(icalvalue_kind kind);
32
42LIBICAL_ICAL_EXPORT icalvalue *icalvalue_clone(const icalvalue *old);
43
53LIBICAL_ICAL_EXPORT icalvalue *icalvalue_new_from_string(icalvalue_kind kind, const char *str);
54
60LIBICAL_ICAL_EXPORT void icalvalue_free(icalvalue *value);
61
69LIBICAL_ICAL_EXPORT bool icalvalue_is_valid(const icalvalue *value);
70
82LIBICAL_ICAL_EXPORT const char *icalvalue_as_ical_string(const icalvalue *value);
83
93LIBICAL_ICAL_EXPORT char *icalvalue_as_ical_string_r(const icalvalue *value);
94
102LIBICAL_ICAL_EXPORT icalvalue_kind icalvalue_isa(const icalvalue *value);
103
111LIBICAL_ICAL_EXPORT bool icalvalue_isa_value(void *value);
112
123LIBICAL_ICAL_EXPORT icalparameter_xliccomparetype icalvalue_compare(const icalvalue *a,
124 const icalvalue *b);
125
126/* Special, non autogenerated value accessors */
127
128/* Defined in icalderivedvalue.h */
129/* icalvalue* icalvalue_new_recur (struct icalrecurrencetype *v); */
130/* void icalvalue_set_recur(icalvalue* value, struct icalrecurrencetype *v); */
131/* struct icalrecurrencetype *icalvalue_get_recur(const icalvalue* value); */
132
133/* icalvalue* icalvalue_new_trigger (struct icaltriggertype v); */
134/* void icalvalue_set_trigger(icalvalue* value, struct icaltriggertype v); */
135/* struct icaltriggertype icalvalue_get_trigger(const icalvalue* value); */
136
137/* icalvalue* icalvalue_new_datetimeperiod (struct icaldatetimeperiodtype v); */
138/* void icalvalue_set_datetimeperiod(icalvalue* value, */
139/* struct icaldatetimeperiodtype v); */
140/* struct icaldatetimeperiodtype icalvalue_get_datetimeperiod(const icalvalue* value); */
141
142/* Convert enumerations */
143
153LIBICAL_ICAL_EXPORT icalvalue_kind icalvalue_string_to_kind(const char *str);
154
163LIBICAL_ICAL_EXPORT const char *icalvalue_kind_to_string(const icalvalue_kind kind);
164
172LIBICAL_ICAL_EXPORT bool icalvalue_kind_is_valid(const icalvalue_kind kind);
173
179LIBICAL_ICAL_EXPORT void icalvalue_reset_kind(icalvalue *value);
180
193LIBICAL_ICAL_EXPORT bool icalvalue_encode_ical_string(const char *szText,
194 char *szEncText, int maxBufferLen);
195
208LIBICAL_ICAL_EXPORT bool icalvalue_decode_ical_string(const char *szText,
209 char *szDecText, int maxBufferLen);
210
211/* For the library only -- do not make visible */
213extern void print_date_to_string(char *str, const struct icaltimetype *data);
214extern void print_datetime_to_string(char *str, const struct icaltimetype *data);
216
217#endif /*ICALVALUE_H */
icalvalue_kind icalvalue_string_to_kind(const char *str)
icalvalue_kind icalvalue_isa(const icalvalue *value)
Definition icalvalue.c:1320
bool icalvalue_is_valid(const icalvalue *value)
Definition icalvalue.c:867
bool icalvalue_isa_value(void *value)
Definition icalvalue.c:1329
icalvalue * icalvalue_clone(const icalvalue *old)
Definition icalvalue.c:65
icalvalue * icalvalue_new_from_string(icalvalue_kind kind, const char *str)
Definition icalvalue.c:788
icalparameter_xliccomparetype icalvalue_compare(const icalvalue *a, const icalvalue *b)
Definition icalvalue.c:1353
icalvalue * icalvalue_new(icalvalue_kind kind)
Definition icalvalue.c:60
bool icalvalue_decode_ical_string(const char *szText, char *szDecText, int maxBufferLen)
Definition icalvalue.c:1587
void icalvalue_free(icalvalue *value)
Definition icalvalue.c:793
void icalvalue_reset_kind(icalvalue *value)
Definition icalvalue.c:1528
char * icalvalue_as_ical_string_r(const icalvalue *value)
Definition icalvalue.c:1220
bool icalvalue_encode_ical_string(const char *szText, char *szEncText, int maxBufferLen)
Definition icalvalue.c:1553
bool icalvalue_kind_is_valid(const icalvalue_kind kind)
const char * icalvalue_kind_to_string(const icalvalue_kind kind)
const char * icalvalue_as_ical_string(const icalvalue *value)
Definition icalvalue.c:1211