diff options
author | Hugo Hörnquist <hugo@lysator.liu.se> | 2019-04-10 00:51:35 +0200 |
---|---|---|
committer | Hugo Hörnquist <hugo@lysator.liu.se> | 2019-04-10 00:51:35 +0200 |
commit | 124f8b42c01a440c6998a13ef13996ac1d312092 (patch) | |
tree | fc7faf2a6faa11fa6968f9b4a12e5467513bfe1f /module/vcalendar | |
parent | Add {format,print}-recur-rule. (diff) | |
download | calp-124f8b42c01a440c6998a13ef13996ac1d312092.tar.gz calp-124f8b42c01a440c6998a13ef13996ac1d312092.tar.xz |
Rework how attributes and properties are accessed.
Made the fact that properties belong to an attribute shine through to
scheme. This by setting the SCM field in the strbuf:ers in my
vcomponents to a pair of their old SCM value, and a hash table
representing the properties.
This also meant that the primitive set-attribute! could be replaced by a
set-car! on the pair returned by the primitive get-attribute. And that
both set- and get-property now simple works on the hash table returned
by get-attribute.
The major problem with this release was that I for a while missed that
DEEP_COPY(strbuf) now also needed to deep copy the SCM values. Without
that attributes in a copied vcomponent would be shared with the
original. This mainly lead to repeating events all being the same.
Diffstat (limited to 'module/vcalendar')
-rw-r--r-- | module/vcalendar/primitive.scm | 6 |
1 files changed, 0 insertions, 6 deletions
diff --git a/module/vcalendar/primitive.scm b/module/vcalendar/primitive.scm index 400750c9..27ae6e17 100644 --- a/module/vcalendar/primitive.scm +++ b/module/vcalendar/primitive.scm @@ -11,13 +11,7 @@ %vcomponent-get-type %vcomponent-set-type! - %vcomponent-set-attribute! %vcomponent-get-attribute - - %vcomponent-get-property - %vcomponent-set-property! - %vcomponent-property-list - %vcomponent-attribute-list %vcomponent-shallow-copy)) |