scalajs-weakreferences
provides a correct implementation of java.lang.ref.WeakReference
and java.lang.ref.ReferenceQueue
in Scala.js.
It assumes that the target platform supports JavaScript's WeakRef
and FinalizationRegistry
, which are becoming standard in ECMAScript 2021.
Attempts to use WeakReference
or ReferenceQueue
will throw ReferenceError
s if they are not supported.
Add the following dependency to your project settings:
libraryDependencies += ("org.scala-js" %%% "scalajs-weakreferences" % "1.0.0").cross(CrossVersion.for3Use2_13)
When using a crossProject
, add the above in .jsSettings(...)
.
You can then use java.lang.ref.WeakReference
and java.lang.ref.ReferenceQueue
.
scalajs-weakreferences
is distributed under the Apache 2.0 license, like Scala.js itself.