fcf-containers-0.8.2: Data structures and algorithms for first-class-families
Copyright(c) gspia 2023-
LicenseBSD
Maintainergspia
Safe HaskellSafe-Inferred
LanguageHaskell2010

Fcf.Data.Symbol

Description

Fcf.Data.Symbol

This might should go to first-class-families.

Documentation

data AppendSymbol :: Symbol -> Symbol -> Exp Symbol Source #

Instances

Instances details
type Eval (AppendSymbol a b :: Symbol -> Type) Source # 
Instance details

Defined in Fcf.Data.Symbol

type Eval (AppendSymbol a b :: Symbol -> Type) = AppendSymbol a b

data CmpSymbol :: Symbol -> Symbol -> Exp Ordering Source #

Instances

Instances details
type Eval (CmpSymbol a b :: Ordering -> Type) Source # 
Instance details

Defined in Fcf.Data.Symbol

type Eval (CmpSymbol a b :: Ordering -> Type) = CmpSymbol a b

data CmpChar :: Char -> Char -> Exp Ordering Source #

Instances

Instances details
type Eval (CmpChar a b :: Ordering -> Type) Source # 
Instance details

Defined in Fcf.Data.Symbol

type Eval (CmpChar a b :: Ordering -> Type) = CmpChar a b

data ConsChar :: Char -> Symbol -> Exp Symbol Source #

Instances

Instances details
type Eval (ConsChar a b :: Symbol -> Type) Source # 
Instance details

Defined in Fcf.Data.Symbol

type Eval (ConsChar a b :: Symbol -> Type) = ConsSymbol a b

data UnconsSymbol :: Symbol -> Exp (Maybe (Char, Symbol)) Source #

Instances

Instances details
type Eval (UnconsSymbol a :: Maybe (Char, Symbol) -> Type) Source # 
Instance details

Defined in Fcf.Data.Symbol

data CharToNat :: Char -> Exp Nat Source #

Instances

Instances details
type Eval (CharToNat c :: Nat -> Type) Source # 
Instance details

Defined in Fcf.Data.Symbol

type Eval (CharToNat c :: Nat -> Type) = CharToNat c

data NatToChar :: Nat -> Exp Char Source #

Instances

Instances details
type Eval (NatToChar n :: Char -> Type) Source # 
Instance details

Defined in Fcf.Data.Symbol

type Eval (NatToChar n :: Char -> Type) = NatToChar n

data HandlePair :: Maybe (Char, Symbol) -> Exp [Char] Source #

Instances

Instances details
type Eval (HandlePair ('Just '(c, sym)) :: [Char] -> Type) Source # 
Instance details

Defined in Fcf.Data.Symbol

type Eval (HandlePair ('Just '(c, sym)) :: [Char] -> Type) = Eval ('[c] ++ Eval (ToCharList sym))
type Eval (HandlePair ('Nothing :: Maybe (Char, Symbol))) Source # 
Instance details

Defined in Fcf.Data.Symbol

type Eval (HandlePair ('Nothing :: Maybe (Char, Symbol))) = '[] :: [Char]

data ToCharList :: Symbol -> Exp [Char] Source #

Instances

Instances details
type Eval (ToCharList sym :: [Char] -> Type) Source # 
Instance details

Defined in Fcf.Data.Symbol

type Eval (ToCharList sym :: [Char] -> Type) = Eval (HandlePair =<< UnconsSymbol sym)

data CharToSymbol :: Char -> Exp Symbol Source #

Instances

Instances details
type Eval (CharToSymbol c :: Symbol -> Type) Source # 
Instance details

Defined in Fcf.Data.Symbol

type Eval (CharToSymbol c :: Symbol -> Type) = ConsSymbol c ""

data Concat :: [Symbol] -> Exp Symbol Source #

Instances

Instances details
type Eval (Concat syms :: Symbol -> Type) Source # 
Instance details

Defined in Fcf.Data.Symbol

type Eval (Concat syms :: Symbol -> Type) = Eval (Foldr AppendSymbol "" syms)

data ConcatChars :: [Char] -> Exp Symbol Source #

Instances

Instances details
type Eval (ConcatChars chrs :: Symbol -> Type) Source # 
Instance details

Defined in Fcf.Data.Symbol

type Eval (ConcatChars chrs :: Symbol -> Type) = Eval (Foldr ConsChar "" chrs)