diff options
author | Hugo Hörnquist <hugo@lysator.liu.se> | 2023-02-23 03:22:34 +0100 |
---|---|---|
committer | Hugo Hörnquist <hugo@lysator.liu.se> | 2023-04-10 23:45:29 +0200 |
commit | f82286eabe54ad58dc32df81fd3dcbb4e2bb2e65 (patch) | |
tree | c791ad35d990a8cc8e1b2f202ec86a426969bea2 /module/vcomponent/formats | |
parent | Minor style change. (diff) | |
download | calp-f82286eabe54ad58dc32df81fd3dcbb4e2bb2e65.tar.gz calp-f82286eabe54ad58dc32df81fd3dcbb4e2bb2e65.tar.xz |
Put base for new store-load interface.
Diffstat (limited to '')
-rw-r--r-- | module/vcomponent/formats/ical.scm | 18 | ||||
-rw-r--r-- | module/vcomponent/formats/xcal.scm | 20 |
2 files changed, 38 insertions, 0 deletions
diff --git a/module/vcomponent/formats/ical.scm b/module/vcomponent/formats/ical.scm new file mode 100644 index 00000000..294642de --- /dev/null +++ b/module/vcomponent/formats/ical.scm @@ -0,0 +1,18 @@ +(define-module (vcomponent formats ical) + :use-module ((vcomponent formats ical output) + :select (component->ical-string)) + :use-module ((vcomponent formats ical parse) + :select (parse-calendar)) + :export (serialize + deserialize + ) + ) + + +(define (serialize component port) + (display (component->ical-string component) + port)) + +(define (deserialize port) + (parse-calendar port) + ) diff --git a/module/vcomponent/formats/xcal.scm b/module/vcomponent/formats/xcal.scm new file mode 100644 index 00000000..2732a5a7 --- /dev/null +++ b/module/vcomponent/formats/xcal.scm @@ -0,0 +1,20 @@ +(define-module (vcomponent formats xcal) + :use-module (sxml simple) + :use-module ((vcomponent formats xcal output) + :select (vcomponent->sxcal ns-wrap)) + :use-module ((vcomponent formats xcal parse) + :select (sxcal->vcomponent)) + :use-module ((hnh util) :select (->)) + :export (serialize deserialize)) + + +(define (serialize component port) + (-> (vcomponent->sxcal component) + ns-wrap + (sxml->xml port) + )) + + +(define (deserialize port) + (-> (xml->sxml port) + sxcal->vcomponent)) |