An AST fragment with an annotation must be able to return the
requirements for nesting another one, captured in an Entry, and
to be able to use the rest of the exactprint machinery to print the
element. In the analogy to Outputable, exact plays the role of
ppr.
Methods
getAnnotationEntry :: a -> EntrysetAnnotationAnchor :: a -> Anchor -> [TrailingAnn] -> EpAnnComments -> aexact :: (Monad m, Monoid w) => a -> EP w m a
Instances116ExactPrint, …
ExactPrint FastStringDefined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint NamespaceSpecifierDefined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint HsDocStringDefined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint HsDocStringChunkDefined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint CCallConvDefined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint CExportSpecDefined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint SafetyDefined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint StringLiteralDefined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint InWarningCategoryDefined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint RoleDefined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint ModuleNameDefined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint HsIPNameDefined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint DataFamInstDeclWithContextDefined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint HsModuleImpDeclsDefined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint VoidDefined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint (BooleanFormula (LocatedN RdrName))Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint (LocatedL (BooleanFormula (LocatedN RdrName)))Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint (LocatedL [LocatedA (StmtLR GhcPs GhcPs (LocatedA (HsCmd GhcPs)))])Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint (LocatedL [LocatedA (StmtLR GhcPs GhcPs (LocatedA (HsExpr GhcPs)))])Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint (LocatedL [LocatedA (IE GhcPs)])Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint (LocatedL [LocatedA (ConDeclField GhcPs)])Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint (LocatedN RdrName)Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint (LocatedP OverlapMode)Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint (LocatedP CType)Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint (LocatedP (WarningTxt GhcPs))Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint (HsModule GhcPs)Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrint'Located (HsModule GhcPs)' corresponds to ParsedSource
ExactPrint (HsBind GhcPs)Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint (HsIPBinds GhcPs)Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint (HsLocalBinds GhcPs)Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint (HsMultAnn GhcPs)Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint (IPBind GhcPs)Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint (RecordPatSynField GhcPs)Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint (Sig GhcPs)Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint (AnnDecl GhcPs)Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint (ClsInstDecl GhcPs)Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint (ConDecl GhcPs)Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint (DefaultDecl GhcPs)Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint (DerivClauseTys GhcPs)Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint (DerivDecl GhcPs)Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint (DerivStrategy GhcPs)Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint (DocDecl GhcPs)Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint (FamilyDecl GhcPs)Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint (ForeignDecl GhcPs)Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint (ForeignExport GhcPs)Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint (ForeignImport GhcPs)Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint (FunDep GhcPs)Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint (HsDecl GhcPs)Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint (HsDerivingClause GhcPs)Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint (InjectivityAnn GhcPs)Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint (InstDecl GhcPs)Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint (RoleAnnotDecl GhcPs)Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint (RuleBndr GhcPs)Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint (RuleDecl GhcPs)Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint (RuleDecls GhcPs)Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint (SpliceDecl GhcPs)Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint (StandaloneKindSig GhcPs)Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint (TyClDecl GhcPs)Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint (TyFamInstDecl GhcPs)Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint (WarnDecl GhcPs)Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint (WarnDecls GhcPs)Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint (DotFieldOcc GhcPs)Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint (FieldLabelStrings GhcPs)Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint (HsCmd GhcPs)Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint (HsCmdTop GhcPs)Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint (HsExpr GhcPs)Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint (HsPragE GhcPs)Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint (HsTupArg GhcPs)Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint (HsUntypedSplice GhcPs)Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint (LHsRecUpdFields GhcPs)Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint (Match GhcPs (LocatedA body)) => ExactPrint (LocatedL [LocatedA (Match GhcPs (LocatedA body))])Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint (IE GhcPs)Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint (IEWrappedName GhcPs)Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint (ImportDecl GhcPs)Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint (HsOverLit GhcPs)Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint (HsConPatTyArg GhcPs)Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint (Pat GhcPs)Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint (AmbiguousFieldOcc GhcPs)Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint (ConDeclField GhcPs)Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint (FieldOcc GhcPs)Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint (HsForAllTelescope GhcPs)Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint (HsPatSigType GhcPs)Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint (HsSigType GhcPs)Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint (HsTyPat GhcPs)Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint (HsType GhcPs)Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint a => ExactPrint (LocatedA a)Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint a => ExactPrint (LocatedC a)Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint a => ExactPrint (LocatedE a)Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint a => ExactPrint (Located a)Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintBare Located elements are simply stripped off without further processing.
ExactPrint a => ExactPrint (Maybe a)Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint a => ExactPrint [a]Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint (LocatedA body) => ExactPrint (HsFieldBind (LocatedA (AmbiguousFieldOcc GhcPs)) (LocatedA body))Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint (SourceText, RuleName)Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint (SourceText, WarningCategory)Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint (HsValBindsLR GhcPs GhcPs)Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint (PatSynBind GhcPs GhcPs)Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint (GRHS GhcPs (LocatedA (HsCmd GhcPs)))Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint (GRHS GhcPs (LocatedA (HsExpr GhcPs)))Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint (GRHSs GhcPs (LocatedA (HsCmd GhcPs)))Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint (GRHSs GhcPs (LocatedA (HsExpr GhcPs)))Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint (Match GhcPs (LocatedA (HsCmd GhcPs)))Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint (Match GhcPs (LocatedA (HsExpr GhcPs)))Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint (MatchGroup GhcPs (LocatedA (HsCmd GhcPs)))Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint (MatchGroup GhcPs (LocatedA (HsExpr GhcPs)))Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint (ParStmtBlock GhcPs GhcPs)Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint a => ExactPrint (WithHsDocIdentifiers a GhcPs)Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint a => ExactPrint (LocatedAn NoEpAnns a)Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint a => ExactPrint (HsScaled GhcPs a)Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint body => ExactPrint (FamEqn GhcPs body)Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint body => ExactPrint (HsFieldBind (LocatedA (FieldOcc GhcPs)) body)Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint body => ExactPrint (HsFieldBind (LocatedAn NoEpAnns (FieldLabelStrings GhcPs)) body)Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint body => ExactPrint (HsRecFields GhcPs body)Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrint body => ExactPrint (HsWildCardBndrs GhcPs body)Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrintTVFlag flag => ExactPrint (HsOuterTyVarBndrs flag GhcPs)Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrintExactPrintTVFlag flag => ExactPrint (HsTyVarBndr flag GhcPs)Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrint(ExactPrint (LocatedA (body GhcPs)), Anno (StmtLR GhcPs GhcPs (LocatedA (body GhcPs))) ~ SrcSpanAnnA, Anno [GenLocated SrcSpanAnnA (StmtLR GhcPs GhcPs (LocatedA (body GhcPs)))] ~ SrcSpanAnnL, ExactPrint (LocatedL [LocatedA (StmtLR GhcPs GhcPs (LocatedA (body GhcPs)))])) => ExactPrint (StmtLR GhcPs GhcPs (LocatedA (body GhcPs)))Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrint(ExactPrint tm, ExactPrint ty, Outputable tm, Outputable ty) => ExactPrint (HsArg GhcPs tm ty)Defined in ghc-exactprint-1.10.0.0 · Language.Haskell.GHC.ExactPrint.ExactPrint