diff options
| author | Andrew Waterman | 2016-04-18 15:44:57 -0700 |
|---|---|---|
| committer | Andrew Waterman | 2016-05-04 01:43:09 -0700 |
| commit | bb912f52606d6c11c00dd035af1a4e0033dd091c (patch) | |
| tree | 891977b72cf70d533f4ade28dd6e4f65849a6eb1 /src/main | |
| parent | f3ea8f1f7539d4afb50555df28dd16562c0ee256 (diff) | |
Support writing literals like 1.U or -1.S
Diffstat (limited to 'src/main')
| -rw-r--r-- | src/main/scala/Chisel/package.scala | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/src/main/scala/Chisel/package.scala b/src/main/scala/Chisel/package.scala new file mode 100644 index 00000000..61fb6904 --- /dev/null +++ b/src/main/scala/Chisel/package.scala @@ -0,0 +1,17 @@ +package object Chisel { + import internal.firrtl.Width + implicit class fromBigIntToLiteral(val x: BigInt) extends AnyVal { + def U: UInt = UInt(x, Width()) + def S: SInt = SInt(x, Width()) + } + implicit class fromIntToLiteral(val x: Int) extends AnyVal { + def U: UInt = UInt(BigInt(x), Width()) + def S: SInt = SInt(BigInt(x), Width()) + } + implicit class fromStringToLiteral(val x: String) extends AnyVal { + def U: UInt = UInt(x) + } + implicit class fromBooleanToLiteral(val x: Boolean) extends AnyVal { + def B: Bool = Bool(x) + } +} |
