case: A powerful replacement for base::switch

Description Usage Arguments Examples

Description

See https://clojuredocs.org/clojure.core/case.

Usage

1
case(obj, ...)

Arguments

obj

An object/value.

...

An odd number of expressions. A set of test/expression pairs plus an expression to be evalauted if all tests fail. Equivalent of nested if (identical(obj, a)) b else c calls.

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
case(x,
     list(1,2), "abc",
     c('a','b'), 123,
     NULL, "oh no!",
     "something else")
# Is transformed to:
# if (identical(x, list(1, 2))) "abc" else
#     if (identical(x, c("a","b"))) 123 else
#         if (identical(x, NULL)) "oh no!" else
#             "something else"

alekrutkowski/clojR documentation built on May 11, 2019, 11:24 p.m.