sig
  type 'a t = java'lang'ThreadLocal java_instance
  external make : '-> 'ThreadLocal.t = "ocamljava_threadlocal_make"
  external get : 'ThreadLocal.t -> 'a = "ocamljava_threadlocal_get"
  external remove : 'ThreadLocal.t -> unit = "ocamljava_threadlocal_remove"
  external set : 'ThreadLocal.t -> '-> unit = "ocamljava_threadlocal_set"
  val null : 'ThreadLocal.t
  external is_null : 'ThreadLocal.t -> bool = "java is_null"
  external is_not_null : 'ThreadLocal.t -> bool = "java is_not_null"
  val wrap : 'ThreadLocal.t -> 'ThreadLocal.t option
  val unwrap : 'ThreadLocal.t option -> 'ThreadLocal.t
end