# Num

### Related Doc: package core

#### trait Num[T <: Data] extends AnyRef

Abstract trait defining operations available on numeric-like wire data types.

Self Type
Num[T]
Linear Supertypes
AnyRef, Any
Known Subclasses
Ordering
1. Alphabetic
2. By Inheritance
Inherited
1. Num
2. AnyRef
3. Any
1. Hide All
2. Show All
Visibility
1. Public
2. All

### Concrete Value Members

1. #### final def !=(arg0: Any): Boolean

Definition Classes
AnyRef → Any
2. #### final def ##(): Int

Definition Classes
AnyRef → Any

4. #### final macro def *(that: T): T

Outputs the product of `this` and `b`.

Outputs the product of `this` and `b`. The resulting width is the sum of the operands.

Note

can generate a single-cycle multiplier, which can result in significant cycle time and area costs

5. #### final macro def +(that: T): T

Outputs the sum of `this` and `b`.

Outputs the sum of `this` and `b`. The resulting width is the max of the operands plus 1 (should not overflow).

6. #### final macro def -(that: T): T

Outputs the difference of `this` and `b`.

Outputs the difference of `this` and `b`. The resulting width is the max of the operands plus 1 (should not overflow).

7. #### final macro def /(that: T): T

Outputs the quotient of `this` and `b`.

Outputs the quotient of `this` and `b`.

TODO: full rules

8. #### final macro def <(that: T): Bool

Outputs true if `this` < `b`.

9. #### final macro def <=(that: T): Bool

Outputs true if `this` <= `b`.

10. #### final def ==(arg0: Any): Boolean

Definition Classes
AnyRef → Any
11. #### final macro def >(that: T): Bool

Outputs true if `this` > `b`.

12. #### final macro def >=(that: T): Bool

Outputs true if `this` >= `b`.

13. #### final macro def abs(): T

Outputs the absolute value of `this`.

Outputs the absolute value of `this`. The resulting width is the unchanged

14. #### final def asInstanceOf[T0]: T0

Definition Classes
Any
15. #### def clone(): AnyRef

Attributes
protected[java.lang]
Definition Classes
AnyRef
Annotations
@throws( ... )

18. #### final def eq(arg0: AnyRef): Boolean

Definition Classes
AnyRef
19. #### def equals(arg0: Any): Boolean

Definition Classes
AnyRef → Any
20. #### def finalize(): Unit

Attributes
protected[java.lang]
Definition Classes
AnyRef
Annotations
@throws( classOf[java.lang.Throwable] )
21. #### final def getClass(): Class[_]

Definition Classes
AnyRef → Any
22. #### def hashCode(): Int

Definition Classes
AnyRef → Any
23. #### final def isInstanceOf[T0]: Boolean

Definition Classes
Any
24. #### final macro def max(that: T): T

Outputs the maximum of `this` and `b`.

Outputs the maximum of `this` and `b`. The resulting width is the max of the operands.

25. #### final macro def min(that: T): T

Outputs the minimum of `this` and `b`.

Outputs the minimum of `this` and `b`. The resulting width is the max of the operands.

26. #### final def ne(arg0: AnyRef): Boolean

Definition Classes
AnyRef
27. #### final def notify(): Unit

Definition Classes
AnyRef
28. #### final def notifyAll(): Unit

Definition Classes
AnyRef
29. #### final def synchronized[T0](arg0: ⇒ T0): T0

Definition Classes
AnyRef
30. #### def toString(): String

Definition Classes
AnyRef → Any
31. #### final def wait(): Unit

Definition Classes
AnyRef
Annotations
@throws( ... )
32. #### final def wait(arg0: Long, arg1: Int): Unit

Definition Classes
AnyRef
Annotations
@throws( ... )
33. #### final def wait(arg0: Long): Unit

Definition Classes
AnyRef
Annotations
@throws( ... )