## Generated by Codox

# Walkmap 0.1.0-SNAPSHOT

# walkmap.utils

Miscellaneous utility functions.

### =ish

`(=ish n1 n2)``(=ish n1 n2 tolerance)`

True if numbers `n1`, `n2` are roughly equal; that is to say, equal to within `tolerance` (defaults to one part in a million).

view source

### check-kind-type

#### macro

`(check-kind-type object expected)``(check-kind-type object checkfn expected)`

If `object` is not of kind-type `expected`, throws an IllegalArgumentException with an appropriate message; otherwise, returns `object`. If `checkfn` is supplied, it should be a function which tests whether the object is of the expected kind-type.

Macro, so that the exception is thrown from the calling function.

view source

### check-kind-type-seq

#### macro

`(check-kind-type-seq s expected)``(check-kind-type-seq s checkfn expected)`

If some item on sequence `s` is not of the `expected` kind-type, throws an IllegalArgumentException with an appropriate message; otherwise, returns `object`. If `checkfn` is supplied, it should be a function which tests whether the object is of the expected kind-type.

Macro, so that the exception is thrown from the calling function.

view source

### deep-merge

`(deep-merge & vals)`

Recursively merges maps. If vals are not maps, the last value wins.

view source

### kind-type

`(kind-type object)`

Identify the type of an `object`, e.g. for logging. If it has a `:kind` key, it’s one of ours, and that’s what we want. Otherwise, we want its type; but the type of `nil` is `nil`, which doesn’t get printed when assembling error ,essages, so return “nil”.

view source

### truncate

`(truncate s n)`

If string `s` is more than `n` characters long, return the first `n` characters; otherwise, return `s`.

view source