]> gitweb.factorcode.org Git - factor.git/commitdiff
S{ } syntax for structs
authorJoe Groff <joe@victoria.(none)>
Wed, 12 Aug 2009 19:59:33 +0000 (15:59 -0400)
committerJoe Groff <joe@victoria.(none)>
Wed, 12 Aug 2009 19:59:33 +0000 (15:59 -0400)
basis/prettyprint/backend/backend.factor
extra/classes/struct/prettyprint/prettyprint.factor
extra/classes/struct/struct.factor

index cd759efb516977f826041d8064a11a076a8ccfdd..2f87e5ab057aa0a6a1ce07215c0676b16a01d1a3 100644 (file)
@@ -138,12 +138,12 @@ M: pathname pprint*
     boa-tuples? get [ pprint-object ] [
         [
             <flow
-            \ T{ pprint-word
+            dup pprint-delims drop pprint-word
             dup class pprint-word
             t <inset
-            tuple>assoc [ pprint-slot-value ] assoc-each
+            dup tuple>assoc [ pprint-slot-value ] assoc-each
             block>
-            \ } pprint-word
+            pprint-delims nip pprint-word
             block>
         ] check-recursion
     ] if ;
index 22d48a0942359b4d5d69bd6de2aae7de8bdca962..b63f153b16611c23bc2b3b60e79159dd5ca6c128 100644 (file)
@@ -1,5 +1,5 @@
 ! (c)Joe Groff bsd license
-USING: classes.struct kernel prettyprint.backend
+USING: classes.struct kernel prettyprint.backend prettyprint.custom
 prettyprint.sections see.private sequences words ;
 IN: classes.struct.prettyprint
 
@@ -8,3 +8,6 @@ M: struct-class see-class*
     <block "struct-slots" word-prop [ pprint-slot ] each
     block> pprint-; block> ;
 
+M: struct pprint-delims
+    drop \ S{ \ } ;
+
index 29e5718def12fbe49a1a45208bf977f8897c48ac..4c94c826db1da144f8ce9dff3663eca30a368c7a 100644 (file)
@@ -160,3 +160,7 @@ SYNTAX: STRUCT:
 USING: vocabs vocabs.loader ;
 
 "prettyprint" vocab [ "classes.struct.prettyprint" require ] when
+
+SYNTAX: S{
+    POSTPONE: T{ ;
+