| Safe Haskell | Safe |
|---|---|
| Language | Haskell2010 |
Language.Haskell.Exts.Simple.Syntax
Description
This module reexports a simplified view on Language.Haskell.Exts.Syntax. The idea is to expose datatypes like
data Name l = Ident l String | Symbol l String
using ghc's pattern synonyms:
type Name = H.Name () pattern Ident a = H.Ident () a pattern Symbol a = H.Symbol () a
This works nicely for all datatypes with two exception:
ImportDeclhas a record constructor. Record type synonyms are only supported ghc-8.0 and later, so for ghc-7.10 and earlier, the constructor is exported as a plain constructor, and the record fields as function.Literalhas constructors with an extraStringargument that is not used byPretty. This module uses explicitly bidirectional pattern synonyms to support this type, but support for that is only available in ghc-7.10 and later.
IMPORTANT: if you require compatiblity with ghc 7.8, you should use the
functions charL, stringL etc. for constructing Literal values!
Synopsis
- type Alt = Alt ()
- type FieldUpdate = FieldUpdate ()
- type QualStmt = QualStmt ()
- type Stmt = Stmt ()
- type PatField = PatField ()
- type RPat = RPat ()
- type RPatOp = RPatOp ()
- type PXAttr = PXAttr ()
- type Pat = Pat ()
- type WarningText = WarningText ()
- type RuleVar = RuleVar ()
- type Rule = Rule ()
- type Activation = Activation ()
- type Overlap = Overlap ()
- type ModulePragma = ModulePragma ()
- type CallConv = CallConv ()
- type Safety = Safety ()
- type Splice = Splice ()
- type Bracket = Bracket ()
- type XAttr = XAttr ()
- type XName = XName ()
- type Exp = Exp ()
- type Sign = Sign ()
- type Literal = Literal ()
- type Asst = Asst ()
- type Context = Context ()
- type FunDep = FunDep ()
- type Kind = Kind ()
- type TyVarBind = TyVarBind ()
- type Promoted = Promoted ()
- type MaybePromotedName = MaybePromotedName ()
- type Type = Type ()
- type GuardedRhs = GuardedRhs ()
- type Rhs = Rhs ()
- type Unpackedness = Unpackedness ()
- type BangType = BangType ()
- type InstDecl = InstDecl ()
- type ClassDecl = ClassDecl ()
- type GadtDecl = GadtDecl ()
- type FieldDecl = FieldDecl ()
- type ConDecl = ConDecl ()
- type QualConDecl = QualConDecl ()
- type Match = Match ()
- type IPBind = IPBind ()
- type Binds = Binds ()
- type DerivStrategy = DerivStrategy ()
- type Deriving = Deriving ()
- type InstHead = InstHead ()
- type InstRule = InstRule ()
- type DeclHead = DeclHead ()
- type ResultSig = ResultSig ()
- type InjectivityInfo = InjectivityInfo ()
- type DataOrNew = DataOrNew ()
- type Role = Role ()
- type BooleanFormula = BooleanFormula ()
- type Annotation = Annotation ()
- type TypeEqn = TypeEqn ()
- type PatternSynDirection = PatternSynDirection ()
- type Decl = Decl ()
- type Assoc = Assoc ()
- type ImportSpec = ImportSpec ()
- type ImportSpecList = ImportSpecList ()
- type ImportDecl = ImportDecl ()
- type Namespace = Namespace ()
- type EWildcard = EWildcard ()
- type ExportSpec = ExportSpec ()
- type ExportSpecList = ExportSpecList ()
- type ModuleHead = ModuleHead ()
- type Module = Module ()
- type CName = CName ()
- type Op = Op ()
- type QOp = QOp ()
- type IPName = IPName ()
- type Name = Name ()
- type QName = QName ()
- type SpecialCon = SpecialCon ()
- type ModuleName = ModuleName ()
- pattern Alt :: Pat -> Rhs -> Maybe Binds -> Alt
- pattern FieldWildcard :: FieldUpdate
- pattern FieldPun :: QName -> FieldUpdate
- pattern FieldUpdate :: QName -> Exp -> FieldUpdate
- pattern GroupByUsing :: Exp -> Exp -> QualStmt
- pattern GroupUsing :: Exp -> QualStmt
- pattern GroupBy :: Exp -> QualStmt
- pattern ThenBy :: Exp -> Exp -> QualStmt
- pattern ThenTrans :: Exp -> QualStmt
- pattern QualStmt :: Stmt -> QualStmt
- pattern RecStmt :: [Stmt] -> Stmt
- pattern LetStmt :: Binds -> Stmt
- pattern Qualifier :: Exp -> Stmt
- pattern Generator :: Pat -> Exp -> Stmt
- pattern PFieldWildcard :: PatField
- pattern PFieldPun :: QName -> PatField
- pattern PFieldPat :: QName -> Pat -> PatField
- pattern RPPat :: Pat -> RPat
- pattern RPParen :: RPat -> RPat
- pattern RPAs :: Name -> RPat -> RPat
- pattern RPCAs :: Name -> RPat -> RPat
- pattern RPGuard :: Pat -> [Stmt] -> RPat
- pattern RPSeq :: [RPat] -> RPat
- pattern RPEither :: RPat -> RPat -> RPat
- pattern RPOp :: RPat -> RPatOp -> RPat
- pattern RPOptG :: RPatOp
- pattern RPOpt :: RPatOp
- pattern RPPlusG :: RPatOp
- pattern RPPlus :: RPatOp
- pattern RPStarG :: RPatOp
- pattern RPStar :: RPatOp
- pattern PXAttr :: XName -> Pat -> PXAttr
- pattern PBangPat :: Pat -> Pat
- pattern PQuasiQuote :: String -> String -> Pat
- pattern PSplice :: Splice -> Pat
- pattern PXRPats :: [RPat] -> Pat
- pattern PXPatTag :: Pat -> Pat
- pattern PXPcdata :: String -> Pat
- pattern PXETag :: XName -> [PXAttr] -> Maybe Pat -> Pat
- pattern PXTag :: XName -> [PXAttr] -> Maybe Pat -> [Pat] -> Pat
- pattern PRPat :: [RPat] -> Pat
- pattern PViewPat :: Exp -> Pat -> Pat
- pattern PatTypeSig :: Pat -> Type -> Pat
- pattern PIrrPat :: Pat -> Pat
- pattern PWildCard :: Pat
- pattern PAsPat :: Name -> Pat -> Pat
- pattern PRec :: QName -> [PatField] -> Pat
- pattern PParen :: Pat -> Pat
- pattern PList :: [Pat] -> Pat
- pattern PUnboxedSum :: Int -> Int -> Pat -> Pat
- pattern PTuple :: Boxed -> [Pat] -> Pat
- pattern PApp :: QName -> [Pat] -> Pat
- pattern PInfixApp :: Pat -> QName -> Pat -> Pat
- pattern PNPlusK :: Name -> Integer -> Pat
- pattern PLit :: Sign -> Literal -> Pat
- pattern PVar :: Name -> Pat
- pattern WarnText :: String -> WarningText
- pattern DeprText :: String -> WarningText
- pattern TypedRuleVar :: Name -> Type -> RuleVar
- pattern RuleVar :: Name -> RuleVar
- pattern Rule :: String -> Maybe Activation -> Maybe [RuleVar] -> Exp -> Exp -> Rule
- pattern ActiveUntil :: Int -> Activation
- pattern ActiveFrom :: Int -> Activation
- pattern Incoherent :: Overlap
- pattern Overlappable :: Overlap
- pattern Overlaps :: Overlap
- pattern Overlapping :: Overlap
- pattern Overlap :: Overlap
- pattern NoOverlap :: Overlap
- pattern AnnModulePragma :: Annotation -> ModulePragma
- pattern OptionsPragma :: Maybe Tool -> String -> ModulePragma
- pattern LanguagePragma :: [Name] -> ModulePragma
- pattern CApi :: CallConv
- pattern JavaScript :: CallConv
- pattern Js :: CallConv
- pattern Jvm :: CallConv
- pattern DotNet :: CallConv
- pattern CPlusPlus :: CallConv
- pattern CCall :: CallConv
- pattern StdCall :: CallConv
- pattern PlayInterruptible :: Safety
- pattern PlaySafe :: Bool -> Safety
- pattern PlayRisky :: Safety
- pattern ParenSplice :: Exp -> Splice
- pattern IdSplice :: String -> Splice
- pattern DeclBracket :: [Decl] -> Bracket
- pattern TypeBracket :: Type -> Bracket
- pattern PatBracket :: Pat -> Bracket
- pattern ExpBracket :: Exp -> Bracket
- pattern XAttr :: XName -> Exp -> XAttr
- pattern XDomName :: String -> String -> XName
- pattern XName :: String -> XName
- pattern LCase :: [Alt] -> Exp
- pattern RightArrHighApp :: Exp -> Exp -> Exp
- pattern LeftArrHighApp :: Exp -> Exp -> Exp
- pattern RightArrApp :: Exp -> Exp -> Exp
- pattern LeftArrApp :: Exp -> Exp -> Exp
- pattern Proc :: Pat -> Exp -> Exp
- pattern GenPragma :: String -> (Int, Int) -> (Int, Int) -> Exp -> Exp
- pattern SCCPragma :: String -> Exp -> Exp
- pattern CorePragma :: String -> Exp -> Exp
- pattern XChildTag :: [Exp] -> Exp
- pattern XExpTag :: Exp -> Exp
- pattern XPcdata :: String -> Exp
- pattern XETag :: XName -> [XAttr] -> Maybe Exp -> Exp
- pattern XTag :: XName -> [XAttr] -> Maybe Exp -> [Exp] -> Exp
- pattern TypeApp :: Type -> Exp
- pattern QuasiQuote :: String -> String -> Exp
- pattern SpliceExp :: Splice -> Exp
- pattern BracketExp :: Bracket -> Exp
- pattern TypQuote :: QName -> Exp
- pattern VarQuote :: QName -> Exp
- pattern ExpTypeSig :: Exp -> Type -> Exp
- pattern ParArrayComp :: Exp -> [[QualStmt]] -> Exp
- pattern ParComp :: Exp -> [[QualStmt]] -> Exp
- pattern ListComp :: Exp -> [QualStmt] -> Exp
- pattern ParArrayFromThenTo :: Exp -> Exp -> Exp -> Exp
- pattern ParArrayFromTo :: Exp -> Exp -> Exp
- pattern EnumFromThenTo :: Exp -> Exp -> Exp -> Exp
- pattern EnumFromThen :: Exp -> Exp -> Exp
- pattern EnumFromTo :: Exp -> Exp -> Exp
- pattern EnumFrom :: Exp -> Exp
- pattern RecUpdate :: Exp -> [FieldUpdate] -> Exp
- pattern RecConstr :: QName -> [FieldUpdate] -> Exp
- pattern RightSection :: QOp -> Exp -> Exp
- pattern LeftSection :: Exp -> QOp -> Exp
- pattern Paren :: Exp -> Exp
- pattern ParArray :: [Exp] -> Exp
- pattern List :: [Exp] -> Exp
- pattern TupleSection :: Boxed -> [Maybe Exp] -> Exp
- pattern UnboxedSum :: Int -> Int -> Exp -> Exp
- pattern Tuple :: Boxed -> [Exp] -> Exp
- pattern MDo :: [Stmt] -> Exp
- pattern Do :: [Stmt] -> Exp
- pattern Case :: Exp -> [Alt] -> Exp
- pattern MultiIf :: [GuardedRhs] -> Exp
- pattern If :: Exp -> Exp -> Exp -> Exp
- pattern Let :: Binds -> Exp -> Exp
- pattern Lambda :: [Pat] -> Exp -> Exp
- pattern NegApp :: Exp -> Exp
- pattern App :: Exp -> Exp -> Exp
- pattern InfixApp :: Exp -> QOp -> Exp -> Exp
- pattern Lit :: Literal -> Exp
- pattern Con :: QName -> Exp
- pattern IPVar :: IPName -> Exp
- pattern OverloadedLabel :: String -> Exp
- pattern Var :: QName -> Exp
- pattern Negative :: Sign
- pattern Signless :: Sign
- pattern PrimString :: String -> Literal
- pattern PrimChar :: Char -> Literal
- pattern PrimDouble :: Rational -> Literal
- pattern PrimFloat :: Rational -> Literal
- pattern PrimWord :: Integer -> Literal
- pattern PrimInt :: Integer -> Literal
- pattern Frac :: Rational -> Literal
- pattern Int :: Integer -> Literal
- pattern String :: String -> Literal
- pattern Char :: Char -> Literal
- pattern WildCardA :: Maybe Name -> Asst
- pattern ParenA :: Asst -> Asst
- pattern EqualP :: Type -> Type -> Asst
- pattern IParam :: IPName -> Type -> Asst
- pattern InfixA :: Type -> QName -> Type -> Asst
- pattern AppA :: Name -> [Type] -> Asst
- pattern ClassA :: QName -> [Type] -> Asst
- pattern CxEmpty :: Context
- pattern CxTuple :: [Asst] -> Context
- pattern CxSingle :: Asst -> Context
- pattern FunDep :: [Name] -> [Name] -> FunDep
- pattern UnkindedVar :: Name -> TyVarBind
- pattern KindedVar :: Name -> Kind -> TyVarBind
- pattern PromotedUnit :: Promoted
- pattern PromotedTuple :: [Type] -> Promoted
- pattern PromotedList :: Bool -> [Type] -> Promoted
- pattern PromotedCon :: Bool -> QName -> Promoted
- pattern PromotedString :: String -> String -> Promoted
- pattern PromotedInteger :: Integer -> String -> Promoted
- pattern UnpromotedName :: QName -> MaybePromotedName
- pattern PromotedName :: QName -> MaybePromotedName
- pattern TyQuasiQuote :: String -> String -> Type
- pattern TyWildCard :: Maybe Name -> Type
- pattern TyBang :: BangType -> Unpackedness -> Type -> Type
- pattern TySplice :: Splice -> Type
- pattern TyEquals :: Type -> Type -> Type
- pattern TyPromoted :: Promoted -> Type
- pattern TyKind :: Type -> Kind -> Type
- pattern TyInfix :: Type -> MaybePromotedName -> Type -> Type
- pattern TyParen :: Type -> Type
- pattern TyCon :: QName -> Type
- pattern TyVar :: Name -> Type
- pattern TyApp :: Type -> Type -> Type
- pattern TyParArray :: Type -> Type
- pattern TyList :: Type -> Type
- pattern TyUnboxedSum :: [Type] -> Type
- pattern TyTuple :: Boxed -> [Type] -> Type
- pattern TyFun :: Type -> Type -> Type
- pattern TyStar :: Type
- pattern TyForall :: Maybe [TyVarBind] -> Maybe Context -> Type -> Type
- pattern GuardedRhs :: [Stmt] -> Exp -> GuardedRhs
- pattern GuardedRhss :: [GuardedRhs] -> Rhs
- pattern UnGuardedRhs :: Exp -> Rhs
- pattern NoUnpackPragma :: Unpackedness
- pattern NoUnpack :: Unpackedness
- pattern Unpack :: Unpackedness
- pattern NoStrictAnnot :: BangType
- pattern LazyTy :: BangType
- pattern BangedTy :: BangType
- pattern InsGData :: DataOrNew -> Type -> Maybe Kind -> [GadtDecl] -> [Deriving] -> InstDecl
- pattern InsData :: DataOrNew -> Type -> [QualConDecl] -> [Deriving] -> InstDecl
- pattern InsType :: Type -> Type -> InstDecl
- pattern InsDecl :: Decl -> InstDecl
- pattern ClsDefSig :: Name -> Type -> ClassDecl
- pattern ClsTyDef :: TypeEqn -> ClassDecl
- pattern ClsTyFam :: DeclHead -> Maybe ResultSig -> Maybe InjectivityInfo -> ClassDecl
- pattern ClsDataFam :: Maybe Context -> DeclHead -> Maybe ResultSig -> ClassDecl
- pattern ClsDecl :: Decl -> ClassDecl
- pattern GadtDecl :: Name -> Maybe [TyVarBind] -> Maybe Context -> Maybe [FieldDecl] -> Type -> GadtDecl
- pattern FieldDecl :: [Name] -> Type -> FieldDecl
- pattern RecDecl :: Name -> [FieldDecl] -> ConDecl
- pattern InfixConDecl :: Type -> Name -> Type -> ConDecl
- pattern ConDecl :: Name -> [Type] -> ConDecl
- pattern QualConDecl :: Maybe [TyVarBind] -> Maybe Context -> ConDecl -> QualConDecl
- pattern InfixMatch :: Pat -> Name -> [Pat] -> Rhs -> Maybe Binds -> Match
- pattern Match :: Name -> [Pat] -> Rhs -> Maybe Binds -> Match
- pattern IPBind :: IPName -> Exp -> IPBind
- pattern IPBinds :: [IPBind] -> Binds
- pattern BDecls :: [Decl] -> Binds
- pattern DerivVia :: Type -> DerivStrategy
- pattern DerivNewtype :: DerivStrategy
- pattern DerivAnyclass :: DerivStrategy
- pattern DerivStock :: DerivStrategy
- pattern Deriving :: Maybe DerivStrategy -> [InstRule] -> Deriving
- pattern IHApp :: InstHead -> Type -> InstHead
- pattern IHParen :: InstHead -> InstHead
- pattern IHInfix :: Type -> QName -> InstHead
- pattern IHCon :: QName -> InstHead
- pattern IParen :: InstRule -> InstRule
- pattern IRule :: Maybe [TyVarBind] -> Maybe Context -> InstHead -> InstRule
- pattern DHApp :: DeclHead -> TyVarBind -> DeclHead
- pattern DHParen :: DeclHead -> DeclHead
- pattern DHInfix :: TyVarBind -> Name -> DeclHead
- pattern DHead :: Name -> DeclHead
- pattern TyVarSig :: TyVarBind -> ResultSig
- pattern KindSig :: Kind -> ResultSig
- pattern InjectivityInfo :: Name -> [Name] -> InjectivityInfo
- pattern NewType :: DataOrNew
- pattern DataType :: DataOrNew
- pattern RoleWildcard :: Role
- pattern Phantom :: Role
- pattern Representational :: Role
- pattern Nominal :: Role
- pattern ParenFormula :: BooleanFormula -> BooleanFormula
- pattern OrFormula :: [BooleanFormula] -> BooleanFormula
- pattern AndFormula :: [BooleanFormula] -> BooleanFormula
- pattern VarFormula :: Name -> BooleanFormula
- pattern ModuleAnn :: Exp -> Annotation
- pattern TypeAnn :: Name -> Exp -> Annotation
- pattern Ann :: Name -> Exp -> Annotation
- pattern TypeEqn :: Type -> Type -> TypeEqn
- pattern ExplicitBidirectional :: [Decl] -> PatternSynDirection
- pattern ImplicitBidirectional :: PatternSynDirection
- pattern Unidirectional :: PatternSynDirection
- pattern CompletePragma :: [Name] -> Maybe QName -> Decl
- pattern RoleAnnotDecl :: QName -> [Role] -> Decl
- pattern MinimalPragma :: Maybe BooleanFormula -> Decl
- pattern AnnPragma :: Annotation -> Decl
- pattern InstSig :: InstRule -> Decl
- pattern SpecInlineSig :: Bool -> Maybe Activation -> QName -> [Type] -> Decl
- pattern SpecSig :: Maybe Activation -> QName -> [Type] -> Decl
- pattern InlineConlikeSig :: Maybe Activation -> QName -> Decl
- pattern InlineSig :: Bool -> Maybe Activation -> QName -> Decl
- pattern WarnPragmaDecl :: [([Name], String)] -> Decl
- pattern DeprPragmaDecl :: [([Name], String)] -> Decl
- pattern RulePragmaDecl :: [Rule] -> Decl
- pattern ForExp :: CallConv -> Maybe String -> Name -> Type -> Decl
- pattern ForImp :: CallConv -> Maybe Safety -> Maybe String -> Name -> Type -> Decl
- pattern PatSyn :: Pat -> Pat -> PatternSynDirection -> Decl
- pattern PatBind :: Pat -> Rhs -> Maybe Binds -> Decl
- pattern FunBind :: [Match] -> Decl
- pattern PatSynSig :: [Name] -> Maybe [TyVarBind] -> Maybe Context -> Maybe [TyVarBind] -> Maybe Context -> Type -> Decl
- pattern TypeSig :: [Name] -> Type -> Decl
- pattern SpliceDecl :: Exp -> Decl
- pattern DefaultDecl :: [Type] -> Decl
- pattern InfixDecl :: Assoc -> Maybe Int -> [Op] -> Decl
- pattern DerivDecl :: Maybe DerivStrategy -> Maybe Overlap -> InstRule -> Decl
- pattern InstDecl :: Maybe Overlap -> InstRule -> Maybe [InstDecl] -> Decl
- pattern ClassDecl :: Maybe Context -> DeclHead -> [FunDep] -> Maybe [ClassDecl] -> Decl
- pattern GDataInsDecl :: DataOrNew -> Type -> Maybe Kind -> [GadtDecl] -> [Deriving] -> Decl
- pattern DataInsDecl :: DataOrNew -> Type -> [QualConDecl] -> [Deriving] -> Decl
- pattern TypeInsDecl :: Type -> Type -> Decl
- pattern DataFamDecl :: Maybe Context -> DeclHead -> Maybe ResultSig -> Decl
- pattern GDataDecl :: DataOrNew -> Maybe Context -> DeclHead -> Maybe Kind -> [GadtDecl] -> [Deriving] -> Decl
- pattern DataDecl :: DataOrNew -> Maybe Context -> DeclHead -> [QualConDecl] -> [Deriving] -> Decl
- pattern ClosedTypeFamDecl :: DeclHead -> Maybe ResultSig -> Maybe InjectivityInfo -> [TypeEqn] -> Decl
- pattern TypeFamDecl :: DeclHead -> Maybe ResultSig -> Maybe InjectivityInfo -> Decl
- pattern TypeDecl :: DeclHead -> Type -> Decl
- pattern AssocRight :: Assoc
- pattern AssocLeft :: Assoc
- pattern AssocNone :: Assoc
- pattern IThingWith :: Name -> [CName] -> ImportSpec
- pattern IThingAll :: Name -> ImportSpec
- pattern IAbs :: Namespace -> Name -> ImportSpec
- pattern IVar :: Name -> ImportSpec
- pattern ImportSpecList :: Bool -> [ImportSpec] -> ImportSpecList
- pattern ImportDecl :: ModuleName () -> Bool -> Bool -> Bool -> Maybe String -> Maybe (ModuleName ()) -> Maybe (ImportSpecList ()) -> ImportDecl
- importModule :: ImportDecl -> ModuleName ()
- importQualified :: ImportDecl -> Bool
- importSrc :: ImportDecl -> Bool
- importSafe :: ImportDecl -> Bool
- importPkg :: ImportDecl -> Maybe String
- importAs :: ImportDecl -> Maybe (ModuleName ())
- importSpecs :: ImportDecl -> Maybe (ImportSpecList ())
- pattern PatternNamespace :: Namespace
- pattern TypeNamespace :: Namespace
- pattern NoNamespace :: Namespace
- pattern EWildcard :: Int -> EWildcard
- pattern NoWildcard :: EWildcard
- pattern EModuleContents :: ModuleName -> ExportSpec
- pattern EThingWith :: EWildcard -> QName -> [CName] -> ExportSpec
- pattern EAbs :: Namespace -> QName -> ExportSpec
- pattern EVar :: QName -> ExportSpec
- pattern ExportSpecList :: [ExportSpec] -> ExportSpecList
- pattern ModuleHead :: ModuleName -> Maybe WarningText -> Maybe ExportSpecList -> ModuleHead
- pattern XmlHybrid :: Maybe ModuleHead -> [ModulePragma] -> [ImportDecl] -> [Decl] -> XName -> [XAttr] -> Maybe Exp -> [Exp] -> Module
- pattern XmlPage :: ModuleName -> [ModulePragma] -> XName -> [XAttr] -> Maybe Exp -> [Exp] -> Module
- pattern Module :: Maybe ModuleHead -> [ModulePragma] -> [ImportDecl] -> [Decl] -> Module
- pattern ConName :: Name -> CName
- pattern VarName :: Name -> CName
- pattern ConOp :: Name -> Op
- pattern VarOp :: Name -> Op
- pattern QConOp :: QName -> QOp
- pattern QVarOp :: QName -> QOp
- pattern IPLin :: String -> IPName
- pattern IPDup :: String -> IPName
- pattern Symbol :: String -> Name
- pattern Ident :: String -> Name
- pattern Special :: SpecialCon -> QName
- pattern UnQual :: Name -> QName
- pattern Qual :: ModuleName -> Name -> QName
- pattern ExprHole :: SpecialCon
- pattern UnboxedSingleCon :: SpecialCon
- pattern Cons :: SpecialCon
- pattern TupleCon :: Boxed -> Int -> SpecialCon
- pattern FunCon :: SpecialCon
- pattern ListCon :: SpecialCon
- pattern UnitCon :: SpecialCon
- pattern ModuleName :: String -> ModuleName
- charL :: Char -> Literal
- stringL :: String -> Literal
- intL :: Integer -> Literal
- fracL :: Rational -> Literal
- primIntL :: Integer -> Literal
- primWordL :: Integer -> Literal
- primFloatL :: Rational -> Literal
- primDoubleL :: Rational -> Literal
- primCharL :: Char -> Literal
- primStringL :: String -> Literal
- prelude_mod :: ModuleName
- main_mod :: ModuleName
- main_name :: Name
- unit_con_name :: QName
- tuple_con_name :: Boxed -> Int -> QName
- list_con_name :: QName
- list_cons_name :: QName
- unboxed_singleton_con_name :: QName
- unit_con :: Exp
- tuple_con :: Boxed -> Int -> Exp
- unboxed_singleton_con :: Exp
- as_name :: Name
- qualified_name :: Name
- hiding_name :: Name
- minus_name :: Name
- bang_name :: Name
- dot_name :: Name
- star_name :: Name
- hole_name :: QName
- export_name :: Name
- safe_name :: Name
- unsafe_name :: Name
- interruptible_name :: Name
- threadsafe_name :: Name
- stdcall_name :: Name
- ccall_name :: Name
- cplusplus_name :: Name
- dotnet_name :: Name
- jvm_name :: Name
- js_name :: Name
- javascript_name :: Name
- capi_name :: Name
- forall_name :: Name
- family_name :: Name
- role_name :: Name
- stock_name :: Name
- anyclass_name :: Name
- via_name :: Name
- unit_tycon_name :: QName
- fun_tycon_name :: QName
- list_tycon_name :: QName
- unboxed_singleton_tycon_name :: QName
- tuple_tycon_name :: Boxed -> Int -> QName
- unit_tycon :: Type
- fun_tycon :: Type
- list_tycon :: Type
- unboxed_singleton_tycon :: Type
- tuple_tycon :: Boxed -> Int -> Type
- data Boxed
- data Tool
Documentation
type FieldUpdate = FieldUpdate () Source #
type WarningText = WarningText () Source #
type Activation = Activation () Source #
type ModulePragma = ModulePragma () Source #
type MaybePromotedName = MaybePromotedName () Source #
type GuardedRhs = GuardedRhs () Source #
type Unpackedness = Unpackedness () Source #
type QualConDecl = QualConDecl () Source #
type DerivStrategy = DerivStrategy () Source #
type InjectivityInfo = InjectivityInfo () Source #
type BooleanFormula = BooleanFormula () Source #
type Annotation = Annotation () Source #
type PatternSynDirection = PatternSynDirection () Source #
type ImportSpec = ImportSpec () Source #
type ImportSpecList = ImportSpecList () Source #
type ImportDecl = ImportDecl () Source #
type ExportSpec = ExportSpec () Source #
type ExportSpecList = ExportSpecList () Source #
type ModuleHead = ModuleHead () Source #
type SpecialCon = SpecialCon () Source #
type ModuleName = ModuleName () Source #
pattern FieldWildcard :: FieldUpdate Source #
pattern FieldPun :: QName -> FieldUpdate Source #
pattern FieldUpdate :: QName -> Exp -> FieldUpdate Source #
pattern GroupUsing :: Exp -> QualStmt Source #
pattern PFieldWildcard :: PatField Source #
pattern WarnText :: String -> WarningText Source #
pattern DeprText :: String -> WarningText Source #
pattern ActiveUntil :: Int -> Activation Source #
pattern ActiveFrom :: Int -> Activation Source #
pattern Incoherent :: Overlap Source #
pattern Overlappable :: Overlap Source #
pattern Overlapping :: Overlap Source #
pattern AnnModulePragma :: Annotation -> ModulePragma Source #
pattern OptionsPragma :: Maybe Tool -> String -> ModulePragma Source #
pattern LanguagePragma :: [Name] -> ModulePragma Source #
pattern JavaScript :: CallConv Source #
pattern PlayInterruptible :: Safety Source #
pattern ParenSplice :: Exp -> Splice Source #
pattern DeclBracket :: [Decl] -> Bracket Source #
pattern TypeBracket :: Type -> Bracket Source #
pattern PatBracket :: Pat -> Bracket Source #
pattern ExpBracket :: Exp -> Bracket Source #
pattern BracketExp :: Bracket -> Exp Source #
pattern MultiIf :: [GuardedRhs] -> Exp Source #
pattern OverloadedLabel :: String -> Exp Source #
pattern PrimString :: String -> Literal Source #
pattern PrimDouble :: Rational -> Literal Source #
pattern UnkindedVar :: Name -> TyVarBind Source #
pattern PromotedUnit :: Promoted Source #
pattern PromotedTuple :: [Type] -> Promoted Source #
pattern UnpromotedName :: QName -> MaybePromotedName Source #
pattern PromotedName :: QName -> MaybePromotedName Source #
pattern TyPromoted :: Promoted -> Type Source #
pattern TyParArray :: Type -> Type Source #
pattern TyUnboxedSum :: [Type] -> Type Source #
pattern GuardedRhs :: [Stmt] -> Exp -> GuardedRhs Source #
pattern GuardedRhss :: [GuardedRhs] -> Rhs Source #
pattern UnGuardedRhs :: Exp -> Rhs Source #
pattern NoUnpackPragma :: Unpackedness Source #
pattern NoUnpack :: Unpackedness Source #
pattern Unpack :: Unpackedness Source #
pattern NoStrictAnnot :: BangType Source #
pattern InsGData :: DataOrNew -> Type -> Maybe Kind -> [GadtDecl] -> [Deriving] -> InstDecl Source #
pattern GadtDecl :: Name -> Maybe [TyVarBind] -> Maybe Context -> Maybe [FieldDecl] -> Type -> GadtDecl Source #
pattern QualConDecl :: Maybe [TyVarBind] -> Maybe Context -> ConDecl -> QualConDecl Source #
pattern DerivVia :: Type -> DerivStrategy Source #
pattern DerivNewtype :: DerivStrategy Source #
pattern DerivAnyclass :: DerivStrategy Source #
pattern DerivStock :: DerivStrategy Source #
pattern InjectivityInfo :: Name -> [Name] -> InjectivityInfo Source #
pattern RoleWildcard :: Role Source #
pattern Representational :: Role Source #
pattern ParenFormula :: BooleanFormula -> BooleanFormula Source #
pattern OrFormula :: [BooleanFormula] -> BooleanFormula Source #
pattern AndFormula :: [BooleanFormula] -> BooleanFormula Source #
pattern VarFormula :: Name -> BooleanFormula Source #
pattern ModuleAnn :: Exp -> Annotation Source #
pattern ExplicitBidirectional :: [Decl] -> PatternSynDirection Source #
pattern ImplicitBidirectional :: PatternSynDirection Source #
pattern Unidirectional :: PatternSynDirection Source #
pattern MinimalPragma :: Maybe BooleanFormula -> Decl Source #
pattern AnnPragma :: Annotation -> Decl Source #
pattern SpecInlineSig :: Bool -> Maybe Activation -> QName -> [Type] -> Decl Source #
pattern InlineConlikeSig :: Maybe Activation -> QName -> Decl Source #
pattern RulePragmaDecl :: [Rule] -> Decl Source #
pattern PatSynSig :: [Name] -> Maybe [TyVarBind] -> Maybe Context -> Maybe [TyVarBind] -> Maybe Context -> Type -> Decl Source #
pattern SpliceDecl :: Exp -> Decl Source #
pattern DefaultDecl :: [Type] -> Decl Source #
pattern GDataInsDecl :: DataOrNew -> Type -> Maybe Kind -> [GadtDecl] -> [Deriving] -> Decl Source #
pattern DataInsDecl :: DataOrNew -> Type -> [QualConDecl] -> [Deriving] -> Decl Source #
pattern GDataDecl :: DataOrNew -> Maybe Context -> DeclHead -> Maybe Kind -> [GadtDecl] -> [Deriving] -> Decl Source #
pattern DataDecl :: DataOrNew -> Maybe Context -> DeclHead -> [QualConDecl] -> [Deriving] -> Decl Source #
pattern ClosedTypeFamDecl :: DeclHead -> Maybe ResultSig -> Maybe InjectivityInfo -> [TypeEqn] -> Decl Source #
pattern TypeFamDecl :: DeclHead -> Maybe ResultSig -> Maybe InjectivityInfo -> Decl Source #
pattern AssocRight :: Assoc Source #
pattern IThingWith :: Name -> [CName] -> ImportSpec Source #
pattern IThingAll :: Name -> ImportSpec Source #
pattern IVar :: Name -> ImportSpec Source #
pattern ImportSpecList :: Bool -> [ImportSpec] -> ImportSpecList Source #
pattern ImportDecl :: ModuleName () -> Bool -> Bool -> Bool -> Maybe String -> Maybe (ModuleName ()) -> Maybe (ImportSpecList ()) -> ImportDecl Source #
Note, this is originally a record constructor, and we use a pattern record synonym for ghc-8.0. But for earlier ghc versions, ImportDecl is a plain pattern synonym, and the selectors are exported as functions.
importModule :: ImportDecl -> ModuleName () Source #
importQualified :: ImportDecl -> Bool Source #
importSrc :: ImportDecl -> Bool Source #
importSafe :: ImportDecl -> Bool Source #
importAs :: ImportDecl -> Maybe (ModuleName ()) Source #
importSpecs :: ImportDecl -> Maybe (ImportSpecList ()) Source #
pattern PatternNamespace :: Namespace Source #
pattern TypeNamespace :: Namespace Source #
pattern NoNamespace :: Namespace Source #
pattern NoWildcard :: EWildcard Source #
pattern EModuleContents :: ModuleName -> ExportSpec Source #
pattern EThingWith :: EWildcard -> QName -> [CName] -> ExportSpec Source #
pattern EVar :: QName -> ExportSpec Source #
pattern ExportSpecList :: [ExportSpec] -> ExportSpecList Source #
pattern ModuleHead :: ModuleName -> Maybe WarningText -> Maybe ExportSpecList -> ModuleHead Source #
pattern XmlHybrid :: Maybe ModuleHead -> [ModulePragma] -> [ImportDecl] -> [Decl] -> XName -> [XAttr] -> Maybe Exp -> [Exp] -> Module Source #
pattern XmlPage :: ModuleName -> [ModulePragma] -> XName -> [XAttr] -> Maybe Exp -> [Exp] -> Module Source #
pattern Module :: Maybe ModuleHead -> [ModulePragma] -> [ImportDecl] -> [Decl] -> Module Source #
pattern Special :: SpecialCon -> QName Source #
pattern ExprHole :: SpecialCon Source #
pattern UnboxedSingleCon :: SpecialCon Source #
pattern Cons :: SpecialCon Source #
pattern FunCon :: SpecialCon Source #
pattern ListCon :: SpecialCon Source #
pattern UnitCon :: SpecialCon Source #
pattern ModuleName :: String -> ModuleName Source #
primFloatL :: Rational -> Literal Source #
primDoubleL :: Rational -> Literal Source #
primStringL :: String -> Literal Source #
hiding_name :: Name Source #
minus_name :: Name Source #
export_name :: Name Source #
unsafe_name :: Name Source #
stdcall_name :: Name Source #
ccall_name :: Name Source #
dotnet_name :: Name Source #
forall_name :: Name Source #
family_name :: Name Source #
stock_name :: Name Source #
anyclass_name :: Name Source #
unit_tycon :: Type Source #
list_tycon :: Type Source #
Flag denoting whether a tuple is boxed or unboxed.
Instances
| Eq Boxed | |
| Data Boxed | |
Defined in Language.Haskell.Exts.Syntax Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Boxed -> c Boxed # gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Boxed # dataTypeOf :: Boxed -> DataType # dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Boxed) # dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Boxed) # gmapT :: (forall b. Data b => b -> b) -> Boxed -> Boxed # gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Boxed -> r # gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Boxed -> r # gmapQ :: (forall d. Data d => d -> u) -> Boxed -> [u] # gmapQi :: Int -> (forall d. Data d => d -> u) -> Boxed -> u # gmapM :: Monad m => (forall d. Data d => d -> m d) -> Boxed -> m Boxed # gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Boxed -> m Boxed # gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Boxed -> m Boxed # | |
| Ord Boxed | |
| Show Boxed | |
| Generic Boxed | |
| type Rep Boxed | |
Recognised tools for OPTIONS pragmas.
Instances
| Eq Tool | |
| Data Tool | |
Defined in Language.Haskell.Exts.Syntax Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Tool -> c Tool # gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Tool # dataTypeOf :: Tool -> DataType # dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Tool) # dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Tool) # gmapT :: (forall b. Data b => b -> b) -> Tool -> Tool # gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Tool -> r # gmapQr :: (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Tool -> r # gmapQ :: (forall d. Data d => d -> u) -> Tool -> [u] # gmapQi :: Int -> (forall d. Data d => d -> u) -> Tool -> u # gmapM :: Monad m => (forall d. Data d => d -> m d) -> Tool -> m Tool # gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Tool -> m Tool # gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Tool -> m Tool # | |
| Ord Tool | |
| Show Tool | |
| Generic Tool | |
| Pretty Tool | |
Defined in Language.Haskell.Exts.Pretty | |
| type Rep Tool | |
Defined in Language.Haskell.Exts.Syntax type Rep Tool = D1 (MetaData "Tool" "Language.Haskell.Exts.Syntax" "haskell-src-exts-1.21.0-1MqMUIJU7y29AVS9NHxlR4" False) ((C1 (MetaCons "GHC" PrefixI False) (U1 :: Type -> Type) :+: (C1 (MetaCons "HUGS" PrefixI False) (U1 :: Type -> Type) :+: C1 (MetaCons "NHC98" PrefixI False) (U1 :: Type -> Type))) :+: (C1 (MetaCons "YHC" PrefixI False) (U1 :: Type -> Type) :+: (C1 (MetaCons "HADDOCK" PrefixI False) (U1 :: Type -> Type) :+: C1 (MetaCons "UnknownTool" PrefixI False) (S1 (MetaSel (Nothing :: Maybe Symbol) NoSourceUnpackedness NoSourceStrictness DecidedLazy) (Rec0 String))))) | |