sequences.zipped: adding zip virtual sequence.

db4
John Benediktsson 2012-09-26 18:07:53 -07:00
parent 5903b2ccf5
commit 7aeae251bc
4 changed files with 28 additions and 0 deletions

View File

@ -0,0 +1 @@
John Benediktsson

View File

@ -0,0 +1 @@
Virtual "zip" sequences

View File

@ -0,0 +1,7 @@
! Copyright (C) 2012 John Benediktsson
! See http://factorcode.org/license.txt for BSD license
USING: arrays tools.test ;
IN: sequences.zipped
{ { { 1 4 } { 2 5 } { 3 6 } } }
[ { 1 2 3 } { 4 5 6 } <zipped> >array ] unit-test

View File

@ -0,0 +1,19 @@
! Copyright (C) 2012 John Benediktsson
! See http://factorcode.org/license.txt for BSD license
USING: accessors arrays kernel math sequences
sequences.private ;
IN: sequences.zipped
TUPLE: zipped
{ keys sequence read-only }
{ values sequence read-only } ;
C: <zipped> zipped
M: zipped length
[ keys>> ] [ values>> ] bi min-length ;
M: zipped nth-unsafe
[ keys>> nth-unsafe ] [ values>> nth-unsafe ] 2bi 2array ;
INSTANCE: zipped immutable-sequence