add scm_c_make_struct[v]
authorAndy Wingo <wingo@pobox.com>
Mon, 7 Dec 2009 10:14:01 +0000 (11:14 +0100)
committerAndy Wingo <wingo@pobox.com>
Mon, 7 Dec 2009 10:21:59 +0000 (11:21 +0100)
commit66e78727d602b0c59bf4633951eac17d3697bfc0
tree8121466595e4d5dc1d5d0b7c929e548e3d905de0
parentea68d342f18c3d2082ce6a4fb39bd38b6af932cc
add scm_c_make_struct[v]

* libguile/struct.h (scm_c_make_struct, scm_c_make_structv): New
  functions with which you can make a struct without consing a rest
  list.

* libguile/struct.c (scm_struct_init): Refactor to take an array of init
  values, not a list.
  (scm_make_struct, scm_make_vtable_vtable): Pull the rest arg out into
  a list and pass it down to the new array-taking functions.

* libguile/memoize.c: Remove a neeless #include <alloca>.
libguile/memoize.c
libguile/struct.c
libguile/struct.h