In case anybody's interested, I'm messing around with a ClojureScript
wrapper type that can implement various core protocols, e.g.:
(deftype ClojureObject [o]
IFn
(-invoke [_] (.invoke o))
(-invoke [_ a] (.invoke o a))
;; etc
)
On 31 December 2012 09:56, Stuart Campbell wrote:
> OK,
OK, unless there's some way to set arbitrary properties on a Java object, I
guess this isn't possible...
ClojureScript:cljs.user> (aset js/Packages.clojure.lang.IFn "prototype"
(js/Object.))
"Error evaluating:" (aset js/Packages.clojure.lang.IFn "prototype"
(js/Object.)) :as "(Packages.clojure.lan
Ah, you're right -- thanks. That leads me to another error:
ClojureScript:cljs.user> (extend-type js/Packages.clojure.lang.IFn IFn
(-invoke ([this] (.invoke this
"Error evaluating:" (extend-type js/Packages.clojure.lang.IFn IFn (-invoke
([this] (.invoke this :as
"Packages.clojure.lang.IFn.
I think you've just formatted your code incorrectly. Did you try something
like this?
(extend-type js/Packages.clojure.lang.IFn
IFn
(-invoke
([this] (.invoke this))
([this a] (.invoke this a)))
)
On Sat, Dec 29, 2012 at 8:22 PM, Stuart Campbell wrote:
> Hi all,
>
> I'm toying wit