Language.Haskell.Exts.Syntax

# Modules

data Module
data WarningText
data ExportSpec
data ImportDecl
data ImportSpec
data Assoc

# Declarations

data Decl
data Binds
data IPBind

## Type classes and instances

data ClassDecl
data InstDecl
type Deriving

## Data type declarations

data DataOrNew
data ConDecl
data QualConDecl
data GadtDecl
data BangType

## Function bindings

data Match
data Rhs
data GuardedRhs

# Class Assertions and Contexts

type Context
data FunDep
data Asst

# Types

data Type
data Boxed
data Kind
data TyVarBind

# Expressions

data Exp
data Stmt
data QualStmt
data FieldUpdate
data Alt
data GuardedAlts
data GuardedAlt
data XAttr

# Patterns

data Pat
data PatField
data PXAttr
data RPat
data RPatOp

# Literals

data Literal

# Variables, Constructors and Operators

data ModuleName
data QName
data Name
data QOp
data Op
data SpecialCon
data CName
data IPName
data XName

# Template Haskell

data Bracket
data Splice

# FFI

data Safety
data CallConv

# Pragmas

data ModulePragma
data Tool
data Rule
data RuleVar
data Activation
data Annotation

# Builtin names

## Modules

prelude_mod
main_mod

## Main function of a program

main_name

## Constructors

unit_con_name
tuple_con_name
list_cons_name
unboxed_singleton_con_name
unit_con
tuple_con
unboxed_singleton_con

## Special identifiers

as_name
qualified_name
hiding_name
minus_name
bang_name
dot_name
star_name
export_name
safe_name
unsafe_name
threadsafe_name
stdcall_name
ccall_name

## Type constructors

unit_tycon_name
fun_tycon_name
list_tycon_name
tuple_tycon_name
unboxed_singleton_tycon_name
unit_tycon
fun_tycon
list_tycon
tuple_tycon
unboxed_singleton_tycon

# Source coordinates

data SrcLoc