| Safe Haskell | Safe |
|---|---|
| Language | Haskell2010 |
Agda.Utils.Haskell.Syntax
Description
ASTs for subset of GHC Haskell syntax.
Synopsis
- data Module = Module ModuleName [ModulePragma] [ImportDecl] [Decl]
- data ModulePragma
- data ImportDecl = ImportDecl {
- importModule :: ModuleName
- importQualified :: Bool
- importSpecs :: Maybe (Bool, [ImportSpec])
- data ImportSpec = IVar Name
- data Decl
- data DataOrNew
- data ConDecl = ConDecl Name [(Maybe Strictness, Type)]
- data Strictness
- type Deriving = (QName, [Type])
- data Binds = BDecls [Decl]
- data Rhs
- data GuardedRhs = GuardedRhs [Stmt] Exp
- data Match = Match Name [Pat] Rhs (Maybe Binds)
- data Type
- data Pat
- data Stmt
- data Exp
- data Alt = Alt Pat Rhs (Maybe Binds)
- data Literal
- data ModuleName = ModuleName String
- data QName
- = Qual ModuleName Name
- | UnQual Name
- data Name
- data QOp = QVarOp QName
- data TyVarBind = UnkindedVar Name
- unit_con :: Exp
Modules
Constructors
| Module ModuleName [ModulePragma] [ImportDecl] [Decl] |
data ModulePragma #
Constructors
| LanguagePragma [Name] | |
| OtherPragma String | Unstructured pragma (Andreas, 2017-08-23, issue #2712). |
Instances
| Pretty ModulePragma # | |
Defined in Agda.Compiler.MAlonzo.Pretty Methods pretty :: ModulePragma -> Doc # prettyPrec :: Int -> ModulePragma -> Doc # prettyList :: [ModulePragma] -> Doc # | |
data ImportDecl #
Constructors
| ImportDecl | |
Fields
| |
Instances
| Pretty ImportDecl # | |
Defined in Agda.Compiler.MAlonzo.Pretty Methods pretty :: ImportDecl -> Doc # prettyPrec :: Int -> ImportDecl -> Doc # prettyList :: [ImportDecl] -> Doc # | |
data ImportSpec #
Instances
| Pretty ImportSpec # | |
Defined in Agda.Compiler.MAlonzo.Pretty Methods pretty :: ImportSpec -> Doc # prettyPrec :: Int -> ImportSpec -> Doc # prettyList :: [ImportSpec] -> Doc # | |
Declarations
Constructors
| ConDecl Name [(Maybe Strictness, Type)] |
data Strictness #
Instances
| Eq Strictness # | |
Defined in Agda.Utils.Haskell.Syntax | |
| Pretty Strictness # | |
Defined in Agda.Compiler.MAlonzo.Pretty Methods pretty :: Strictness -> Doc # prettyPrec :: Int -> Strictness -> Doc # prettyList :: [Strictness] -> Doc # | |
Constructors
| UnGuardedRhs Exp | |
| GuardedRhss [GuardedRhs] |
data GuardedRhs #
Constructors
| GuardedRhs [Stmt] Exp |
Instances
| Eq GuardedRhs # | |
Defined in Agda.Utils.Haskell.Syntax | |
Expressions
Names
data ModuleName #
Constructors
| ModuleName String |
Instances
| Eq ModuleName # | |
Defined in Agda.Utils.Haskell.Syntax | |
| Ord ModuleName # | |
Defined in Agda.Utils.Haskell.Syntax Methods compare :: ModuleName -> ModuleName -> Ordering # (<) :: ModuleName -> ModuleName -> Bool # (<=) :: ModuleName -> ModuleName -> Bool # (>) :: ModuleName -> ModuleName -> Bool # (>=) :: ModuleName -> ModuleName -> Bool # max :: ModuleName -> ModuleName -> ModuleName # min :: ModuleName -> ModuleName -> ModuleName # | |
| Pretty ModuleName # | |
Defined in Agda.Compiler.MAlonzo.Pretty Methods pretty :: ModuleName -> Doc # prettyPrec :: Int -> ModuleName -> Doc # prettyList :: [ModuleName] -> Doc # | |
Constructors
| Qual ModuleName Name | |
| UnQual Name |
Constructors
| UnkindedVar Name |