language-tl-0.1.1: A Parser for the Type Language

Safe HaskellSafe
LanguageHaskell2010

Language.TL.AST

Description

stripped down tl AST adapted for td_api.tl

Synopsis

Documentation

type Ann = Maybe Text Source #

documentation

class ToTerm a where Source #

Methods

toTerm :: a -> Term Source #

Instances
ToTerm Term Source # 
Instance details

Defined in Language.TL.AST

Methods

toTerm :: Term -> Term0 Source #

ToTerm SubExpr Source # 
Instance details

Defined in Language.TL.AST

Methods

toTerm :: SubExpr -> Term Source #

ToTerm Expr Source # 
Instance details

Defined in Language.TL.AST

Methods

toTerm :: Expr -> Term Source #

ToTerm Ident Source # 
Instance details

Defined in Language.TL.AST

Methods

toTerm :: Ident -> Term Source #

class ToType a where Source #

Methods

toType :: a -> Type Source #

Instances
ToType ResultType Source # 
Instance details

Defined in Language.TL.AST

ToType TypeIdent Source # 
Instance details

Defined in Language.TL.AST

ToType Term Source # 
Instance details

Defined in Language.TL.AST

Methods

toType :: Term -> Type Source #

ToType SubExpr Source # 
Instance details

Defined in Language.TL.AST

Methods

toType :: SubExpr -> Type Source #

ToType Expr Source # 
Instance details

Defined in Language.TL.AST

Methods

toType :: Expr -> Type Source #

ToType Ident Source # 
Instance details

Defined in Language.TL.AST

Methods

toType :: Ident -> Type Source #

data Combinator Source #

Constructors

Combinator 

Fields

Instances
Eq Combinator Source # 
Instance details

Defined in Language.TL.AST

Show Combinator Source # 
Instance details

Defined in Language.TL.AST

Generic Combinator Source # 
Instance details

Defined in Language.TL.AST

Associated Types

type Rep Combinator :: Type -> Type #

type Rep Combinator Source # 
Instance details

Defined in Language.TL.AST

data ADT Source #

Constructors

ADT 

Fields

Instances
Eq ADT Source # 
Instance details

Defined in Language.TL.AST

Methods

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

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

Show ADT Source # 
Instance details

Defined in Language.TL.AST

Methods

showsPrec :: Int -> ADT -> ShowS #

show :: ADT -> String #

showList :: [ADT] -> ShowS #

Generic ADT Source # 
Instance details

Defined in Language.TL.AST

Associated Types

type Rep ADT :: Type -> Type #

Methods

from :: ADT -> Rep ADT x #

to :: Rep ADT x -> ADT #

type Rep ADT Source # 
Instance details

Defined in Language.TL.AST

newtype Function Source #

Constructors

Function Combinator 
Instances
Eq Function Source # 
Instance details

Defined in Language.TL.AST

Show Function Source # 
Instance details

Defined in Language.TL.AST

Generic Function Source # 
Instance details

Defined in Language.TL.AST

Associated Types

type Rep Function :: Type -> Type #

Methods

from :: Function -> Rep Function x #

to :: Rep Function x -> Function #

type Rep Function Source # 
Instance details

Defined in Language.TL.AST

type Rep Function = D1 (MetaData "Function" "Language.TL.AST" "language-tl-0.1.1-CjCXqHgjz8HB0qBNm94O9r" True) (C1 (MetaCons "Function" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 Combinator)))

data Type Source #

Constructors

Type Text 
TypeApp Type [Type] 
NatType 
Instances
Eq Type Source # 
Instance details

Defined in Language.TL.AST

Methods

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

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

Show Type Source # 
Instance details

Defined in Language.TL.AST

Methods

showsPrec :: Int -> Type -> ShowS #

show :: Type -> String #

showList :: [Type] -> ShowS #

Generic Type Source # 
Instance details

Defined in Language.TL.AST

Associated Types

type Rep Type :: Type -> Type #

Methods

from :: Type -> Rep Type x #

to :: Rep Type x -> Type #

type Rep Type Source # 
Instance details

Defined in Language.TL.AST

data Term Source #

Constructors

Var Text 
Nat Int 
App Term [Term] 
Instances
Eq Term Source # 
Instance details

Defined in Language.TL.AST

Methods

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

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

Show Term Source # 
Instance details

Defined in Language.TL.AST

Methods

showsPrec :: Int -> Term -> ShowS #

show :: Term -> String #

showList :: [Term] -> ShowS #

Generic Term Source # 
Instance details

Defined in Language.TL.AST

Associated Types

type Rep Term :: Type -> Type #

Methods

from :: Term -> Rep Term x #

to :: Rep Term x -> Term #

type Rep Term Source # 
Instance details

Defined in Language.TL.AST

data Arg Source #

Constructors

Arg 

Fields

Instances
Eq Arg Source # 
Instance details

Defined in Language.TL.AST

Methods

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

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

Show Arg Source # 
Instance details

Defined in Language.TL.AST

Methods

showsPrec :: Int -> Arg -> ShowS #

show :: Arg -> String #

showList :: [Arg] -> ShowS #

Generic Arg Source # 
Instance details

Defined in Language.TL.AST

Associated Types

type Rep Arg :: Type -> Type #

Methods

from :: Arg -> Rep Arg x #

to :: Rep Arg x -> Arg #

type Rep Arg Source # 
Instance details

Defined in Language.TL.AST