Hoogle Search

Within LTS Haskell 24.6 (ghc-9.10.2)

Note that Stackage only displays results for the latest LTS and Nightly snapshot. Learn more.

  1. (:.:) :: m a -> (:.:) (t2 :: (Type -> Type) -> Type -> Type) (t1 :: (Type -> Type) -> Type -> Type) (m :: Type -> Type) a

    capability Capability.Accessors

    No documentation available.

  2. type (k1 :: t1) :$$$: (k2 :: t2) = ToEM k1 ':$$: ToEM k2

    clash-prelude Clash.Class.HasDomain.Common

    No documentation available.

  3. type family (as :: [k]) :++: (bs :: [k]) :: [k]

    clash-prelude Clash.Class.HasDomain.Common

    No documentation available.

  4. type (k1 :: t1) :<<>>: (k2 :: t2) = ToEM k1 ':<>: ToEM k2

    clash-prelude Clash.Class.HasDomain.Common

    No documentation available.

  5. (:$$:) :: ErrorMessage -> ErrorMessage -> ErrorMessage

    clash-prelude Clash.Explicit.Prelude

    Stack two pieces of error message on top of each other.

  6. pattern (:<) :: Vec n a -> a -> Vec (n + 1) a

    clash-prelude Clash.Explicit.Prelude

    Add an element to the tail of a vector.

    >>> (3:>4:>5:>Nil) :< 1
    3 :> 4 :> 5 :> 1 :> Nil
    
    >>> let x = (3:>4:>5:>Nil) :< 1
    
    >>> :t x
    x :: Num a => Vec 4 a
    
    Can be used as a pattern:
    >>> let f (_ :< y :< x) = y + x
    
    >>> :t f
    f :: Num a => Vec ((n + 1) + 1) a -> a
    
    >>> f (3:>4:>5:>6:>7:>Nil)
    13
    
    Also in conjunctions with (:>):
    >>> let g (a :> b :> (_ :< y :< x)) = a + b +  x + y
    
    >>> :t g
    g :: Num a => Vec ((((n + 1) + 1) + 1) + 1) a -> a
    
    >>> g (1:>2:>3:>4:>5:>Nil)
    12
    

  7. (:<>:) :: ErrorMessage -> ErrorMessage -> ErrorMessage

    clash-prelude Clash.Explicit.Prelude

    Put two pieces of error message next to each other.

  8. pattern (:>) :: a -> Vec n a -> Vec (n + 1) a

    clash-prelude Clash.Explicit.Prelude

    Add an element to the head of a vector.

    >>> 3:>4:>5:>Nil
    3 :> 4 :> 5 :> Nil
    
    >>> let x = 3:>4:>5:>Nil
    
    >>> :t x
    x :: Num a => Vec 3 a
    
    Can be used as a pattern:
    >>> let f (x :> y :> _) = x + y
    
    >>> :t f
    f :: Num a => Vec ((n + 1) + 1) a -> a
    
    >>> f (3:>4:>5:>6:>7:>Nil)
    7
    
    Also in conjunctions with (:<):
    >>> let g (a :> b :> (_ :< y :< x)) = a + b +  x + y
    
    >>> :t g
    g :: Num a => Vec ((((n + 1) + 1) + 1) + 1) a -> a
    
    >>> g (1:>2:>3:>4:>5:>Nil)
    12
    

  9. (:$$:) :: ErrorMessage -> ErrorMessage -> ErrorMessage

    clash-prelude Clash.Explicit.Prelude.Safe

    Stack two pieces of error message on top of each other.

  10. pattern (:<) :: Vec n a -> a -> Vec (n + 1) a

    clash-prelude Clash.Explicit.Prelude.Safe

    Add an element to the tail of a vector.

    >>> (3:>4:>5:>Nil) :< 1
    3 :> 4 :> 5 :> 1 :> Nil
    
    >>> let x = (3:>4:>5:>Nil) :< 1
    
    >>> :t x
    x :: Num a => Vec 4 a
    
    Can be used as a pattern:
    >>> let f (_ :< y :< x) = y + x
    
    >>> :t f
    f :: Num a => Vec ((n + 1) + 1) a -> a
    
    >>> f (3:>4:>5:>6:>7:>Nil)
    13
    
    Also in conjunctions with (:>):
    >>> let g (a :> b :> (_ :< y :< x)) = a + b +  x + y
    
    >>> :t g
    g :: Num a => Vec ((((n + 1) + 1) + 1) + 1) a -> a
    
    >>> g (1:>2:>3:>4:>5:>Nil)
    12
    

Page 50 of many | Previous | Next