summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorAdriaan Moors <adriaan.moors@typesafe.com>2015-01-01 18:47:42 -0800
committerAdriaan Moors <adriaan.moors@typesafe.com>2015-01-01 18:47:42 -0800
commit3fafbc204fe2ce94e64c6893e74e3855dc875ae8 (patch)
tree75850fb0122d94dbfe8cf2e3e3dbbd2ea409e7c4 /src
parent409b2805e0f6263b4e64197bc09ae58202d45f5e (diff)
parent5c296a419c32d8d76dbfebd091a98e3934da3e89 (diff)
downloadscala-3fafbc204fe2ce94e64c6893e74e3855dc875ae8.tar.gz
scala-3fafbc204fe2ce94e64c6893e74e3855dc875ae8.tar.bz2
scala-3fafbc204fe2ce94e64c6893e74e3855dc875ae8.zip
Merge pull request #4222 from gbasler/topic/patmat-unit-tests-rebasedv2.11.5
Add unit tests for Tseitin CNF conversion and implement missing `equals` method for `Sym`.
Diffstat (limited to 'src')
-rw-r--r--src/compiler/scala/tools/nsc/transform/patmat/Logic.scala13
1 files changed, 12 insertions, 1 deletions
diff --git a/src/compiler/scala/tools/nsc/transform/patmat/Logic.scala b/src/compiler/scala/tools/nsc/transform/patmat/Logic.scala
index 9f24d5122a..da6527bc0b 100644
--- a/src/compiler/scala/tools/nsc/transform/patmat/Logic.scala
+++ b/src/compiler/scala/tools/nsc/transform/patmat/Logic.scala
@@ -122,9 +122,20 @@ trait Logic extends Debugging {
// symbols are propositions
final class Sym private[PropositionalLogic] (val variable: Var, val const: Const) extends Prop {
+
+ override def equals(other: scala.Any): Boolean = other match {
+ case that: Sym => this.variable == that.variable &&
+ this.const == that.const
+ case _ => false
+ }
+
+ override def hashCode(): Int = {
+ variable.hashCode * 41 + const.hashCode
+ }
+
private val id: Int = Sym.nextSymId
- override def toString = variable + "=" + const + "#" + id
+ override def toString = s"$variable=$const#$id"
}
object Sym {