named-tuples: make work with bignum indices.

windows-high-dpi
John Benediktsson 2018-02-17 18:34:32 -08:00
parent fb382b52c7
commit a3e1364c4f
2 changed files with 10 additions and 4 deletions

View File

@ -1,4 +1,4 @@
USING: arrays assocs named-tuples sequences tools.test ; USING: arrays assocs math named-tuples sequences tools.test ;
IN: named-tuples.tests IN: named-tuples.tests
TUPLE: foo x y z ; TUPLE: foo x y z ;
@ -29,3 +29,7 @@ INSTANCE: foo named-tuple
{ 1 } [ T{ foo f 1 2 3 } "x" of ] unit-test { 1 } [ T{ foo f 1 2 3 } "x" of ] unit-test
{ 2 } [ T{ foo f 1 2 3 } "y" of ] unit-test { 2 } [ T{ foo f 1 2 3 } "y" of ] unit-test
{ 3 } [ T{ foo f 1 2 3 } "z" of ] unit-test { 3 } [ T{ foo f 1 2 3 } "z" of ] unit-test
{ 1 } [ 0 >bignum T{ foo f 1 2 3 } nth ] unit-test
{ 2 } [ 1 >bignum T{ foo f 1 2 3 } nth ] unit-test
{ 3 } [ 2 >bignum T{ foo f 1 2 3 } nth ] unit-test

View File

@ -2,7 +2,7 @@
! See http://factorcode.org/license.txt for BSD license ! See http://factorcode.org/license.txt for BSD license
USING: accessors assocs classes classes.tuple USING: accessors assocs classes classes.tuple
classes.tuple.private kernel sequences sequences.private classes.tuple.private kernel math sequences sequences.private
slots.private ; slots.private ;
IN: named-tuples IN: named-tuples
@ -24,9 +24,11 @@ INSTANCE: named-tuple assoc
M: named-tuple length tuple-size ; M: named-tuple length tuple-size ;
M: named-tuple nth-unsafe array-nth ; M: named-tuple nth-unsafe
[ integer>fixnum ] dip array-nth ;
M: named-tuple set-nth-unsafe set-array-nth ; M: named-tuple set-nth-unsafe
[ integer>fixnum ] dip set-array-nth ;
M: named-tuple like class-of slots>tuple ; M: named-tuple like class-of slots>tuple ;