thingy.core
Instantiate thingy objects and assign their invocation function.
Example:
- 
Create thingy instance. (def a-thingy (make-thingy :a :b)) a-thingy ;; => [:a :b]
- 
Define an invocation function, e.g., with defn.(defn foo "A 3-arity example, concatenating three vector-like objects." [x y z] (concat x y z))
- 
Assign the thingy invocation function. (assign-thingy-fn! foo)
- 
Test invocation behavior of the thingy. (a-thingy [:c :d] [:e :f]) ;; => (:a :b :c :d :e :f)Note: This evaluation concatenates a thingy instance, a-thingy, with two standard Clojure vectors.
assign-thingy-fn!
(assign-thingy-fn! f)Synchronously mutates the invocation function of all thingy instances to function f.
f is a function with an arity of 0 to 9, inclusive. If f accepts an argument, the thingy instance is that first argument, followed by up to eight additional arguments.
See also make-thingy and thingy.core.
make-thingy
(make-thingy & xs)Given elements xs, returns an instance of a thingy. Analogous to clojure.core/vector.
Example:
(make-thingy 1 2 3) ;; => [1 2 3]
See also assign-thingy-fn! and thingy.core.