function
(in ds key &opt dflt )
Get value in ds at key , works on associative data structures.
Arrays , tuples , tables , structs , strings , symbols , and buffers are
all associative and can be used. Arrays , tuples , strings , buffers ,
and symbols must use integer keys that are in bounds or an error is
raised. Structs and tables can take any value as a key except nil
and will return nil or dflt if not found.
(in :yo 0 )
# => 121
(in "yo" 0 )
# => 121
(get [4 5 6 ] -1 ) # => nil
(in [4 5 6 ] -1 42 ) # error
(get-in [4 5 6 ] [-1 ] 42 ) # => 42
(get {:a 1 } -1 ) # => nil
(in {:a 1 } -1 42 ) # => 42
(get-in {:a 1 } [-1 ] 42 ) # => 42
(in [10 11 12 13 ] 0 42 ) # => 10
(in {:a 10 :b 20 } :a 42 ) # => 10
(in [10 11 12 ] 99 42 ) # error
(in [10 11 12 ] -1 42 ) # error
(in [10 11 12 ] -2 42 ) # error
(in {:a 1 } :z 42 ) # => 42
(map (fn [x ] (in x 0 42 )) [ 'a :a "a" [97 ] @[97 ] {0 97 } @{0 97 } {:a 1 } ])
# => @[ 97 97 97 97 97 97 97 42 ]