classes.tuple combinators combinators.short-circuit
combinators.smart continuations debugger definitions effects
eval formatting fry grouping help help.markup help.topics io
-io.streams.string kernel macros math namespaces parser.notes
-prettyprint sequences sequences.deep sets splitting strings
-summary tools.destructors unicode vocabs vocabs.loader words
-words.constant words.symbol ;
+io.streams.string kernel macros math math.statistics namespaces
+parser.notes prettyprint sequences sequences.deep sets splitting
+strings summary tools.destructors unicode vocabs vocabs.loader
+words words.constant words.symbol ;
IN: help.lint.checks
ERROR: simple-lint-error message ;
] keep
last assert=
] vocabs-quot get call( quot -- )
- ] leaks members no-ui-disposables length [
- "%d disposable(s) leaked in example" sprintf simple-lint-error
- ] unless-zero ;
+ ] leaks members no-ui-disposables
+ dup length 0 > [
+ dup [ class-of ] histogram-by
+ [ "Leaked resources: " write ... ] with-string-writer simple-lint-error
+ ] [
+ drop
+ ] if ;
: check-examples ( element -- )
\ $example swap elements [ check-example ] each ;