diff options
author | Andy Wingo <wingo@pobox.com> | 2014-02-08 22:11:36 +0100 |
---|---|---|
committer | Andy Wingo <wingo@pobox.com> | 2014-02-08 22:11:36 +0100 |
commit | a0ef1252af3204e9d86087c5752f48790575d372 (patch) | |
tree | 6b3d4f1573426aeff1df5d2830c88f8f3a8971a4 | |
parent | e6658f527e2decf4b353f14b36b71c6009ebe3d6 (diff) | |
download | guile-a0ef1252af3204e9d86087c5752f48790575d372.tar.gz |
Add "vector" member to scm_t_array_handle
* libguile/array-handle.h (scm_t_array_handle): Add "vector" member.
* libguile/array-handle.c (scm_array_get_handle): Initialize the vector
member.
-rw-r--r-- | libguile/array-handle.c | 1 | ||||
-rw-r--r-- | libguile/array-handle.h | 3 |
2 files changed, 4 insertions, 0 deletions
diff --git a/libguile/array-handle.c b/libguile/array-handle.c index 10cd375d4..daa1fcbc7 100644 --- a/libguile/array-handle.c +++ b/libguile/array-handle.c @@ -75,6 +75,7 @@ scm_array_get_handle (SCM array, scm_t_array_handle *h) h->writable_elements = NULL; h->vref = impl->vref; h->vset = impl->vset; + h->vector = SCM_I_ARRAYP (array) ? SCM_I_ARRAY_V (array) : array; impl->get_handle (array, h); } diff --git a/libguile/array-handle.h b/libguile/array-handle.h index e777d4de0..abe617ff5 100644 --- a/libguile/array-handle.h +++ b/libguile/array-handle.h @@ -106,6 +106,9 @@ typedef struct scm_t_array_handle { scm_t_array_element_type element_type; const void *elements; void *writable_elements; + + /* The backing store for the array, and its accessors. */ + SCM vector; scm_t_array_ref vref; scm_t_array_set vset; } scm_t_array_handle; |