From e919e71163988dc54ec986b98407143b6616a0de Mon Sep 17 00:00:00 2001 From: Joe Groff Date: Tue, 25 Aug 2009 21:54:19 -0500 Subject: [PATCH] test array slots in STRUCTs --- extra/classes/struct/struct-tests.factor | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/extra/classes/struct/struct-tests.factor b/extra/classes/struct/struct-tests.factor index 272b8eb129..6c7a4cf35d 100644 --- a/extra/classes/struct/struct-tests.factor +++ b/extra/classes/struct/struct-tests.factor @@ -1,9 +1,10 @@ ! (c)Joe Groff bsd license USING: accessors alien.c-types alien.libraries -alien.structs.fields alien.syntax classes.struct combinators +alien.structs.fields alien.syntax ascii classes.struct combinators destructors io.encodings.utf8 io.pathnames io.streams.string kernel libc literals math multiline namespaces prettyprint -prettyprint.config see system tools.test ; +prettyprint.config see sequences specialized-arrays.ushort +system tools.test ; IN: classes.struct.tests << @@ -145,3 +146,16 @@ LIBRARY: f-cdecl FUNCTION: int ffi_test_11 ( int a, struct-test-ffi-foo b, int c ) ; [ 14 ] [ 1 2 3 struct-test-ffi-foo 4 ffi_test_11 ] unit-test + +STRUCT: struct-test-array-slots + { x int } + { y ushort[6] initial: ushort-array{ 2 3 5 7 11 13 } } + { z int } ; + +[ 11 ] [ struct-test-array-slots y>> 4 swap nth ] unit-test + +[ t ] [ + struct-test-array-slots + [ y>> [ 8 3 ] dip set-nth ] + [ y>> ushort-array{ 2 3 5 8 11 13 } sequence= ] bi +] unit-test