|
Scala example source code file (ReferenceWrapper.scala)
The Scala ReferenceWrapper.scala source code
/* __ *\
** ________ ___ / / ___ Scala API **
** / __/ __// _ | / / / _ | (c) 2006-2011, LAMP/EPFL **
** __\ \/ /__/ __ |/ /__/ __ | http://scala-lang.org/ **
** /____/\___/_/ |_/____/_/ | | **
** |/ **
\* */
package scala.ref
/**
* @author Sean McDirmid
*/
trait ReferenceWrapper[+T <: AnyRef] extends Reference[T] with Proxy {
val underlying: java.lang.ref.Reference[_ <: T]
override def get = {
val ret = underlying.get
if (ret eq null) None else Some(ret)
}
def apply() = {
val ret = underlying.get
if (ret eq null) throw new NoSuchElementException
ret
}
def clear = underlying.clear
def enqueue = underlying.enqueue
def isEnqueued = underlying.isEnqueued
def self = underlying
}
/**
* @author Philipp Haller
*/
private trait ReferenceWithWrapper[T <: AnyRef] {
val wrapper: ReferenceWrapper[T]
}
Other Scala examples (source code examples)Here is a short list of links related to this Scala ReferenceWrapper.scala source code file: |
| ... this post is sponsored by my books ... | |
#1 New Release! |
FP Best Seller |
Copyright 1998-2024 Alvin Alexander, alvinalexander.com
All Rights Reserved.
A percentage of advertising revenue from
pages under the /java/jwarehouse
URI on this website is
paid back to open source projects.