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/srfi | |
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 '')
0 files changed, 0 insertions, 0 deletions