]> gitweb.factorcode.org Git - factor.git/commitdiff
specialized-vectors: add specialized-vectors.mirrors vocab for inspector support
authorSlava Pestov <slava@slava-pestovs-macbook-pro.local>
Fri, 11 Jun 2010 21:11:21 +0000 (17:11 -0400)
committerSlava Pestov <slava@slava-pestovs-macbook-pro.local>
Fri, 11 Jun 2010 21:11:21 +0000 (17:11 -0400)
basis/specialized-vectors/mirrors/authors.txt [new file with mode: 0644]
basis/specialized-vectors/mirrors/mirrors.factor [new file with mode: 0644]
basis/specialized-vectors/specialized-vectors.factor

diff --git a/basis/specialized-vectors/mirrors/authors.txt b/basis/specialized-vectors/mirrors/authors.txt
new file mode 100644 (file)
index 0000000..1901f27
--- /dev/null
@@ -0,0 +1 @@
+Slava Pestov
diff --git a/basis/specialized-vectors/mirrors/mirrors.factor b/basis/specialized-vectors/mirrors/mirrors.factor
new file mode 100644 (file)
index 0000000..61d9a40
--- /dev/null
@@ -0,0 +1,6 @@
+! Copyright (C) 2010 Slava Pestov.
+! See http://factorcode.org/license.txt for BSD license.
+USING: specialized-vectors mirrors ;
+IN: specialized-vectors.mirrors
+
+INSTANCE: specialized-vector enumerated-sequence
index f96aea6815a7fae21f98d7b614f2b7ed84833dc8..f1a7a014ebaa6329203acdd86f121bb07ed2a630 100644 (file)
@@ -3,25 +3,27 @@
 USING: accessors alien alien.c-types alien.parser assocs
 compiler.units functors growable kernel lexer math namespaces
 parser prettyprint.custom sequences specialized-arrays
-specialized-arrays.private strings vocabs vocabs.parser
-vocabs.generated fry make ;
+specialized-arrays.private strings vocabs vocabs.loader
+vocabs.parser vocabs.generated fry make ;
 FROM: sequences.private => nth-unsafe ;
 FROM: specialized-arrays.private => nth-c-ptr direct-like ;
 QUALIFIED: vectors.functor
 IN: specialized-vectors
 
+MIXIN: specialized-vector
+
 <PRIVATE
 
 FUNCTOR: define-vector ( T -- )
 
-V   DEFINES-CLASS ${T}-vector
+V DEFINES-CLASS ${T}-vector
 
-A   IS      ${T}-array
-<A> IS      <${A}>
+A          IS ${T}-array
+<A>        IS <${A}>
 <direct-A> IS <direct-${A}>
 
->V  DEFERS >${V}
-V{  DEFINES ${V}{
+>V DEFERS >${V}
+V{ DEFINES ${V}{
 
 WHERE
 
@@ -45,6 +47,7 @@ M: V nth-c-ptr underlying>> nth-c-ptr ; inline
 
 SYNTAX: V{ \ } [ >V ] parse-literal ;
 
+INSTANCE: V specialized-vector
 INSTANCE: V growable
 
 ;FUNCTOR
@@ -78,3 +81,5 @@ SYNTAX: SPECIALIZED-VECTOR:
     scan-c-type
     [ define-array-vocab use-vocab ]
     [ define-vector-vocab use-vocab ] bi ;
+
+{ "specialized-vectors" "mirrors" } "specialized-vectors.mirrors" require-when