summaryrefslogtreecommitdiffstats
path: root/ffi.h
diff options
context:
space:
mode:
authorKaz Kylheku <kaz@kylheku.com>2017-06-11 11:06:38 -0700
committerKaz Kylheku <kaz@kylheku.com>2017-06-11 11:06:38 -0700
commit9fca64292256f980e8cb15cea8c3e6cc7fd76374 (patch)
tree0bf7936c668cd69ce87b6b2735427b817e14bb7a /ffi.h
parent0687743dcfad79dba202b4411a5b51f6954cf3b2 (diff)
downloadtxr-9fca64292256f980e8cb15cea8c3e6cc7fd76374.tar.gz
txr-9fca64292256f980e8cb15cea8c3e6cc7fd76374.tar.bz2
txr-9fca64292256f980e8cb15cea8c3e6cc7fd76374.zip
ffi: handle sub operation in carray.
Thus, [ca 3..5] syntax works for slice extraction. However, this works referentially, not by making a copy. The extracted subarray points to the original memory, until carray-dup is invoked on it. * ffi.c (carray_sub): New function. (ffi_init): carray-sub intrinsic registered. * ffi.h (carray_sub): Declared. * lib.c (sub): Handle carray via carray_sub. * txr.1: Documented changes in sub.
Diffstat (limited to 'ffi.h')
-rw-r--r--ffi.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/ffi.h b/ffi.h
index 2e88f167..4e45eaf2 100644
--- a/ffi.h
+++ b/ffi.h
@@ -104,6 +104,7 @@ val vec_carray(val carray, val null_term_p);
val list_carray(val carray, val null_term_p);
val carray_ref(val carray, val idx);
val carray_refset(val carray, val idx, val newval);
+val carray_sub(val carray, val from, val to);
val carray_get(val carray);
val carray_getz(val carray);
val carray_put(val array, val seq);