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

cplusplus_name

dotnet_name

jvm_name

js_name

forall_name

family_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