diff options
author | Kaz Kylheku <kaz@kylheku.com> | 2019-02-19 07:00:30 -0800 |
---|---|---|
committer | Kaz Kylheku <kaz@kylheku.com> | 2019-02-19 07:00:30 -0800 |
commit | fb4b9e9b632e88b1328a76c5636a338e73c9c746 (patch) | |
tree | 2b23df3e76a9fe96c354ee343d33205771e423b9 /ffi.h | |
parent | 15b7c542dc44899e8db7addfcc2f1c1c4a188b49 (diff) | |
download | txr-fb4b9e9b632e88b1328a76c5636a338e73c9c746.tar.gz txr-fb4b9e9b632e88b1328a76c5636a338e73c9c746.tar.bz2 txr-fb4b9e9b632e88b1328a76c5636a338e73c9c746.zip |
structs: optimize struct creating functions.
We reduce consing in the structure instantiating API.
* struct.c (make_struct_impl): New static function, formed
from make_struct. This takes two "struct args *" arguments,
for both the slot/pair property list and the BOA list.
(make_struct): Now a wrapper for make_struct_impl.
(struct_from_plist): Call make_struct_impl instead of
make_struct, avoiding the args_get_list operation that
potentially conses args on the stack into a list.
Diagnosis is improved because make_struct_impl takes a self
argument.
(struct_from_args): Call make_struct_impl instead of
make_struct.
Diffstat (limited to 'ffi.h')
0 files changed, 0 insertions, 0 deletions