summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul Phillips <paulp@improving.org>2009-11-12 13:59:56 +0000
committerPaul Phillips <paulp@improving.org>2009-11-12 13:59:56 +0000
commit5995692ffd9bd401589117b10029b63503cad6be (patch)
tree46e93557da197869f3d7ae4bf513782f4c03e19d
parent6720ae4cbcda0f2a8b956709690fd09dd45da3d4 (diff)
downloadscala-5995692ffd9bd401589117b10029b63503cad6be.tar.gz
scala-5995692ffd9bd401589117b10029b63503cad6be.tar.bz2
scala-5995692ffd9bd401589117b10029b63503cad6be.zip
Removed some duplicated functions.
-rw-r--r--src/compiler/scala/tools/nsc/ast/TreeDSL.scala13
-rw-r--r--src/compiler/scala/tools/nsc/matching/MatrixAdditions.scala1
-rw-r--r--src/compiler/scala/tools/nsc/matching/ParallelMatching.scala1
-rw-r--r--src/compiler/scala/tools/nsc/matching/PatternBindings.scala1
-rw-r--r--src/compiler/scala/tools/nsc/matching/Patterns.scala1
-rw-r--r--src/compiler/scala/tools/nsc/matching/TransMatcher.scala1
6 files changed, 6 insertions, 12 deletions
diff --git a/src/compiler/scala/tools/nsc/ast/TreeDSL.scala b/src/compiler/scala/tools/nsc/ast/TreeDSL.scala
index c5cef0dd32..569b0f7b37 100644
--- a/src/compiler/scala/tools/nsc/ast/TreeDSL.scala
+++ b/src/compiler/scala/tools/nsc/ast/TreeDSL.scala
@@ -18,24 +18,13 @@ trait TreeDSL {
import global._
import definitions._
import gen.{ scalaDot }
+ import PartialFunction._
object CODE {
// Add a null check to a Tree => Tree function
def nullSafe[T](f: Tree => Tree, ifNull: Tree): Tree => Tree =
tree => IF (tree MEMBER_== NULL) THEN ifNull ELSE f(tree)
- // XXX these two are in scala.PartialFunction now, just have to
- // settle on the final names.
-
- // Create a conditional based on a partial function - for values not defined
- // on the partial, it is false.
- def cond[T](x: T)(f: PartialFunction[T, Boolean]) = (f isDefinedAt x) && f(x)
-
- // Like cond, but transforms the value T => Some(U) if the pf is defined,
- // or returns None if it is not.
- def condOpt[T,U](x: T)(f: PartialFunction[T, U]): Option[U] =
- if (f isDefinedAt x) Some(f(x)) else None
-
// Applies a function to a value and then returns the value.
def returning[T](f: T => Unit)(x: T): T = { f(x) ; x }
diff --git a/src/compiler/scala/tools/nsc/matching/MatrixAdditions.scala b/src/compiler/scala/tools/nsc/matching/MatrixAdditions.scala
index 37ddbbc671..ea8a8e5ce5 100644
--- a/src/compiler/scala/tools/nsc/matching/MatrixAdditions.scala
+++ b/src/compiler/scala/tools/nsc/matching/MatrixAdditions.scala
@@ -7,6 +7,7 @@ package scala.tools.nsc
package matching
import transform.ExplicitOuter
+import PartialFunction._
/** Traits which are mixed into MatchMatrix, but separated out as
* (somewhat) independent components to keep them on the sidelines.
diff --git a/src/compiler/scala/tools/nsc/matching/ParallelMatching.scala b/src/compiler/scala/tools/nsc/matching/ParallelMatching.scala
index 4bc8826908..d87eb29cf1 100644
--- a/src/compiler/scala/tools/nsc/matching/ParallelMatching.scala
+++ b/src/compiler/scala/tools/nsc/matching/ParallelMatching.scala
@@ -31,6 +31,7 @@ trait ParallelMatching extends ast.TreeDSL
import Types._
import Debug._
import Flags.{ TRANS_FLAG }
+ import PartialFunction._
/** Transition **/
def toPats(xs: List[Tree]): List[Pattern] = xs map Pattern.apply
diff --git a/src/compiler/scala/tools/nsc/matching/PatternBindings.scala b/src/compiler/scala/tools/nsc/matching/PatternBindings.scala
index b4689ebc30..daaa7d8b88 100644
--- a/src/compiler/scala/tools/nsc/matching/PatternBindings.scala
+++ b/src/compiler/scala/tools/nsc/matching/PatternBindings.scala
@@ -8,6 +8,7 @@ package matching
import transform.ExplicitOuter
import collection.immutable.TreeMap
+import PartialFunction._
trait PatternBindings extends ast.TreeDSL
{
diff --git a/src/compiler/scala/tools/nsc/matching/Patterns.scala b/src/compiler/scala/tools/nsc/matching/Patterns.scala
index 8a596f1257..f1efd7436f 100644
--- a/src/compiler/scala/tools/nsc/matching/Patterns.scala
+++ b/src/compiler/scala/tools/nsc/matching/Patterns.scala
@@ -9,6 +9,7 @@ package matching
import symtab.Flags
import util.NoPosition
import scala.util.NameTransformer.decode
+import PartialFunction._
/** Patterns are wrappers for Trees with enhanced semantics.
*
diff --git a/src/compiler/scala/tools/nsc/matching/TransMatcher.scala b/src/compiler/scala/tools/nsc/matching/TransMatcher.scala
index b47ebccfa9..ea29f1859b 100644
--- a/src/compiler/scala/tools/nsc/matching/TransMatcher.scala
+++ b/src/compiler/scala/tools/nsc/matching/TransMatcher.scala
@@ -13,6 +13,7 @@ import symtab.SymbolTable
import transform.ExplicitOuter
import java.io.{ StringWriter, PrintWriter }
import scala.util.NameTransformer.decode
+import PartialFunction._
/** Translation of pattern matching
*