Add a seq>dlist word and make a dlist literal DL{
Implement prettyprint on dlists.db4
parent
721d035901
commit
3f4f8c678d
|
@ -1,8 +1,8 @@
|
||||||
! Copyright (C) 2007, 2009 Mackenzie Straight, Doug Coleman,
|
! Copyright (C) 2007, 2009 Mackenzie Straight, Doug Coleman,
|
||||||
! Slava Pestov.
|
! Slava Pestov.
|
||||||
! See http://factorcode.org/license.txt for BSD license.
|
! See http://factorcode.org/license.txt for BSD license.
|
||||||
USING: combinators kernel math sequences accessors deques
|
USING: accessors combinators deques fry hashtables kernel math
|
||||||
search-deques summary hashtables fry math.order ;
|
math.order parser search-deques sequences summary vocabs.loader ;
|
||||||
IN: dlists
|
IN: dlists
|
||||||
|
|
||||||
<PRIVATE
|
<PRIVATE
|
||||||
|
@ -158,6 +158,9 @@ M: dlist clear-deque ( dlist -- )
|
||||||
: dlist>seq ( dlist -- seq )
|
: dlist>seq ( dlist -- seq )
|
||||||
[ ] collector [ dlist-each ] dip ;
|
[ ] collector [ dlist-each ] dip ;
|
||||||
|
|
||||||
|
: seq>dlist ( seq -- dlist )
|
||||||
|
<dlist> [ '[ _ push-back ] each ] keep ;
|
||||||
|
|
||||||
: 1dlist ( obj -- dlist ) <dlist> [ push-front ] keep ;
|
: 1dlist ( obj -- dlist ) <dlist> [ push-front ] keep ;
|
||||||
|
|
||||||
: dlist-filter ( ... dlist quot: ( ... value -- ... ? ) -- ... dlist' )
|
: dlist-filter ( ... dlist quot: ( ... value -- ... ? ) -- ... dlist' )
|
||||||
|
@ -167,3 +170,8 @@ M: dlist clone
|
||||||
<dlist> [ '[ _ push-back ] dlist-each ] keep ;
|
<dlist> [ '[ _ push-back ] dlist-each ] keep ;
|
||||||
|
|
||||||
INSTANCE: dlist deque
|
INSTANCE: dlist deque
|
||||||
|
|
||||||
|
SYNTAX: DL{ \ } [ seq>dlist ] parse-literal ;
|
||||||
|
|
||||||
|
{ "dlists" "prettyprint" } "dlists.prettyprint" require-when
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1 @@
|
||||||
|
Doug Coleman
|
|
@ -0,0 +1,10 @@
|
||||||
|
! Copyright (C) 2011 Doug Coleman.
|
||||||
|
! See http://factorcode.org/license.txt for BSD license.
|
||||||
|
USING: dlists kernel prettyprint.custom ;
|
||||||
|
IN: dlists.prettyprint
|
||||||
|
|
||||||
|
M: dlist pprint-delims drop \ DL{ \ } ;
|
||||||
|
M: dlist >pprint-sequence dlist>seq ;
|
||||||
|
M: dlist pprint-narrow? drop f ;
|
||||||
|
M: dlist pprint* pprint-object ;
|
||||||
|
|
Loading…
Reference in New Issue