From 041b70cd1cd7883a12a71612784d937361aa5efd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Hugo=20H=C3=B6rnquist?= Date: Wed, 19 Apr 2023 15:47:54 +0200 Subject: Split data-store and data-format indo separate doc pages. --- doc/ref/guile/data-formats.texi | 25 ++++++++++++++++ doc/ref/guile/data-stores.texi | 36 +++++++++++++++++++++++ doc/ref/guile/save-load.texi | 63 ----------------------------------------- 3 files changed, 61 insertions(+), 63 deletions(-) create mode 100644 doc/ref/guile/data-formats.texi create mode 100644 doc/ref/guile/data-stores.texi delete mode 100644 doc/ref/guile/save-load.texi (limited to 'doc/ref/guile') diff --git a/doc/ref/guile/data-formats.texi b/doc/ref/guile/data-formats.texi new file mode 100644 index 00000000..037d3ae7 --- /dev/null +++ b/doc/ref/guile/data-formats.texi @@ -0,0 +1,25 @@ +@node Data Formats +@section Data Formats +A data format is some way that an individual event may get serialized +to disk. The default is iCalendar (TODO reference RFC 5545), but +others might be available (TODO footnote and reference xcal). + +Each available format should be included as +@code{(vcomponent formats @var{format-name})}. +Which module corresponds to what file type is currently defined out of band. + +Each module should expose the following procedures. + +@defun serialize component port +Write a serialized representation of @var{component} to @var{port}. +@end defun + +@defun deserialize port +Read a serialized representation of a component from @var{port}, and +return the deserialized instance of this object. +@end defun + +@subsection iCalendar +RFC 5545 + +@subsection xCal diff --git a/doc/ref/guile/data-stores.texi b/doc/ref/guile/data-stores.texi new file mode 100644 index 00000000..ec3962da --- /dev/null +++ b/doc/ref/guile/data-stores.texi @@ -0,0 +1,36 @@ +@node Data Stores +@section Data Stores +Data stores are persistant stores for events, such as databases or the +file system. Each data store can support any number of data formats, +but which is an implementation detail of that format and shouldn't be +needed information from the high level view. +@footnote{It is however important for interoperability with other programs}. + +@c (make #:path ``hello'') + +@defun path store +@end defun + +@deftp {GOOPS method} get-calendar this +Returns a vcomponent object of type @code{VCALENDAR}. Should contain +all @code{VEVENT} components of this calendar. +@end deftp + +@deftp {GOOPS method} get-by-uid this uid +Return the event object with UID equal to the string @var{uid}. +@end deftp + +@deftp {GOOPS method} queue-save this event +Queue a save event of @var{event} to the store. +@end deftp + +@deftp {GOOPS method} flush this +Force write of all queued actions. +@end deftp + +@subsection VDir +[VDIR]: http://vdirsyncer.pimutils.org/en/latest/vdir.html + +@subsection File + +@subsection SQLite diff --git a/doc/ref/guile/save-load.texi b/doc/ref/guile/save-load.texi deleted file mode 100644 index 136b2f39..00000000 --- a/doc/ref/guile/save-load.texi +++ /dev/null @@ -1,63 +0,0 @@ -@node Saving and Loading -@section Saving and Loading - -@subsection Data Formats -A data format is some way that an individual event may get serialized -to disk. The default is iCalendar (TODO reference RFC 5545), but -others might be available (TODO footnote and reference xcal). - -Each available format should be included as -@code{(vcomponent formats @var{format-name})}. -Which module corresponds to what file type is currently defined out of band. - -Each module should expose the following procedures. - -@defun serialize component port -Write a serialized representation of @var{component} to @var{port}. -@end defun - -@defun deserialize port -Read a serialized representation of a component from @var{port}, and -return the deserialized instance of this object. -@end defun - -@subsubsection iCalendar -RFC 5545 - -@subsubsection xCal - -@subsection Data Stores -Data stores are persistant stores for events, such as databases or the -file system. Each data store can support any number of data formats, -but which is an implementation detail of that format and shouldn't be -needed information from the high level view. -@footnote{It is however important for interoperability with other programs}. - -@c (make #:path ``hello'') - -@defun path store -@end defun - -@deftp {GOOPS method} get-calendar this -Returns a vcomponent object of type @code{VCALENDAR}. Should contain -all @code{VEVENT} components of this calendar. -@end deftp - -@deftp {GOOPS method} get-by-uid this uid -Return the event object with UID equal to the string @var{uid}. -@end deftp - -@deftp {GOOPS method} queue-save this event -Queue a save event of @var{event} to the store. -@end deftp - -@deftp {GOOPS method} flush this -Force write of all queued actions. -@end deftp - -@subsubsection VDir -[VDIR]: http://vdirsyncer.pimutils.org/en/latest/vdir.html - -@subsubsection File - -@subsubsection SQLite -- cgit v1.2.3