summaryrefslogtreecommitdiff
path: root/test/files/pos/bug3636.scala
diff options
context:
space:
mode:
authorPaul Phillips <paulp@improving.org>2011-08-24 17:11:55 +0000
committerPaul Phillips <paulp@improving.org>2011-08-24 17:11:55 +0000
commitb9785280a7138a2bb52060faf94807aa0d07dec1 (patch)
tree870cc1930ac3d50cd07078260f58984224dd39a5 /test/files/pos/bug3636.scala
parent84fcf633d9ca507124806d64729cb8463bcebb69 (diff)
downloadscala-b9785280a7138a2bb52060faf94807aa0d07dec1.tar.gz
scala-b9785280a7138a2bb52060faf94807aa0d07dec1.tar.bz2
scala-b9785280a7138a2bb52060faf94807aa0d07dec1.zip
Renamed tests named bugXXX to tXXX, no review.
Diffstat (limited to 'test/files/pos/bug3636.scala')
-rw-r--r--test/files/pos/bug3636.scala49
1 files changed, 0 insertions, 49 deletions
diff --git a/test/files/pos/bug3636.scala b/test/files/pos/bug3636.scala
deleted file mode 100644
index 24d18c653d..0000000000
--- a/test/files/pos/bug3636.scala
+++ /dev/null
@@ -1,49 +0,0 @@
-class CTxnLocal[ T ] {
- def set( x: T )( implicit t: Txn ) {}
- def get( implicit t: Txn ) : T = null.asInstanceOf[ T ]
- def initialValue( t: Txn ) : T = null.asInstanceOf[ T ]
-}
-
-trait Txn
-
-trait ProcTxn {
- def ccstm: Txn
-}
-
-trait TxnLocal[ @specialized T ] {
- def apply()( implicit tx: ProcTxn ) : T
- def set( v: T )( implicit tx: ProcTxn ) : Unit
- def swap( v: T )( implicit tx: ProcTxn ) : T
- def transform( f: T => T )( implicit tx: ProcTxn ) : Unit
-}
-
-object TxnLocal {
- def apply[ @specialized T ] : TxnLocal[ T ] = new Impl( new CTxnLocal[ T ])
- def apply[ @specialized T ]( initValue: => T ) : TxnLocal[ T ] = new Impl( new CTxnLocal[ T ] {
- override def initialValue( tx: Txn ): T = initValue
- })
-
- private class Impl[ T ]( c: CTxnLocal[ T ]) extends TxnLocal[ T ] {
- def apply()( implicit tx: ProcTxn ) : T = c.get( tx.ccstm )
- def set( v: T )( implicit tx: ProcTxn ) : Unit = c.set( v )( tx.ccstm )
- def swap( v: T )( implicit tx: ProcTxn ) : T = {
- // currently not implemented in CTxnLocal
- val oldV = apply
- set( v )
- oldV
- }
- def transform( f: T => T )( implicit tx: ProcTxn ) {
- set( f( apply ))
- }
- }
-}
-
-
-object Transition {
- private val currentRef = TxnLocal[ Transition ]( Instant )
- def current( implicit tx: ProcTxn ) : Transition = currentRef()
-}
-
-sealed abstract class Transition
-case object Instant extends Transition
-