]> gitweb.factorcode.org Git - factor.git/commitdiff
Refactor circular using sequence-view
authornomennescio <nomennescio@factorcode.org>
Thu, 5 Oct 2023 09:21:54 +0000 (11:21 +0200)
committerJohn Benediktsson <mrjbq7@gmail.com>
Fri, 13 Oct 2023 16:09:30 +0000 (09:09 -0700)
Experimental commit

basis/circular/circular.factor

index a0987c435687b44d6ed639480ac488d51f41b1c0..98be562eb69d385edaaac65821df04b89929ee5f 100644 (file)
@@ -3,7 +3,7 @@
 USING: accessors arrays kernel math sequences strings ;
 IN: circular
 
-TUPLE: circular { seq read-only } { start integer } ;
+TUPLE: circular < sequence-view { start integer } ;
 
 : <circular> ( seq -- circular )
     0 circular boa ; inline
@@ -16,11 +16,9 @@ TUPLE: circular { seq read-only } { start integer } ;
 
 PRIVATE>
 
-M: circular length seq>> length ; inline
 
 M: circular virtual@ circular-wrap seq>> ; inline
 
-M: circular virtual-exemplar seq>> ; inline
 
 : change-circular-start ( n circular -- )
     ! change start to (start + n) mod length
@@ -35,7 +33,6 @@ M: circular virtual-exemplar seq>> ; inline
 : <circular-string> ( n -- circular )
     0 <string> <circular> ; inline
 
-INSTANCE: circular virtual-sequence
 
 TUPLE: growing-circular < circular { length integer } ;