{-# LANGUAGE CPP #-}
module Language.Haskell.Meta.Extensions (
toExtension,
fromExtension
) where
import qualified Language.Haskell.Exts.Extension as Exts
import qualified Language.Haskell.TH.Syntax as TH
toExtension :: Exts.KnownExtension -> Maybe TH.Extension
toExtension :: KnownExtension -> Maybe Extension
toExtension KnownExtension
e = case KnownExtension
e of
KnownExtension
Exts.OverlappingInstances -> forall a. a -> Maybe a
Just Extension
TH.OverlappingInstances
KnownExtension
Exts.UndecidableInstances -> forall a. a -> Maybe a
Just Extension
TH.UndecidableInstances
KnownExtension
Exts.IncoherentInstances -> forall a. a -> Maybe a
Just Extension
TH.IncoherentInstances
KnownExtension
Exts.InstanceSigs -> forall a. a -> Maybe a
Just Extension
TH.InstanceSigs
KnownExtension
Exts.DoRec -> forall a. Maybe a
Nothing
KnownExtension
Exts.RecursiveDo -> forall a. a -> Maybe a
Just Extension
TH.RecursiveDo
KnownExtension
Exts.ParallelListComp -> forall a. a -> Maybe a
Just Extension
TH.ParallelListComp
KnownExtension
Exts.MultiParamTypeClasses -> forall a. a -> Maybe a
Just Extension
TH.MultiParamTypeClasses
KnownExtension
Exts.MonomorphismRestriction -> forall a. a -> Maybe a
Just Extension
TH.MonomorphismRestriction
KnownExtension
Exts.FunctionalDependencies -> forall a. a -> Maybe a
Just Extension
TH.FunctionalDependencies
KnownExtension
Exts.Rank2Types -> forall a. Maybe a
Nothing
KnownExtension
Exts.RankNTypes -> forall a. a -> Maybe a
Just Extension
TH.RankNTypes
KnownExtension
Exts.PolymorphicComponents -> forall a. Maybe a
Nothing
KnownExtension
Exts.ExistentialQuantification -> forall a. a -> Maybe a
Just Extension
TH.ExistentialQuantification
KnownExtension
Exts.ScopedTypeVariables -> forall a. a -> Maybe a
Just Extension
TH.ScopedTypeVariables
KnownExtension
Exts.PatternSignatures -> forall a. Maybe a
Nothing
KnownExtension
Exts.ImplicitParams -> forall a. a -> Maybe a
Just Extension
TH.ImplicitParams
KnownExtension
Exts.FlexibleContexts -> forall a. a -> Maybe a
Just Extension
TH.FlexibleContexts
KnownExtension
Exts.FlexibleInstances -> forall a. a -> Maybe a
Just Extension
TH.FlexibleInstances
KnownExtension
Exts.EmptyDataDecls -> forall a. a -> Maybe a
Just Extension
TH.EmptyDataDecls
KnownExtension
Exts.CPP -> forall a. a -> Maybe a
Just Extension
TH.Cpp
KnownExtension
Exts.KindSignatures -> forall a. a -> Maybe a
Just Extension
TH.KindSignatures
KnownExtension
Exts.BangPatterns -> forall a. a -> Maybe a
Just Extension
TH.BangPatterns
KnownExtension
Exts.TypeSynonymInstances -> forall a. a -> Maybe a
Just Extension
TH.TypeSynonymInstances
KnownExtension
Exts.TemplateHaskell -> forall a. a -> Maybe a
Just Extension
TH.TemplateHaskell
KnownExtension
Exts.ForeignFunctionInterface -> forall a. a -> Maybe a
Just Extension
TH.ForeignFunctionInterface
KnownExtension
Exts.Arrows -> forall a. a -> Maybe a
Just Extension
TH.Arrows
KnownExtension
Exts.Generics -> forall a. Maybe a
Nothing
KnownExtension
Exts.ImplicitPrelude -> forall a. a -> Maybe a
Just Extension
TH.ImplicitPrelude
KnownExtension
Exts.NamedFieldPuns -> forall a. Maybe a
Nothing
KnownExtension
Exts.PatternGuards -> forall a. a -> Maybe a
Just Extension
TH.PatternGuards
KnownExtension
Exts.GeneralizedNewtypeDeriving -> forall a. a -> Maybe a
Just Extension
TH.GeneralizedNewtypeDeriving
KnownExtension
Exts.DeriveAnyClass -> forall a. a -> Maybe a
Just Extension
TH.DeriveAnyClass
KnownExtension
Exts.ExtensibleRecords -> forall a. Maybe a
Nothing
KnownExtension
Exts.RestrictedTypeSynonyms -> forall a. Maybe a
Nothing
KnownExtension
Exts.HereDocuments -> forall a. Maybe a
Nothing
KnownExtension
Exts.MagicHash -> forall a. a -> Maybe a
Just Extension
TH.MagicHash
KnownExtension
Exts.BinaryLiterals -> forall a. a -> Maybe a
Just Extension
TH.BinaryLiterals
KnownExtension
Exts.TypeFamilies -> forall a. a -> Maybe a
Just Extension
TH.TypeFamilies
KnownExtension
Exts.StandaloneDeriving -> forall a. a -> Maybe a
Just Extension
TH.StandaloneDeriving
KnownExtension
Exts.UnicodeSyntax -> forall a. a -> Maybe a
Just Extension
TH.UnicodeSyntax
KnownExtension
Exts.UnliftedFFITypes -> forall a. a -> Maybe a
Just Extension
TH.UnliftedFFITypes
KnownExtension
Exts.LiberalTypeSynonyms -> forall a. a -> Maybe a
Just Extension
TH.LiberalTypeSynonyms
KnownExtension
Exts.TypeOperators -> forall a. a -> Maybe a
Just Extension
TH.TypeOperators
KnownExtension
Exts.ParallelArrays -> forall a. a -> Maybe a
Just Extension
TH.ParallelArrays
KnownExtension
Exts.RecordWildCards -> forall a. a -> Maybe a
Just Extension
TH.RecordWildCards
#if __GLASGOW_HASKELL__ >= 904
Exts.RecordPuns -> Just TH.NamedFieldPuns
#else
KnownExtension
Exts.RecordPuns -> forall a. a -> Maybe a
Just Extension
TH.RecordPuns
#endif
KnownExtension
Exts.DisambiguateRecordFields -> forall a. a -> Maybe a
Just Extension
TH.DisambiguateRecordFields
KnownExtension
Exts.OverloadedStrings -> forall a. a -> Maybe a
Just Extension
TH.OverloadedStrings
KnownExtension
Exts.GADTs -> forall a. a -> Maybe a
Just Extension
TH.GADTs
KnownExtension
Exts.MonoPatBinds ->
#if !MIN_VERSION_template_haskell(2,18,0)
Just TH.MonoPatBinds
#else
forall a. Maybe a
Nothing
#endif
KnownExtension
Exts.RelaxedPolyRec -> forall a. a -> Maybe a
Just Extension
TH.RelaxedPolyRec
KnownExtension
Exts.ExtendedDefaultRules -> forall a. a -> Maybe a
Just Extension
TH.ExtendedDefaultRules
KnownExtension
Exts.UnboxedTuples -> forall a. a -> Maybe a
Just Extension
TH.UnboxedTuples
KnownExtension
Exts.DeriveDataTypeable -> forall a. a -> Maybe a
Just Extension
TH.DeriveDataTypeable
KnownExtension
Exts.ConstrainedClassMethods -> forall a. a -> Maybe a
Just Extension
TH.ConstrainedClassMethods
KnownExtension
Exts.PackageImports -> forall a. a -> Maybe a
Just Extension
TH.PackageImports
KnownExtension
Exts.LambdaCase -> forall a. a -> Maybe a
Just Extension
TH.LambdaCase
KnownExtension
Exts.EmptyCase -> forall a. a -> Maybe a
Just Extension
TH.EmptyCase
KnownExtension
Exts.ImpredicativeTypes -> forall a. a -> Maybe a
Just Extension
TH.ImpredicativeTypes
KnownExtension
Exts.NewQualifiedOperators -> forall a. Maybe a
Nothing
KnownExtension
Exts.PostfixOperators -> forall a. a -> Maybe a
Just Extension
TH.PostfixOperators
KnownExtension
Exts.QuasiQuotes -> forall a. a -> Maybe a
Just Extension
TH.QuasiQuotes
KnownExtension
Exts.TransformListComp -> forall a. a -> Maybe a
Just Extension
TH.TransformListComp
KnownExtension
Exts.ViewPatterns -> forall a. a -> Maybe a
Just Extension
TH.ViewPatterns
KnownExtension
Exts.XmlSyntax -> forall a. Maybe a
Nothing
KnownExtension
Exts.RegularPatterns -> forall a. Maybe a
Nothing
KnownExtension
Exts.TupleSections -> forall a. a -> Maybe a
Just Extension
TH.TupleSections
KnownExtension
Exts.GHCForeignImportPrim -> forall a. a -> Maybe a
Just Extension
TH.GHCForeignImportPrim
KnownExtension
Exts.NPlusKPatterns -> forall a. a -> Maybe a
Just Extension
TH.NPlusKPatterns
KnownExtension
Exts.DoAndIfThenElse -> forall a. a -> Maybe a
Just Extension
TH.DoAndIfThenElse
KnownExtension
Exts.RebindableSyntax -> forall a. a -> Maybe a
Just Extension
TH.RebindableSyntax
KnownExtension
Exts.ExplicitForAll -> forall a. a -> Maybe a
Just Extension
TH.ExplicitForAll
KnownExtension
Exts.DatatypeContexts -> forall a. a -> Maybe a
Just Extension
TH.DatatypeContexts
KnownExtension
Exts.MonoLocalBinds -> forall a. a -> Maybe a
Just Extension
TH.MonoLocalBinds
KnownExtension
Exts.DeriveFunctor -> forall a. a -> Maybe a
Just Extension
TH.DeriveFunctor
KnownExtension
Exts.DeriveGeneric -> forall a. a -> Maybe a
Just Extension
TH.DeriveGeneric
KnownExtension
Exts.DeriveTraversable -> forall a. a -> Maybe a
Just Extension
TH.DeriveTraversable
KnownExtension
Exts.DeriveFoldable -> forall a. a -> Maybe a
Just Extension
TH.DeriveFoldable
KnownExtension
Exts.NondecreasingIndentation -> forall a. a -> Maybe a
Just Extension
TH.NondecreasingIndentation
KnownExtension
Exts.InterruptibleFFI -> forall a. a -> Maybe a
Just Extension
TH.InterruptibleFFI
KnownExtension
Exts.CApiFFI -> forall a. a -> Maybe a
Just Extension
TH.CApiFFI
KnownExtension
Exts.JavaScriptFFI -> forall a. a -> Maybe a
Just Extension
TH.JavaScriptFFI
KnownExtension
Exts.ExplicitNamespaces -> forall a. a -> Maybe a
Just Extension
TH.ExplicitNamespaces
KnownExtension
Exts.DataKinds -> forall a. a -> Maybe a
Just Extension
TH.DataKinds
KnownExtension
Exts.PolyKinds -> forall a. a -> Maybe a
Just Extension
TH.PolyKinds
KnownExtension
Exts.MultiWayIf -> forall a. a -> Maybe a
Just Extension
TH.MultiWayIf
KnownExtension
Exts.SafeImports -> forall a. Maybe a
Nothing
KnownExtension
Exts.Safe -> forall a. Maybe a
Nothing
KnownExtension
Exts.Trustworthy -> forall a. Maybe a
Nothing
KnownExtension
Exts.DefaultSignatures -> forall a. a -> Maybe a
Just Extension
TH.DefaultSignatures
KnownExtension
Exts.ConstraintKinds -> forall a. a -> Maybe a
Just Extension
TH.ConstraintKinds
KnownExtension
Exts.RoleAnnotations -> forall a. a -> Maybe a
Just Extension
TH.RoleAnnotations
KnownExtension
Exts.PatternSynonyms -> forall a. a -> Maybe a
Just Extension
TH.PatternSynonyms
KnownExtension
Exts.PartialTypeSignatures -> forall a. a -> Maybe a
Just Extension
TH.PartialTypeSignatures
KnownExtension
Exts.NamedWildCards -> forall a. a -> Maybe a
Just Extension
TH.NamedWildCards
KnownExtension
Exts.TypeApplications -> forall a. a -> Maybe a
Just Extension
TH.TypeApplications
KnownExtension
Exts.TypeFamilyDependencies -> forall a. a -> Maybe a
Just Extension
TH.TypeFamilyDependencies
KnownExtension
Exts.OverloadedLabels -> forall a. a -> Maybe a
Just Extension
TH.OverloadedLabels
KnownExtension
Exts.DerivingStrategies -> forall a. a -> Maybe a
Just Extension
TH.DerivingStrategies
KnownExtension
Exts.UnboxedSums -> forall a. a -> Maybe a
Just Extension
TH.UnboxedSums
#if MIN_VERSION_haskell_src_exts(1,21,0)
KnownExtension
Exts.TypeInType -> forall a. a -> Maybe a
Just Extension
TH.TypeInType
#endif
KnownExtension
Exts.Strict -> forall a. a -> Maybe a
Just Extension
TH.Strict
KnownExtension
Exts.StrictData -> forall a. a -> Maybe a
Just Extension
TH.StrictData
#if MIN_VERSION_haskell_src_exts(1,21,0)
KnownExtension
Exts.DerivingVia ->
#if MIN_VERSION_template_haskell(2,14,0)
forall a. a -> Maybe a
Just Extension
TH.DerivingVia
#else
Nothing
#endif
#endif
#if MIN_VERSION_haskell_src_exts(1,22,0)
KnownExtension
Exts.QuantifiedConstraints ->
#if MIN_VERSION_template_haskell(2,14,0)
forall a. a -> Maybe a
Just Extension
TH.QuantifiedConstraints
#else
Nothing
#endif
#endif
#if MIN_VERSION_haskell_src_exts(1,23,0)
KnownExtension
Exts.BlockArguments ->
#if MIN_VERSION_template_haskell(2,14,0)
forall a. a -> Maybe a
Just Extension
TH.BlockArguments
#else
Nothing
#endif
#endif
fromExtension :: TH.Extension -> Maybe Exts.KnownExtension
fromExtension :: Extension -> Maybe KnownExtension
fromExtension Extension
e = case Extension
e of
Extension
TH.Cpp -> forall a. a -> Maybe a
Just KnownExtension
Exts.CPP
Extension
TH.OverlappingInstances -> forall a. a -> Maybe a
Just KnownExtension
Exts.OverlappingInstances
Extension
TH.UndecidableInstances -> forall a. a -> Maybe a
Just KnownExtension
Exts.UndecidableInstances
Extension
TH.IncoherentInstances -> forall a. a -> Maybe a
Just KnownExtension
Exts.IncoherentInstances
Extension
TH.UndecidableSuperClasses -> forall a. Maybe a
Nothing
Extension
TH.MonomorphismRestriction -> forall a. a -> Maybe a
Just KnownExtension
Exts.MonomorphismRestriction
#if !MIN_VERSION_template_haskell(2,18,0)
TH.MonoPatBinds -> Just Exts.MonoPatBinds
#endif
Extension
TH.MonoLocalBinds -> forall a. a -> Maybe a
Just KnownExtension
Exts.MonoLocalBinds
Extension
TH.RelaxedPolyRec -> forall a. a -> Maybe a
Just KnownExtension
Exts.RelaxedPolyRec
Extension
TH.ExtendedDefaultRules -> forall a. a -> Maybe a
Just KnownExtension
Exts.ExtendedDefaultRules
Extension
TH.ForeignFunctionInterface -> forall a. a -> Maybe a
Just KnownExtension
Exts.ForeignFunctionInterface
Extension
TH.UnliftedFFITypes -> forall a. a -> Maybe a
Just KnownExtension
Exts.UnliftedFFITypes
Extension
TH.InterruptibleFFI -> forall a. a -> Maybe a
Just KnownExtension
Exts.InterruptibleFFI
Extension
TH.CApiFFI -> forall a. a -> Maybe a
Just KnownExtension
Exts.CApiFFI
Extension
TH.GHCForeignImportPrim -> forall a. a -> Maybe a
Just KnownExtension
Exts.GHCForeignImportPrim
Extension
TH.JavaScriptFFI -> forall a. a -> Maybe a
Just KnownExtension
Exts.JavaScriptFFI
Extension
TH.ParallelArrays -> forall a. a -> Maybe a
Just KnownExtension
Exts.ParallelArrays
Extension
TH.Arrows -> forall a. a -> Maybe a
Just KnownExtension
Exts.Arrows
Extension
TH.TemplateHaskell -> forall a. a -> Maybe a
Just KnownExtension
Exts.TemplateHaskell
Extension
TH.TemplateHaskellQuotes -> forall a. Maybe a
Nothing
Extension
TH.QuasiQuotes -> forall a. a -> Maybe a
Just KnownExtension
Exts.QuasiQuotes
Extension
TH.ImplicitParams -> forall a. a -> Maybe a
Just KnownExtension
Exts.ImplicitParams
Extension
TH.ImplicitPrelude -> forall a. a -> Maybe a
Just KnownExtension
Exts.ImplicitPrelude
Extension
TH.ScopedTypeVariables -> forall a. a -> Maybe a
Just KnownExtension
Exts.ScopedTypeVariables
Extension
TH.AllowAmbiguousTypes -> forall a. Maybe a
Nothing
Extension
TH.UnboxedTuples -> forall a. a -> Maybe a
Just KnownExtension
Exts.UnboxedTuples
Extension
TH.UnboxedSums -> forall a. a -> Maybe a
Just KnownExtension
Exts.UnboxedSums
Extension
TH.BangPatterns -> forall a. a -> Maybe a
Just KnownExtension
Exts.BangPatterns
Extension
TH.TypeFamilies -> forall a. a -> Maybe a
Just KnownExtension
Exts.TypeFamilies
Extension
TH.TypeFamilyDependencies -> forall a. a -> Maybe a
Just KnownExtension
Exts.TypeFamilyDependencies
Extension
TH.TypeInType ->
#if MIN_VERSION_haskell_src_exts(1,21,0)
forall a. a -> Maybe a
Just KnownExtension
Exts.TypeInType
#else
Nothing
#endif
Extension
TH.OverloadedStrings -> forall a. a -> Maybe a
Just KnownExtension
Exts.OverloadedStrings
Extension
TH.OverloadedLists -> forall a. Maybe a
Nothing
Extension
TH.NumDecimals -> forall a. Maybe a
Nothing
Extension
TH.DisambiguateRecordFields -> forall a. a -> Maybe a
Just KnownExtension
Exts.DisambiguateRecordFields
Extension
TH.RecordWildCards -> forall a. a -> Maybe a
Just KnownExtension
Exts.RecordWildCards
#if __GLASGOW_HASKELL__ >= 904
TH.NamedFieldPuns -> Just Exts.RecordPuns
TH.QualifiedDo -> Nothing
TH.UnliftedDatatypes -> Nothing
TH.LinearTypes -> Nothing
TH.LexicalNegation -> Nothing
TH.FieldSelectors -> Nothing
TH.OverloadedRecordDot -> Nothing
TH.OverloadedRecordUpdate -> Nothing
#else
Extension
TH.RecordPuns -> forall a. a -> Maybe a
Just KnownExtension
Exts.RecordPuns
#endif
Extension
TH.ViewPatterns -> forall a. a -> Maybe a
Just KnownExtension
Exts.ViewPatterns
Extension
TH.GADTs -> forall a. a -> Maybe a
Just KnownExtension
Exts.GADTs
Extension
TH.GADTSyntax -> forall a. Maybe a
Nothing
Extension
TH.NPlusKPatterns -> forall a. a -> Maybe a
Just KnownExtension
Exts.NPlusKPatterns
Extension
TH.DoAndIfThenElse -> forall a. a -> Maybe a
Just KnownExtension
Exts.DoAndIfThenElse
Extension
TH.RebindableSyntax -> forall a. a -> Maybe a
Just KnownExtension
Exts.RebindableSyntax
Extension
TH.ConstraintKinds -> forall a. a -> Maybe a
Just KnownExtension
Exts.ConstraintKinds
Extension
TH.PolyKinds -> forall a. a -> Maybe a
Just KnownExtension
Exts.PolyKinds
Extension
TH.DataKinds -> forall a. a -> Maybe a
Just KnownExtension
Exts.DataKinds
Extension
TH.InstanceSigs -> forall a. a -> Maybe a
Just KnownExtension
Exts.InstanceSigs
Extension
TH.ApplicativeDo -> forall a. Maybe a
Nothing
Extension
TH.StandaloneDeriving -> forall a. a -> Maybe a
Just KnownExtension
Exts.StandaloneDeriving
Extension
TH.DeriveDataTypeable -> forall a. a -> Maybe a
Just KnownExtension
Exts.DeriveDataTypeable
Extension
TH.AutoDeriveTypeable -> forall a. Maybe a
Nothing
Extension
TH.DeriveFunctor -> forall a. a -> Maybe a
Just KnownExtension
Exts.DeriveFunctor
Extension
TH.DeriveTraversable -> forall a. a -> Maybe a
Just KnownExtension
Exts.DeriveTraversable
Extension
TH.DeriveFoldable -> forall a. a -> Maybe a
Just KnownExtension
Exts.DeriveFoldable
Extension
TH.DeriveGeneric -> forall a. a -> Maybe a
Just KnownExtension
Exts.DeriveGeneric
Extension
TH.DefaultSignatures -> forall a. a -> Maybe a
Just KnownExtension
Exts.DefaultSignatures
Extension
TH.DeriveAnyClass -> forall a. a -> Maybe a
Just KnownExtension
Exts.DeriveAnyClass
Extension
TH.DeriveLift -> forall a. Maybe a
Nothing
Extension
TH.DerivingStrategies -> forall a. a -> Maybe a
Just KnownExtension
Exts.DerivingStrategies
Extension
TH.TypeSynonymInstances -> forall a. a -> Maybe a
Just KnownExtension
Exts.TypeSynonymInstances
Extension
TH.FlexibleContexts -> forall a. a -> Maybe a
Just KnownExtension
Exts.FlexibleContexts
Extension
TH.FlexibleInstances -> forall a. a -> Maybe a
Just KnownExtension
Exts.FlexibleInstances
Extension
TH.ConstrainedClassMethods -> forall a. a -> Maybe a
Just KnownExtension
Exts.ConstrainedClassMethods
Extension
TH.MultiParamTypeClasses -> forall a. a -> Maybe a
Just KnownExtension
Exts.MultiParamTypeClasses
Extension
TH.NullaryTypeClasses -> forall a. Maybe a
Nothing
Extension
TH.FunctionalDependencies -> forall a. a -> Maybe a
Just KnownExtension
Exts.FunctionalDependencies
Extension
TH.UnicodeSyntax -> forall a. a -> Maybe a
Just KnownExtension
Exts.UnicodeSyntax
Extension
TH.ExistentialQuantification -> forall a. a -> Maybe a
Just KnownExtension
Exts.ExistentialQuantification
Extension
TH.MagicHash -> forall a. a -> Maybe a
Just KnownExtension
Exts.MagicHash
Extension
TH.EmptyDataDecls -> forall a. a -> Maybe a
Just KnownExtension
Exts.EmptyDataDecls
Extension
TH.KindSignatures -> forall a. a -> Maybe a
Just KnownExtension
Exts.KindSignatures
Extension
TH.RoleAnnotations -> forall a. a -> Maybe a
Just KnownExtension
Exts.RoleAnnotations
Extension
TH.ParallelListComp -> forall a. a -> Maybe a
Just KnownExtension
Exts.ParallelListComp
Extension
TH.TransformListComp -> forall a. a -> Maybe a
Just KnownExtension
Exts.TransformListComp
Extension
TH.MonadComprehensions -> forall a. Maybe a
Nothing
Extension
TH.GeneralizedNewtypeDeriving -> forall a. a -> Maybe a
Just KnownExtension
Exts.GeneralizedNewtypeDeriving
Extension
TH.RecursiveDo -> forall a. a -> Maybe a
Just KnownExtension
Exts.RecursiveDo
Extension
TH.PostfixOperators -> forall a. a -> Maybe a
Just KnownExtension
Exts.PostfixOperators
Extension
TH.TupleSections -> forall a. a -> Maybe a
Just KnownExtension
Exts.TupleSections
Extension
TH.PatternGuards -> forall a. a -> Maybe a
Just KnownExtension
Exts.PatternGuards
Extension
TH.LiberalTypeSynonyms -> forall a. a -> Maybe a
Just KnownExtension
Exts.LiberalTypeSynonyms
Extension
TH.RankNTypes -> forall a. a -> Maybe a
Just KnownExtension
Exts.RankNTypes
Extension
TH.ImpredicativeTypes -> forall a. a -> Maybe a
Just KnownExtension
Exts.ImpredicativeTypes
Extension
TH.TypeOperators -> forall a. a -> Maybe a
Just KnownExtension
Exts.TypeOperators
Extension
TH.ExplicitNamespaces -> forall a. a -> Maybe a
Just KnownExtension
Exts.ExplicitNamespaces
Extension
TH.PackageImports -> forall a. a -> Maybe a
Just KnownExtension
Exts.PackageImports
Extension
TH.ExplicitForAll -> forall a. a -> Maybe a
Just KnownExtension
Exts.ExplicitForAll
Extension
TH.AlternativeLayoutRule -> forall a. Maybe a
Nothing
Extension
TH.AlternativeLayoutRuleTransitional -> forall a. Maybe a
Nothing
Extension
TH.DatatypeContexts -> forall a. a -> Maybe a
Just KnownExtension
Exts.DatatypeContexts
Extension
TH.NondecreasingIndentation -> forall a. a -> Maybe a
Just KnownExtension
Exts.NondecreasingIndentation
Extension
TH.RelaxedLayout -> forall a. Maybe a
Nothing
Extension
TH.TraditionalRecordSyntax -> forall a. Maybe a
Nothing
Extension
TH.LambdaCase -> forall a. a -> Maybe a
Just KnownExtension
Exts.LambdaCase
Extension
TH.MultiWayIf -> forall a. a -> Maybe a
Just KnownExtension
Exts.MultiWayIf
Extension
TH.BinaryLiterals -> forall a. a -> Maybe a
Just KnownExtension
Exts.BinaryLiterals
Extension
TH.NegativeLiterals -> forall a. Maybe a
Nothing
Extension
TH.DuplicateRecordFields -> forall a. Maybe a
Nothing
Extension
TH.OverloadedLabels -> forall a. a -> Maybe a
Just KnownExtension
Exts.OverloadedLabels
Extension
TH.EmptyCase -> forall a. a -> Maybe a
Just KnownExtension
Exts.EmptyCase
Extension
TH.PatternSynonyms -> forall a. a -> Maybe a
Just KnownExtension
Exts.PatternSynonyms
Extension
TH.PartialTypeSignatures -> forall a. a -> Maybe a
Just KnownExtension
Exts.PartialTypeSignatures
Extension
TH.NamedWildCards -> forall a. a -> Maybe a
Just KnownExtension
Exts.NamedWildCards
Extension
TH.StaticPointers -> forall a. Maybe a
Nothing
Extension
TH.TypeApplications -> forall a. a -> Maybe a
Just KnownExtension
Exts.TypeApplications
Extension
TH.Strict -> forall a. a -> Maybe a
Just KnownExtension
Exts.Strict
Extension
TH.StrictData -> forall a. a -> Maybe a
Just KnownExtension
Exts.StrictData
#if !MIN_VERSION_template_haskell(2,18,0)
TH.MonadFailDesugaring -> Nothing
#endif
#if MIN_VERSION_template_haskell(2,13,0)
Extension
TH.HexFloatLiterals -> forall a. Maybe a
Nothing
Extension
TH.EmptyDataDeriving -> forall a. Maybe a
Nothing
#endif
#if MIN_VERSION_template_haskell(2,14,0)
Extension
TH.DerivingVia ->
#if MIN_VERSION_haskell_src_exts(1,21,0)
forall a. a -> Maybe a
Just KnownExtension
Exts.DerivingVia
#else
Nothing
#endif
Extension
TH.QuantifiedConstraints ->
#if MIN_VERSION_haskell_src_exts(1,22,0)
forall a. a -> Maybe a
Just KnownExtension
Exts.QuantifiedConstraints
#else
Nothing
#endif
Extension
TH.BlockArguments ->
#if MIN_VERSION_haskell_src_exts(1,23,0)
forall a. a -> Maybe a
Just KnownExtension
Exts.BlockArguments
#else
Nothing
#endif
Extension
TH.NumericUnderscores -> forall a. Maybe a
Nothing
Extension
TH.StarIsType -> forall a. Maybe a
Nothing
#endif
#if MIN_VERSION_template_haskell(2,16,0)
Extension
TH.UnliftedNewtypes -> forall a. Maybe a
Nothing
Extension
TH.ImportQualifiedPost -> forall a. Maybe a
Nothing
Extension
TH.CUSKs -> forall a. Maybe a
Nothing
Extension
TH.StandaloneKindSignatures -> forall a. Maybe a
Nothing
#endif
#if MIN_VERSION_template_haskell(2,19,0)
TH.DeepSubsumption -> Nothing
#endif