diff --git a/basis/mirrors/mirrors.factor b/basis/mirrors/mirrors.factor index 25486d127d..6ec6a9fbb2 100644 --- a/basis/mirrors/mirrors.factor +++ b/basis/mirrors/mirrors.factor @@ -3,7 +3,7 @@ USING: assocs hashtables kernel sequences generic words arrays classes slots slots.private classes.tuple classes.tuple.private math vectors quotations accessors -combinators ; +combinators byte-arrays specialized-arrays ; IN: mirrors TUPLE: mirror { object read-only } ; @@ -48,10 +48,15 @@ M: mirror assoc-size object>> layout-of second ; INSTANCE: mirror assoc +MIXIN: enumerated-sequence +INSTANCE: array enumerated-sequence +INSTANCE: vector enumerated-sequence +INSTANCE: callable enumerated-sequence +INSTANCE: byte-array enumerated-sequence +INSTANCE: specialized-array enumerated-sequence + GENERIC: make-mirror ( obj -- assoc ) M: hashtable make-mirror ; M: integer make-mirror drop f ; -M: array make-mirror ; -M: vector make-mirror ; -M: quotation make-mirror ; +M: enumerated-sequence make-mirror ; M: object make-mirror ;