summaryrefslogtreecommitdiff
path: root/libguile/srfi-4.i.c
diff options
context:
space:
mode:
authorMarius Vollmer <mvo@zagadka.de>2005-01-09 22:06:56 +0000
committerMarius Vollmer <mvo@zagadka.de>2005-01-09 22:06:56 +0000
commit4ea4bc4c403d7113dd93034d13230fb80cd2b3a9 (patch)
tree846cb743c34da89747ec5b2e815a677cc18079a1 /libguile/srfi-4.i.c
parent9598a4060a558e70675ac3321597b68d914c6148 (diff)
downloadguile-4ea4bc4c403d7113dd93034d13230fb80cd2b3a9.tar.gz
* srfi-4.h, srfi-4.c, srfi-4.i.c (scm_i_uniform_vector_ref_proc,
scm_i_uniform_vector_set_proc): New. (u8ref, u8set, s8ref, s8set, etc): New. (uvec_reffers, uvec_setters): New. (uvec_to_list): Use generic scm_array_handle_ref instead of uvec_fast_ref since scm_array_handle_ref should be faster now. More changes like this are upcoming.
Diffstat (limited to 'libguile/srfi-4.i.c')
-rw-r--r--libguile/srfi-4.i.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/libguile/srfi-4.i.c b/libguile/srfi-4.i.c
index f914ba020..714f4d644 100644
--- a/libguile/srfi-4.i.c
+++ b/libguile/srfi-4.i.c
@@ -180,6 +180,18 @@ F(scm_,TAG,vector_writable_elements) (SCM uvec,
return F(scm_array_handle_,TAG,_writable_elements) (h);
}
+static SCM
+F(,TAG,ref) (scm_t_array_handle *handle, ssize_t pos)
+{
+ return uvec_fast_ref (TYPE, handle->elements, pos);
+}
+
+static void
+F(,TAG,set) (scm_t_array_handle *handle, ssize_t pos, SCM val)
+{
+ uvec_fast_set_x (TYPE, handle->writable_elements, pos, val);
+}
+
#undef paste
#undef s_paste
#undef stringify