| haskell-src-exts-1.9.0: Manipulating Haskell source: abstract syntax, lexer, parser, and pretty-printer | Source code | Contents | Index
Language.Haskell.Exts.Extension |
Portability | portable
Stability | transient
Maintainer | Niklas Broberg, d00nibro@chalmers.se
Contents
Extensions Extension groups
Description
This entire module should be replaced with Language.Haskell.Extension from cabal, but we must wait for a release of cabal that includes the `XmlSyntax` and `RegularPatterns` extensions.
Synopsis
data Extension
= OverlappingInstances
| UndecidableInstances
| IncoherentInstances
| RecursiveDo
| ParallelListComp
| MultiParamTypeClasses
| NoMonomorphismRestriction
| FunctionalDependencies
| ExplicitForall
| Rank2Types
| RankNTypes
| PolymorphicComponents
| ExistentialQuantification
| ScopedTypeVariables
| ImplicitParams
| FlexibleContexts
| FlexibleInstances
| EmptyDataDecls
| CPP
| KindSignatures
| BangPatterns
| TypeSynonymInstances
| TemplateHaskell
| ForeignFunctionInterface
| Arrows
| Generics
| NoImplicitPrelude
| NamedFieldPuns
| PatternGuards
| GeneralizedNewtypeDeriving
| ExtensibleRecords
| RestrictedTypeSynonyms
| HereDocuments
| MagicHash
| TypeFamilies
| StandaloneDeriving
| UnicodeSyntax
| PatternSignatures
| UnliftedFFITypes
| LiberalTypeSynonyms
| TypeOperators
| RecordWildCards
| RecordPuns
| DisambiguateRecordFields
| OverloadedStrings
| GADTs
| MonoPatBinds
| NoMonoPatBinds
| RelaxedPolyRec
| ExtendedDefaultRules
| UnboxedTuples
| DeriveDataTypeable
| ConstrainedClassMethods
| PackageImports
| ImpredicativeTypes
| NewQualifiedOperators
| PostfixOperators
| QuasiQuotes
| TransformListComp
| ViewPatterns
| XmlSyntax
| RegularPatterns
| TupleSections
| UnknownExtension String
classifyExtension :: String -> Extension
impliesExts :: [Extension] -> [Extension]
glasgowExts :: [Extension]
knownExtensions :: [Extension]
Extensions
data Extension | Source
This datatype is a copy of the one in Cabal's Language.Haskell.Extension module. The intention is to eventually import it from Cabal, but we need to wait for the next release of Cabal which includes XmlSyntax and RegularPatterns.
Constructors
OverlappingInstances |
UndecidableInstances |
IncoherentInstances |
RecursiveDo |
ParallelListComp |
MultiParamTypeClasses |
NoMonomorphismRestriction |
FunctionalDependencies |
ExplicitForall |
Rank2Types |
RankNTypes |
PolymorphicComponents |
ExistentialQuantification |
ScopedTypeVariables |
ImplicitParams |
FlexibleContexts |
FlexibleInstances |
EmptyDataDecls |
CPP |
KindSignatures |
BangPatterns |
TypeSynonymInstances |
TemplateHaskell |
ForeignFunctionInterface |
Arrows |
Generics |
NoImplicitPrelude |
NamedFieldPuns |
PatternGuards |
GeneralizedNewtypeDeriving |
ExtensibleRecords |
RestrictedTypeSynonyms |
HereDocuments |
MagicHash |
TypeFamilies |
StandaloneDeriving |
UnicodeSyntax |
PatternSignatures |
UnliftedFFITypes |
LiberalTypeSynonyms |
TypeOperators |
RecordWildCards |
RecordPuns |
DisambiguateRecordFields |
OverloadedStrings |
GADTs |
MonoPatBinds |
NoMonoPatBinds |
RelaxedPolyRec |
ExtendedDefaultRules |
UnboxedTuples |
DeriveDataTypeable |
ConstrainedClassMethods |
PackageImports |
ImpredicativeTypes |
NewQualifiedOperators |
PostfixOperators |
QuasiQuotes |
TransformListComp |
ViewPatterns |
XmlSyntax |
RegularPatterns |
TupleSections |
UnknownExtension String |
Instances
Eq Extension
Ord Extension
Read Extension
Show Extension
Enabled Extension
classifyExtension :: String -> Extension | Source
A clever version of read that returns an `UnknownExtension` if the string is not recognised.
impliesExts :: [Extension] -> [Extension] | Source
Certain extensions imply other extensions, and this function makes the implication explicit. This also handles deprecated extensions, which imply their replacements. The returned valued is the transitive closure of implied extensions.
Extension groups
glasgowExts :: [Extension] | Source
The list of extensions enabled by GHC's portmanteau -fglasgow-exts flag.
knownExtensions :: [Extension] | Source
List of all known extensions. Poor man's `Enum` instance (we can't enum with the `UnknownExtension` constructor).
Produced by Haddock version 2.4.2