diff options
author | Kaz Kylheku <kaz@kylheku.com> | 2022-10-04 22:30:36 -0700 |
---|---|---|
committer | Kaz Kylheku <kaz@kylheku.com> | 2022-10-04 22:30:36 -0700 |
commit | bf35c239b435fa34bf3e5b1b286d66ecfbd7ca0a (patch) | |
tree | e24e8b3ad308a1822c1c0b2d29ccd59255f80b5f /time.h | |
parent | 9c1e2974fad18576c0051d046f03d799d2879fdc (diff) | |
download | txr-bf35c239b435fa34bf3e5b1b286d66ecfbd7ca0a.tar.gz txr-bf35c239b435fa34bf3e5b1b286d66ecfbd7ca0a.tar.bz2 txr-bf35c239b435fa34bf3e5b1b286d66ecfbd7ca0a.zip |
oop: allow multiple :init, :fini, etc.
The motivation is that struct clause macros defined
using define-struct-clause may want to introduce
their own initializers and finalizers for the specific
stuff they add to the struct. The uniqueness restrictions
on these initializing and finalizing clauses makes
it impossible to use two clause macros which both want
to inject a definition of the same initializer or finalizer
type.
* stdlib/struct.tl (defstruct): Don't enforce that there
be at most one clause in the category of :init,
:postinit, :fini or :postini. Multiple are allowed.
They all execute left-to-right except for :fini.
* tests/012/fini.tl: New tests.
* tests/012/fini.expected: Updated.
* txr.1: Documented.
Diffstat (limited to 'time.h')
0 files changed, 0 insertions, 0 deletions