Files
evolution/libical/design-data/value-mem-semantics.txt
Federico Mena Quintero 2be48d8855 Replace struct icalattachtype by an opaque icalattach that is properly
2001-09-10  Federico Mena Quintero  <federico@ximian.com>

	Replace struct icalattachtype by an opaque icalattach that is
	properly reference-counted.

	* src/libical/icalvalueimpl.h (struct icalattach_impl): Private
	declaration for the icalattach type.
	(struct icalvalue_impl): Make the v_attach field be an icalattach *.

	* src/libical/icaltypes.h: Added declaration for icalattach.  This
	is now an opaque type; the implementation is in icalvalueimpl.h.
	(struct icalattachtype): Removed.

	* src/libical/icaltypes.c (icalattach_new_from_url): New function.
	(icalattach_new_from_data): New function.
	(icalattach_ref): New function.
	(icalattach_unref): New function.
	(icalattach_get_is_url): New function.
	(icalattach_get_url): New function.
	(icalattach_get_data): New function.
	(icalattachtype_new): Removed.
	(icalattachtype_free): Removed.
	(icalattachtype_add_reference): Removed.
	(icalattachtype_set_url): Removed.
	(icalattachtype_get_url): Removed.
	(icalattachtype_set_base64): Removed.
	(icalattachtype_get_base64): Removed.
	(icalattachtype_set_binary): Removed.
	(icalattachtype_get_binary): Removed.

	* src/libical/icalderivedvalue.c.in (icalvalue_new_attach): New
	function; we implement it ourselves.
	(icalvalue_set_attach): New function.
	(icalvalue_get_attach): New function.

	* src/libical/icalvalue.c (icalmemory_strdup_and_dequote): Made
	static.
	(icalvalue_new_clone): Clone BINARY and ATTACH values by refing
	the old attach value.
	(icalvalue_free): Free BINARY and ATTACH values.
	(icalvalue_attach_as_ical_string): Handle the new icalattachtype.
	(icalvalue_compare): Ditto.

	* src/libical/Makefile.am (CLEANFILES): Added ical.h.

	* design-data/*: Mark ATTACH as a custom value.

svn path=/trunk/; revision=12745
2001-09-10 21:54:44 +00:00

20 lines
413 B
Plaintext

ATTACH icalattach *
BINARY char*
BOOLEAN int
CAL-ADDRESS char*
DATE time_t
DATE-TIME time_t
DATE-TIME-DATE time_t
DATE-TIME-PERIOD struct icalperiodtype
DURATION struct icaldurationtype
FLOAT float
GEO struct icalgeotype
INTEGER int
PERIOD struct icalperiodtype
RECUR struct icalrecurrencetype
TEXT char*
TIME time_t
TRIGGER struct icaltriggertimetype
URI char*
UTC-OFFSET int