aboutsummaryrefslogtreecommitdiff
path: root/src/main/scala/firrtl/constraint/Inequality.scala
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/scala/firrtl/constraint/Inequality.scala')
-rw-r--r--src/main/scala/firrtl/constraint/Inequality.scala24
1 files changed, 24 insertions, 0 deletions
diff --git a/src/main/scala/firrtl/constraint/Inequality.scala b/src/main/scala/firrtl/constraint/Inequality.scala
new file mode 100644
index 00000000..0fa1d2eb
--- /dev/null
+++ b/src/main/scala/firrtl/constraint/Inequality.scala
@@ -0,0 +1,24 @@
+// See LICENSE for license details.
+
+package firrtl.constraint
+
+/** Represents either greater or equal to or less than or equal to
+ * Is passed to the constraint solver to resolve
+ */
+trait Inequality {
+ def left: String
+ def right: Constraint
+ def geq: Boolean
+}
+
+case class GreaterOrEqual(left: String, right: Constraint) extends Inequality {
+ val geq = true
+ override def toString: String = s"$left >= ${right.serialize}"
+}
+
+case class LesserOrEqual(left: String, right: Constraint) extends Inequality {
+ val geq = false
+ override def toString: String = s"$left <= ${right.serialize}"
+}
+
+