| Safe Haskell | None |
|---|
Feldspar.Core.Constructs.Bits
Description
Implementation of constructs and operations on Bits
- data BITS a where
- BAnd :: (Type a, Bits a, BoundedInt a, Size a ~ Range a) => BITS (a :-> (a :-> Full a))
- BOr :: (Type a, Bits a, BoundedInt a, Size a ~ Range a) => BITS (a :-> (a :-> Full a))
- BXor :: (Type a, Bits a, BoundedInt a, Size a ~ Range a) => BITS (a :-> (a :-> Full a))
- Complement :: (Type a, Bits a, BoundedInt a, Size a ~ Range a) => BITS (a :-> Full a)
- Bit :: (Type a, Bits a, BoundedInt a, Size a ~ Range a) => BITS (Index :-> Full a)
- SetBit :: (Type a, Bits a, BoundedInt a, Size a ~ Range a) => BITS (a :-> (Index :-> Full a))
- ClearBit :: (Type a, Bits a, BoundedInt a, Size a ~ Range a) => BITS (a :-> (Index :-> Full a))
- ComplementBit :: (Type a, Bits a, BoundedInt a, Size a ~ Range a) => BITS (a :-> (Index :-> Full a))
- TestBit :: (Type a, Bits a, BoundedInt a, Size a ~ Range a) => BITS (a :-> (Index :-> Full Bool))
- ShiftLU :: (Type a, Bits a, BoundedInt a, Size a ~ Range a) => BITS (a :-> (Index :-> Full a))
- ShiftRU :: (Type a, Bits a, BoundedInt a, Size a ~ Range a) => BITS (a :-> (Index :-> Full a))
- ShiftL :: (Type a, Bits a, BoundedInt a, Size a ~ Range a) => BITS (a :-> (IntN :-> Full a))
- ShiftR :: (Type a, Bits a, BoundedInt a, Size a ~ Range a) => BITS (a :-> (IntN :-> Full a))
- RotateLU :: (Type a, Bits a, BoundedInt a, Size a ~ Range a) => BITS (a :-> (Index :-> Full a))
- RotateRU :: (Type a, Bits a, BoundedInt a, Size a ~ Range a) => BITS (a :-> (Index :-> Full a))
- RotateL :: (Type a, Bits a, BoundedInt a, Size a ~ Range a) => BITS (a :-> (IntN :-> Full a))
- RotateR :: (Type a, Bits a, BoundedInt a, Size a ~ Range a) => BITS (a :-> (IntN :-> Full a))
- ReverseBits :: (Type a, Bits a, BoundedInt a, Size a ~ Range a) => BITS (a :-> Full a)
- BitScan :: (Type a, Bits a, BoundedInt a, Size a ~ Range a) => BITS (a :-> Full Index)
- BitCount :: (Type a, Bits a, BoundedInt a, Size a ~ Range a) => BITS (a :-> Full Index)
Documentation
Bits constructs
Constructors
| BAnd :: (Type a, Bits a, BoundedInt a, Size a ~ Range a) => BITS (a :-> (a :-> Full a)) | |
| BOr :: (Type a, Bits a, BoundedInt a, Size a ~ Range a) => BITS (a :-> (a :-> Full a)) | |
| BXor :: (Type a, Bits a, BoundedInt a, Size a ~ Range a) => BITS (a :-> (a :-> Full a)) | |
| Complement :: (Type a, Bits a, BoundedInt a, Size a ~ Range a) => BITS (a :-> Full a) | |
| Bit :: (Type a, Bits a, BoundedInt a, Size a ~ Range a) => BITS (Index :-> Full a) | |
| SetBit :: (Type a, Bits a, BoundedInt a, Size a ~ Range a) => BITS (a :-> (Index :-> Full a)) | |
| ClearBit :: (Type a, Bits a, BoundedInt a, Size a ~ Range a) => BITS (a :-> (Index :-> Full a)) | |
| ComplementBit :: (Type a, Bits a, BoundedInt a, Size a ~ Range a) => BITS (a :-> (Index :-> Full a)) | |
| TestBit :: (Type a, Bits a, BoundedInt a, Size a ~ Range a) => BITS (a :-> (Index :-> Full Bool)) | |
| ShiftLU :: (Type a, Bits a, BoundedInt a, Size a ~ Range a) => BITS (a :-> (Index :-> Full a)) | |
| ShiftRU :: (Type a, Bits a, BoundedInt a, Size a ~ Range a) => BITS (a :-> (Index :-> Full a)) | |
| ShiftL :: (Type a, Bits a, BoundedInt a, Size a ~ Range a) => BITS (a :-> (IntN :-> Full a)) | |
| ShiftR :: (Type a, Bits a, BoundedInt a, Size a ~ Range a) => BITS (a :-> (IntN :-> Full a)) | |
| RotateLU :: (Type a, Bits a, BoundedInt a, Size a ~ Range a) => BITS (a :-> (Index :-> Full a)) | |
| RotateRU :: (Type a, Bits a, BoundedInt a, Size a ~ Range a) => BITS (a :-> (Index :-> Full a)) | |
| RotateL :: (Type a, Bits a, BoundedInt a, Size a ~ Range a) => BITS (a :-> (IntN :-> Full a)) | |
| RotateR :: (Type a, Bits a, BoundedInt a, Size a ~ Range a) => BITS (a :-> (IntN :-> Full a)) | |
| ReverseBits :: (Type a, Bits a, BoundedInt a, Size a ~ Range a) => BITS (a :-> Full a) | |
| BitScan :: (Type a, Bits a, BoundedInt a, Size a ~ Range a) => BITS (a :-> Full Index) | |
| BitCount :: (Type a, Bits a, BoundedInt a, Size a ~ Range a) => BITS (a :-> Full Index) |
Instances
| Semantic BITS | |
| StringTree BITS | |
| Render BITS | |
| Eval BITS | |
| Equality BITS | |
| EvalBind BITS | |
| Monotonic BITS | |
| Sharable BITS | |
| AlphaEq dom dom dom env => AlphaEq BITS BITS dom env | |
| SizeProp (:|| BITS Type) | |
| (:<: (:|| BITS Type) dom, :<: (:|| Logic Type) dom, :<: (:|| EQ Type) dom, :<: (:|| ORD Type) dom, Monotonic dom, OptimizeSuper dom) => Optimize (:|| BITS Type) dom |