sugar-data-0.0.0.0: Convert sugar to common data types for code generation
Safe HaskellNone
LanguageHaskell2010

Sugar.Data

Documentation

data Type a m c Source #

Constructors

Type'Ty (Ty a) 
Type'Rec (Rec a m) 
Type'Adt (Adt a m c) 

Instances

Instances details
(Eq a, Eq m, Eq c) => Eq (Type a m c) Source # 
Instance details

Defined in Sugar.Data

Methods

(==) :: Type a m c -> Type a m c -> Bool #

(/=) :: Type a m c -> Type a m c -> Bool #

(Show a, Show m, Show c) => Show (Type a m c) Source # 
Instance details

Defined in Sugar.Data

Methods

showsPrec :: Int -> Type a m c -> ShowS #

show :: Type a m c -> String #

showList :: [Type a m c] -> ShowS #

data TypeRef Source #

Constructors

TypeRef 

Instances

Instances details
Eq TypeRef Source # 
Instance details

Defined in Sugar.Data

Methods

(==) :: TypeRef -> TypeRef -> Bool #

(/=) :: TypeRef -> TypeRef -> Bool #

Show TypeRef Source # 
Instance details

Defined in Sugar.Data

data Ty a Source #

Constructors

Ty 

Instances

Instances details
Eq a => Eq (Ty a) Source # 
Instance details

Defined in Sugar.Data

Methods

(==) :: Ty a -> Ty a -> Bool #

(/=) :: Ty a -> Ty a -> Bool #

Show a => Show (Ty a) Source # 
Instance details

Defined in Sugar.Data

Methods

showsPrec :: Int -> Ty a -> ShowS #

show :: Ty a -> String #

showList :: [Ty a] -> ShowS #

data Rec a m Source #

Constructors

Rec 

Fields

Instances

Instances details
(Eq a, Eq m) => Eq (Rec a m) Source # 
Instance details

Defined in Sugar.Data

Methods

(==) :: Rec a m -> Rec a m -> Bool #

(/=) :: Rec a m -> Rec a m -> Bool #

(Show a, Show m) => Show (Rec a m) Source # 
Instance details

Defined in Sugar.Data

Methods

showsPrec :: Int -> Rec a m -> ShowS #

show :: Rec a m -> String #

showList :: [Rec a m] -> ShowS #

data Mem m Source #

Constructors

Mem 

Instances

Instances details
Eq m => Eq (Mem m) Source # 
Instance details

Defined in Sugar.Data

Methods

(==) :: Mem m -> Mem m -> Bool #

(/=) :: Mem m -> Mem m -> Bool #

Show m => Show (Mem m) Source # 
Instance details

Defined in Sugar.Data

Methods

showsPrec :: Int -> Mem m -> ShowS #

show :: Mem m -> String #

showList :: [Mem m] -> ShowS #

data Adt a m c Source #

Constructors

Adt 

Fields

Instances

Instances details
(Eq a, Eq c, Eq m) => Eq (Adt a m c) Source # 
Instance details

Defined in Sugar.Data

Methods

(==) :: Adt a m c -> Adt a m c -> Bool #

(/=) :: Adt a m c -> Adt a m c -> Bool #

(Show a, Show c, Show m) => Show (Adt a m c) Source # 
Instance details

Defined in Sugar.Data

Methods

showsPrec :: Int -> Adt a m c -> ShowS #

show :: Adt a m c -> String #

showList :: [Adt a m c] -> ShowS #

data Cons m c Source #

Constructors

Cons 

Instances

Instances details
(Eq c, Eq m) => Eq (Cons m c) Source # 
Instance details

Defined in Sugar.Data

Methods

(==) :: Cons m c -> Cons m c -> Bool #

(/=) :: Cons m c -> Cons m c -> Bool #

(Show c, Show m) => Show (Cons m c) Source # 
Instance details

Defined in Sugar.Data

Methods

showsPrec :: Int -> Cons m c -> ShowS #

show :: Cons m c -> String #

showList :: [Cons m c] -> ShowS #

data ConsValue m Source #

Instances

Instances details
Eq m => Eq (ConsValue m) Source # 
Instance details

Defined in Sugar.Data

Methods

(==) :: ConsValue m -> ConsValue m -> Bool #

(/=) :: ConsValue m -> ConsValue m -> Bool #

Show m => Show (ConsValue m) Source # 
Instance details

Defined in Sugar.Data

data Err e Source #

Instances

Instances details
Eq e => Eq (Err e) Source # 
Instance details

Defined in Sugar.Data

Methods

(==) :: Err e -> Err e -> Bool #

(/=) :: Err e -> Err e -> Bool #

Show e => Show (Err e) Source # 
Instance details

Defined in Sugar.Data

Methods

showsPrec :: Int -> Err e -> ShowS #

show :: Err e -> String #

showList :: [Err e] -> ShowS #

data Error e Source #

Constructors

Error 

Instances

Instances details
Eq e => Eq (Error e) Source # 
Instance details

Defined in Sugar.Data

Methods

(==) :: Error e -> Error e -> Bool #

(/=) :: Error e -> Error e -> Bool #

Show e => Show (Error e) Source # 
Instance details

Defined in Sugar.Data

Methods

showsPrec :: Int -> Error e -> ShowS #

show :: Error e -> String #

showList :: [Error e] -> ShowS #

data ParamFns a m c e Source #

Constructors

ParamFns 

Fields

tokenToTypes :: ParamFns a m c e -> TokenStep -> Either [Error e] [Type a m c] Source #

tokenToType :: ParamFns a m c e -> TokenStep -> TokenStep -> Either [Error e] (Type a m c) Source #