Compare commits
2 Commits
2b1bb41c12
...
50f4c56102
Author | SHA1 | Date | |
---|---|---|---|
|
50f4c56102 | ||
|
260ba83f02 |
|
@ -248,11 +248,23 @@ those symbols.
|
||||||
|
|
||||||
@defproc[(pretty-print-set (s (Setof Any))) String]{
|
@defproc[(pretty-print-set (s (Setof Any))) String]{
|
||||||
|
|
||||||
Pretty print a set by listing its elements in alphabetic order.
|
Pretty prints a set by listing its elements in alphabetic order.
|
||||||
|
|
||||||
@examples[#:eval utils-evaluator
|
@examples[#:eval utils-evaluator
|
||||||
(pretty-print-set (set 'a 'b 1))
|
(pretty-print-set (set 'a 'b 1))
|
||||||
]}
|
]}
|
||||||
|
|
||||||
|
@defproc[(pretty-print-set-sets (ms (Setof (Setof Any)))) String]{
|
||||||
|
|
||||||
|
Pretty-prints a set of sets of symbols.
|
||||||
|
|
||||||
|
Typically used for pretty-printing the annotations on the edges of
|
||||||
|
a state graph.
|
||||||
|
|
||||||
|
@examples[#:eval utils-evaluator
|
||||||
|
(pretty-print-set-sets (set (set 'a 'b) (set 'c)))
|
||||||
|
]}
|
||||||
|
|
||||||
@section{Additional list and hash map utilities}
|
@section{Additional list and hash map utilities}
|
||||||
|
|
||||||
@section{Functions and procedures}
|
@section{Functions and procedures}
|
||||||
|
|
|
@ -10,8 +10,7 @@
|
||||||
|
|
||||||
(provide
|
(provide
|
||||||
;; Functions
|
;; Functions
|
||||||
(contract-out [pretty-print-set-sets (-> (set/c (set/c symbol?) #:kind 'dont-care) string?)]
|
(contract-out [update-vertices/unweighted (-> graph? (-> any/c any/c) graph?)]
|
||||||
[update-vertices/unweighted (-> graph? (-> any/c any/c) graph?)]
|
|
||||||
[update-graph (->* (graph?)
|
[update-graph (->* (graph?)
|
||||||
(#:v-func (-> any/c any/c)
|
(#:v-func (-> any/c any/c)
|
||||||
#:e-func (-> any/c any/c))
|
#:e-func (-> any/c any/c))
|
||||||
|
|
12
utils.rkt
12
utils.rkt
|
@ -10,7 +10,8 @@
|
||||||
any->string stringify-variable-mapping string->any map-sexp
|
any->string stringify-variable-mapping string->any map-sexp
|
||||||
read-org-sexp unorg unstringify-pairs
|
read-org-sexp unorg unstringify-pairs
|
||||||
read-org-variable-mapping unorgv read-symbol-list drop-first-last
|
read-org-variable-mapping unorgv read-symbol-list drop-first-last
|
||||||
list-sets->list-strings pretty-print-set
|
list-sets->list-strings
|
||||||
|
pretty-print-set pretty-print-set-sets
|
||||||
;; Syntax
|
;; Syntax
|
||||||
auto-hash-ref/explicit auto-hash-ref/:)
|
auto-hash-ref/explicit auto-hash-ref/:)
|
||||||
|
|
||||||
|
@ -291,3 +292,12 @@
|
||||||
(module+ test
|
(module+ test
|
||||||
(test-case "pretty-print-set"
|
(test-case "pretty-print-set"
|
||||||
(check-equal? (pretty-print-set (set 'a 'b 1)) "1 a b")))
|
(check-equal? (pretty-print-set (set 'a 'b 1)) "1 a b")))
|
||||||
|
|
||||||
|
(: pretty-print-set-sets (-> (Setof (Setof Any)) String))
|
||||||
|
(define (pretty-print-set-sets ms)
|
||||||
|
(string-join (for/list ([m ms]) : (Listof String)
|
||||||
|
(format "{~a}" (pretty-print-set m))) ""))
|
||||||
|
|
||||||
|
(module+ test
|
||||||
|
(test-case "pretty-print-set-sets"
|
||||||
|
(check-equal? (pretty-print-set-sets (set (set 'a 'b) (set 'c))) "{a b}{c}")))
|
||||||
|
|
Loading…
Reference in New Issue
Block a user