155 |
SCM |
SCM |
156 |
gh_chars2byvect (const char *d, long n) |
gh_chars2byvect (const char *d, long n) |
157 |
{ |
{ |
158 |
char *m = scm_must_malloc (n * sizeof (char), "vector"); |
char *m = scm_gc_malloc (n * sizeof (char), "vector"); |
159 |
memcpy (m, d, n * sizeof (char)); |
memcpy (m, d, n * sizeof (char)); |
160 |
return makvect (m, n, scm_tc7_byvect); |
return makvect (m, n, scm_tc7_byvect); |
161 |
} |
} |
163 |
SCM |
SCM |
164 |
gh_shorts2svect (const short *d, long n) |
gh_shorts2svect (const short *d, long n) |
165 |
{ |
{ |
166 |
char *m = scm_must_malloc (n * sizeof (short), "vector"); |
char *m = scm_gc_malloc (n * sizeof (short), "vector"); |
167 |
memcpy (m, d, n * sizeof (short)); |
memcpy (m, d, n * sizeof (short)); |
168 |
return makvect (m, n, scm_tc7_svect); |
return makvect (m, n, scm_tc7_svect); |
169 |
} |
} |
171 |
SCM |
SCM |
172 |
gh_longs2ivect (const long *d, long n) |
gh_longs2ivect (const long *d, long n) |
173 |
{ |
{ |
174 |
char *m = scm_must_malloc (n * sizeof (long), "vector"); |
char *m = scm_gc_malloc (n * sizeof (long), "vector"); |
175 |
memcpy (m, d, n * sizeof (long)); |
memcpy (m, d, n * sizeof (long)); |
176 |
return makvect (m, n, scm_tc7_ivect); |
return makvect (m, n, scm_tc7_ivect); |
177 |
} |
} |
179 |
SCM |
SCM |
180 |
gh_ulongs2uvect (const unsigned long *d, long n) |
gh_ulongs2uvect (const unsigned long *d, long n) |
181 |
{ |
{ |
182 |
char *m = scm_must_malloc (n * sizeof (unsigned long), "vector"); |
char *m = scm_gc_malloc (n * sizeof (unsigned long), "vector"); |
183 |
memcpy (m, d, n * sizeof (unsigned long)); |
memcpy (m, d, n * sizeof (unsigned long)); |
184 |
return makvect (m, n, scm_tc7_uvect); |
return makvect (m, n, scm_tc7_uvect); |
185 |
} |
} |
187 |
SCM |
SCM |
188 |
gh_floats2fvect (const float *d, long n) |
gh_floats2fvect (const float *d, long n) |
189 |
{ |
{ |
190 |
char *m = scm_must_malloc (n * sizeof (float), "vector"); |
char *m = scm_gc_malloc (n * sizeof (float), "vector"); |
191 |
memcpy (m, d, n * sizeof (float)); |
memcpy (m, d, n * sizeof (float)); |
192 |
return makvect (m, n, scm_tc7_fvect); |
return makvect (m, n, scm_tc7_fvect); |
193 |
} |
} |
195 |
SCM |
SCM |
196 |
gh_doubles2dvect (const double *d, long n) |
gh_doubles2dvect (const double *d, long n) |
197 |
{ |
{ |
198 |
char *m = scm_must_malloc (n * sizeof (double), "vector"); |
char *m = scm_gc_malloc (n * sizeof (double), "vector"); |
199 |
memcpy (m, d, n * sizeof (double)); |
memcpy (m, d, n * sizeof (double)); |
200 |
return makvect (m, n, scm_tc7_dvect); |
return makvect (m, n, scm_tc7_dvect); |
201 |
} |
} |