diff options
author | Marius Vollmer <mvo@zagadka.de> | 2004-12-27 02:10:14 +0000 |
---|---|---|
committer | Marius Vollmer <mvo@zagadka.de> | 2004-12-27 02:10:14 +0000 |
commit | b590aceb96a8a483b0938e5b2fbe7c94fe9e7a1e (patch) | |
tree | bccd3db8aaa254187e3a681b230b9dc0deb27788 /libguile/random.c | |
parent | 1d0df896c97b3f876700206a4b5e2d8d452cece4 (diff) | |
download | guile-b590aceb96a8a483b0938e5b2fbe7c94fe9e7a1e.tar.gz |
(scm_uniform_vector_elements,
scm_u8vector_elements, etc): Made return value "const".
(scm_uniform_vector_writable_elements,
scm_u8vector_writable_elements, etc): New.
(scm_uniform_vector_release, scm_uniform_vector_release_elements):
Renamed former to latter. Added explicit call to
scm_remember_upto_here_1.
(scm_frame_uniform_vector_release,
scm_frame_uniform_vector_release_elements): Renamed former to latter.
(scm_uniform_vector_release_writable_elements,
scm_frame_uniform_vector_release_writable_elements): New. Takes
crown of longest identifier yet.
Changed all uses as required by the changes above.
Diffstat (limited to 'libguile/random.c')
-rw-r--r-- | libguile/random.c | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/libguile/random.c b/libguile/random.c index 6c1e75d05..42a28097e 100644 --- a/libguile/random.c +++ b/libguile/random.c @@ -439,11 +439,11 @@ vector_scale_x (SCM v, double c) else { /* must be a f64vector. */ - double *elts = scm_f64vector_elements (v); + double *elts = scm_f64vector_writable_elements (v); n = scm_c_uniform_vector_length (v); while (n-- > 0) elts[n] *= c; - scm_uniform_vector_release (v); + scm_uniform_vector_release_writable_elements (v); } } @@ -464,14 +464,14 @@ vector_sum_squares (SCM v) else { /* must be a f64vector. */ - double *elts = scm_f64vector_elements (v); + const double *elts = scm_f64vector_elements (v); n = scm_c_uniform_vector_length (v); while (n-- > 0) { x = elts[n]; sum += x * x; } - scm_uniform_vector_release (v); + scm_uniform_vector_release_elements (v); } return sum; } @@ -545,11 +545,11 @@ SCM_DEFINE (scm_random_normal_vector_x, "random:normal-vector!", 1, 1, 0, else { /* must be a f64vector. */ - double *elts = scm_f64vector_elements (v); + double *elts = scm_f64vector_writable_elements (v); n = scm_c_uniform_vector_length (v); while (n-- > 0) elts[n] = scm_c_normal01 (SCM_RSTATE (state)); - scm_uniform_vector_release (v); + scm_uniform_vector_release_writable_elements (v); } return SCM_UNSPECIFIED; } |