Module AST.AST

Summary of exported operations:

moduleName :: ModuleIdent -> String   
qidName :: QualIdent -> String   
setMIdPos :: (Int,Int) -> ModuleIdent -> ModuleIdent   
setIdPos :: (Int,Int) -> Ident -> Ident   
setQIdPos :: (Int,Int) -> QualIdent -> QualIdent   
isInfixOp :: Ident -> Bool   

Exported datatypes:


Ident

Constructors:

  • Ident :: Pos -> String -> Int -> Ident

    Fields:

    • idPosition :: Pos
    • idName :: String
    • idUnique :: Int

QualIdent

Constructors:


ModuleIdent

Constructors:

  • ModuleIdent :: Pos -> [String] -> ModuleIdent

    Fields:

    • midPosition :: Pos
    • midQualifiers :: [String]

Extension

Constructors:

  • KnownExtension :: Pos -> KnownExtension -> Extension
  • UnknownExtension :: Pos -> String -> Extension

KnownExtension

Constructors:

  • AnonFreeVars :: KnownExtension
  • FunctionalPatterns :: KnownExtension
  • NegativeLiterals :: KnownExtension
  • NoImplicitPrelude :: KnownExtension
  • ExistentialQuantification :: KnownExtension

Tool

Constructors:

  • KICS2 :: Tool
  • PAKCS :: Tool
  • CYMAKE :: Tool
  • UnknownTool :: String -> Tool

Module

Constructors:


ModulePragma

Constructors:

  • LanguagePragma :: Pos -> [Extension] -> ModulePragma
  • OptionsPragma :: Pos -> (Maybe Tool) -> String -> ModulePragma

ExportSpec

Constructors:


Export

Constructors:


ImportDecl

Constructors:


Qualified

Type synonym: Qualified = Bool


ImportSpec

Constructors:


Import

Constructors:

  • Import :: Ident -> Import
  • ImportTypeWith :: Ident -> [Ident] -> Import
  • ImportTypeAll :: Ident -> Import

Decl

Constructors:


Precedence

Type synonym: Precedence = Int


Infix

Constructors:

  • InfixL :: Infix
  • InfixR :: Infix
  • Infix :: Infix

ConstrDecl

Constructors:


NewConstrDecl

Constructors:


FieldDecl

Constructors:


CallConv

Constructors:

  • CallConvPrimitive :: CallConv
  • CallConvCCall :: CallConv

TypeExpr

Constructors:


QualTypeExpr

Constructors:


Context

Type synonym: Context = [Constraint]


Constraint

Constructors:


InstanceType

Type synonym: InstanceType = TypeExpr


Equation

Constructors:


Lhs

Constructors:


Rhs

Constructors:


CondExpr

Constructors:


Literal

Constructors:

  • Char :: Char -> Literal
  • Int :: Int -> Literal
  • Float :: Float -> Literal
  • String :: String -> Literal

Pattern

Constructors:


Expression

Constructors:


InfixOp

Constructors:


Statement

Constructors:


CaseType

Constructors:

  • Rigid :: CaseType
  • Flex :: CaseType

Alt

Constructors:


Field

Constructors:


Exported operations:

moduleName :: ModuleIdent -> String   

qidName :: QualIdent -> String   

setMIdPos :: (Int,Int) -> ModuleIdent -> ModuleIdent   

Further infos:
  • solution complete, i.e., able to compute all solutions

setIdPos :: (Int,Int) -> Ident -> Ident   

Further infos:
  • solution complete, i.e., able to compute all solutions

setQIdPos :: (Int,Int) -> QualIdent -> QualIdent   

Further infos:
  • solution complete, i.e., able to compute all solutions

isInfixOp :: Ident -> Bool