specialized-vectors: add specialized-vectors.mirrors vocab for inspector support
parent
4c4a86ee72
commit
f2a18c08cb
|
|
@ -0,0 +1 @@
|
||||||
|
Slava Pestov
|
||||||
|
|
@ -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
|
||||||
|
|
@ -3,25 +3,27 @@
|
||||||
USING: accessors alien alien.c-types alien.parser assocs
|
USING: accessors alien alien.c-types alien.parser assocs
|
||||||
compiler.units functors growable kernel lexer math namespaces
|
compiler.units functors growable kernel lexer math namespaces
|
||||||
parser prettyprint.custom sequences specialized-arrays
|
parser prettyprint.custom sequences specialized-arrays
|
||||||
specialized-arrays.private strings vocabs vocabs.parser
|
specialized-arrays.private strings vocabs vocabs.loader
|
||||||
vocabs.generated fry make ;
|
vocabs.parser vocabs.generated fry make ;
|
||||||
FROM: sequences.private => nth-unsafe ;
|
FROM: sequences.private => nth-unsafe ;
|
||||||
FROM: specialized-arrays.private => nth-c-ptr direct-like ;
|
FROM: specialized-arrays.private => nth-c-ptr direct-like ;
|
||||||
QUALIFIED: vectors.functor
|
QUALIFIED: vectors.functor
|
||||||
IN: specialized-vectors
|
IN: specialized-vectors
|
||||||
|
|
||||||
|
MIXIN: specialized-vector
|
||||||
|
|
||||||
<PRIVATE
|
<PRIVATE
|
||||||
|
|
||||||
FUNCTOR: define-vector ( T -- )
|
FUNCTOR: define-vector ( T -- )
|
||||||
|
|
||||||
V DEFINES-CLASS ${T}-vector
|
V DEFINES-CLASS ${T}-vector
|
||||||
|
|
||||||
A IS ${T}-array
|
A IS ${T}-array
|
||||||
<A> IS <${A}>
|
<A> IS <${A}>
|
||||||
<direct-A> IS <direct-${A}>
|
<direct-A> IS <direct-${A}>
|
||||||
|
|
||||||
>V DEFERS >${V}
|
>V DEFERS >${V}
|
||||||
V{ DEFINES ${V}{
|
V{ DEFINES ${V}{
|
||||||
|
|
||||||
WHERE
|
WHERE
|
||||||
|
|
||||||
|
|
@ -45,6 +47,7 @@ M: V nth-c-ptr underlying>> nth-c-ptr ; inline
|
||||||
|
|
||||||
SYNTAX: V{ \ } [ >V ] parse-literal ;
|
SYNTAX: V{ \ } [ >V ] parse-literal ;
|
||||||
|
|
||||||
|
INSTANCE: V specialized-vector
|
||||||
INSTANCE: V growable
|
INSTANCE: V growable
|
||||||
|
|
||||||
;FUNCTOR
|
;FUNCTOR
|
||||||
|
|
@ -78,3 +81,5 @@ SYNTAX: SPECIALIZED-VECTOR:
|
||||||
scan-c-type
|
scan-c-type
|
||||||
[ define-array-vocab use-vocab ]
|
[ define-array-vocab use-vocab ]
|
||||||
[ define-vector-vocab use-vocab ] bi ;
|
[ define-vector-vocab use-vocab ] bi ;
|
||||||
|
|
||||||
|
{ "specialized-vectors" "mirrors" } "specialized-vectors.mirrors" require-when
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue