macro
boot.janet on line 213, column 1
(case dispatch & pairs)
Select the body that equals the dispatch value. When `pairs` has an
odd number of elements, the last is the default expression. If no
match is found, returns nil.
# Walk from the API is defined using a case
(defn walk
`Iterate over the values in ast and apply f
to them. Collect the results in a data structure. If ast is not a
table, struct, array, or tuple,
returns form.`
[f form]
(case (type form)
:table (walk-dict f form)
:struct (table/to-struct (walk-dict f form))
:array (walk-ind f form)
:tuple (let [x (walk-ind f form)]
(if (= :parens (tuple/type form))
(tuple/slice x)
(tuple/brackets ;x)))
form))
(defn output [x]
(case x
:a "a"
"b"))
(output :a) # => "a"
(output "anything else") # => "b"