diff options
Diffstat (limited to 'src/main/scala/firrtl/constraint/IsVar.scala')
| -rw-r--r-- | src/main/scala/firrtl/constraint/IsVar.scala | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/src/main/scala/firrtl/constraint/IsVar.scala b/src/main/scala/firrtl/constraint/IsVar.scala new file mode 100644 index 00000000..98396fa0 --- /dev/null +++ b/src/main/scala/firrtl/constraint/IsVar.scala @@ -0,0 +1,27 @@ +// See LICENSE for license details. + +package firrtl.constraint + +object IsVar { + def unapply(i: Constraint): Option[String] = i match { + case i: IsVar => Some(i.name) + case _ => None + } +} + +/** Extend to be a constraint variable */ +trait IsVar extends Constraint { + + def name: String + + override def serialize: String = name + + override def map(f: Constraint=>Constraint): Constraint = this + + override def reduce() = this + + val children = Vector() +} + +case class VarCon(name: String) extends IsVar + |
