ghcide-2.4.0.0: The core of an IDE

Safe Haskell | Safe-Inferred
Language | Haskell2010

Development.IDE.GHC.Compat.Core

Contents

- Session
- Linear Haskell
- Interface Files
- Fixity
- ModSummary
- HomeModInfo
- ModGuts
- ModDetails
- HsExpr,
- Var
- Specs
- SourceText
- Name
- Ways
- AvailInfo
- TcGblEnv
- Parsing and LExer types
- Compilation Main
- Typecheck utils
- Source Locations
- Finder
- Module and Package
- Linker
- Hooks
- HPT
- Driver-Make
- GHCi
- ModLocation
- DataCon
- Role
- Panic
- Other
- Util Module re-exports
- Syntax re-exports

Description

Compat Core module that handles the GHC module hierarchy re-organization by re-exporting everything we care about.

This module provides no other compat mechanisms, except for simple backward-compatible pattern synonyms.

Synopsis

- data DynFlags
- extensions :: DynFlags -> [OnOff Extension]
- extensionFlags :: DynFlags -> EnumSet Extension
- targetPlatform :: DynFlags -> Platform
- packageFlags :: DynFlags -> [PackageFlag]
- generalFlags :: DynFlags -> EnumSet GeneralFlag
- warningFlags :: DynFlags -> EnumSet WarningFlag
- topDir :: DynFlags -> FilePath
- hiDir :: DynFlags -> Maybe String
- tmpDir :: DynFlags -> TempDir
- importPaths :: DynFlags -> [FilePath]
- useColor :: DynFlags -> OverridingBool
- canUseColor :: DynFlags -> Bool
- useUnicode :: DynFlags -> Bool
- objectDir :: DynFlags -> Maybe String
- flagsForCompletion :: Bool -> [String]
- setImportPaths :: [FilePath] -> DynFlags -> DynFlags
- outputFile :: DynFlags -> Maybe String
- pluginModNames :: DynFlags -> [ModuleName]
- refLevelHoleFits :: DynFlags -> Maybe Int
- maxRefHoleFits :: DynFlags -> Maybe Int
- maxValidHoleFits :: DynFlags -> Maybe Int
- setOutputFile :: Maybe String -> DynFlags -> DynFlags
- lookupType :: HscEnv -> Name -> IO (Maybe TyThing)
- needWiredInHomeIface :: TyThing -> Bool
- loadWiredInHomeIface :: Name -> IfM lcl ()
- readIface :: DynFlags -> NameCache -> Module -> FilePath -> IO (MaybeErr SDoc ModIface)
- loadSysInterface :: SDoc -> Module -> IfM lcl ModIface
- importDecl :: Name -> IfM lcl (MaybeErr SDoc TyThing)
- type CommandLineOption = String
- sPgm_F :: Settings -> String
- settings :: DynFlags -> Settings
- gopt :: GeneralFlag -> DynFlags -> Bool
- gopt_set :: DynFlags -> GeneralFlag -> DynFlags
- gopt_unset :: DynFlags -> GeneralFlag -> DynFlags
- wopt :: WarningFlag -> DynFlags -> Bool
- wopt_set :: DynFlags -> WarningFlag -> DynFlags
- xFlags :: [FlagSpec Extension]
- xopt :: Extension -> DynFlags -> Bool
- xopt_unset :: DynFlags -> Extension -> DynFlags
- xopt_set :: DynFlags -> Extension -> DynFlags
- data FlagSpec flag = FlagSpec {
  - flagSpecName :: String
  - flagSpecFlag :: flag
  - flagSpecAction :: TurnOnFlag -> DynP ()
  - flagSpecGhcMode :: GhcFlagMode
  }
- data WarningFlag
  - = Opt_WarnDuplicateExports
  - | Opt_WarnDuplicateConstraints
  - | Opt_WarnRedundantConstraints
  - | Opt_WarnHiShadows
  - | Opt_WarnImplicitPrelude
  - | Opt_WarnIncompletePatterns
  - | Opt_WarnIncompleteUniPatterns
  - | Opt_WarnIncompletePatternsRecUpd
  - | Opt_WarnOverflowedLiterals
  - | Opt_WarnEmptyEnumerations
  - | Opt_WarnMissingFields
  - | Opt_WarnMissingImportList
  - | Opt_WarnMissingMethods
  - | Opt_WarnMissingSignatures
  - | Opt_WarnMissingLocalSignatures
  - | Opt_WarnNameShadowing
  - | Opt_WarnOverlappingPatterns
  - | Opt_WarnTypeDefaults
  - | Opt_WarnMonomorphism
  - | Opt_WarnUnusedTopBinds
  - | Opt_WarnUnusedLocalBinds
  - | Opt_WarnUnusedPatternBinds
  - | Opt_WarnUnusedImports
  - | Opt_WarnUnusedMatches
  - | Opt_WarnUnusedTypePatterns
  - | Opt_WarnUnusedForalls
  - | Opt_WarnUnusedRecordWildcards
  - | Opt_WarnRedundantBangPatterns
  - | Opt_WarnRedundantRecordWildcards
  - | Opt_WarnWarningsDeprecations
  - | Opt_WarnDeprecatedFlags
  - | Opt_WarnMissingMonadFailInstances
  - | Opt_WarnSemigroup
  - | Opt_WarnDodgyExports
  - | Opt_WarnDodgyImports
  - | Opt_WarnOrphans
  - | Opt_WarnAutoOrphans
  - | Opt_WarnIdentities
  - | Opt_WarnTabs
  - | Opt_WarnUnrecognisedPragmas
  - | Opt_WarnMisplacedPragmas
  - | Opt_WarnDodgyForeignImports
  - | Opt_WarnUnusedDoBind
  - | Opt_WarnWrongDoBind
  - | Opt_WarnAlternativeLayoutRuleTransitional
  - | Opt_WarnUnsafe
  - | Opt_WarnSafe
  - | Opt_WarnTrustworthySafe
  - | Opt_WarnMissedSpecs
  - | Opt_WarnAllMissedSpecs
  - | Opt_WarnUnsupportedCallingConventions
  - | Opt_WarnUnsupportedLlvmVersion
  - | Opt_WarnMissedExtraSharedLib
  - | Opt_WarnInlineRuleShadowing
  - | Opt_WarnTypedHoles
  - | Opt_WarnPartialTypeSignatures
  - | Opt_WarnMissingExportedSignatures
  - | Opt_WarnUntickedPromotedConstructors
  - | Opt_WarnDerivingTypeable
  - | Opt_WarnDeferredTypeErrors
  - | Opt_WarnDeferredOutOfScopeVariables
  - | Opt_WarnNonCanonicalMonadInstances
  - | Opt_WarnNonCanonicalMonadFailInstances
  - | Opt_WarnNonCanonicalMonoidInstances
  - | Opt_WarnMissingPatternSynonymSignatures
  - | Opt_WarnUnrecognisedWarningFlags
  - | Opt_WarnSimplifiableClassConstraints
  - | Opt_WarnCPPUndef
  - | Opt_WarnUnbangedStrictPatterns
  - | Opt_WarnMissingHomeModules
  - | Opt_WarnPartialFields
  - | Opt_WarnMissingExportList
  - | Opt_WarnInaccessibleCode
  - | Opt_WarnStarIsType
  - | Opt_WarnStarBinder
  - | Opt_WarnImplicitKindVars
  - | Opt_WarnSpaceAfterBang
  - | Opt_WarnMissingDerivingStrategies
  - | Opt_WarnPrepositiveQualifiedModule
  - | Opt_WarnUnusedPackages
  - | Opt_WarnInferredSafeImports
  - | Opt_WarnMissingSafeHaskellMode
  - | Opt_WarnCompatUnqualifiedImports
  - | Opt_WarnDerivingDefaults
  - | Opt_WarnInvalidHaddock
  - | Opt_WarnOperatorWhitespaceExtConflict
  - | Opt_WarnOperatorWhitespace
  - | Opt_WarnAmbiguousFields
  - | Opt_WarnImplicitLift
  - | Opt_WarnMissingKindSignatures
  - | Opt_WarnMissingExportedPatternSynonymSignatures
  - | Opt_WarnRedundantStrictnessFlags
  - | Opt_WarnForallIdentifier
  - | Opt_WarnUnicodeBidirectionalFormatCharacters
  - | Opt_WarnGADTMonoLocalBinds
  - | Opt_WarnTypeEqualityOutOfScope
  - | Opt_WarnTypeEqualityRequiresOperators
  - | Opt_WarnLoopySuperclassSolve
- data GeneralFlag
  - = Opt_DumpToFile
  - | Opt_DumpWithWays
  - | Opt_D_dump_minimal_imports
  - | Opt_DoCoreLinting
  - | Opt_DoLinearCoreLinting
  - | Opt_DoStgLinting
  - | Opt_DoCmmLinting
  - | Opt_DoAsmLinting
  - | Opt_DoAnnotationLinting
  - | Opt_DoBoundsChecking
  - | Opt_NoLlvmMangler
  - | Opt_FastLlvm
  - | Opt_NoTypeableBinds
  - | Opt_DistinctConstructorTables
  - | Opt_InfoTableMap
  - | Opt_InfoTableMapWithFallback
  - | Opt_InfoTableMapWithStack
  - | Opt_WarnIsError
  - | Opt_ShowWarnGroups
  - | Opt_HideSourcePaths
  - | Opt_PrintExplicitForalls
  - | Opt_PrintExplicitKinds
  - | Opt_PrintExplicitCoercions
  - | Opt_PrintExplicitRuntimeReps
  - | Opt_PrintEqualityRelations
  - | Opt_PrintAxiomIncomps
  - | Opt_PrintUnicodeSyntax
  - | Opt_PrintExpandedSynonyms
  - | Opt_PrintPotentialInstances
  - | Opt_PrintRedundantPromotionTicks
  - | Opt_PrintTypecheckerElaboration
  - | Opt_CallArity
  - | Opt_Exitification
  - | Opt_Strictness
  - | Opt_LateDmdAnal
  - | Opt_KillAbsence
  - | Opt_KillOneShot
  - | Opt_FullLaziness
  - | Opt_FloatIn
  - | Opt_LocalFloatOut
  - | Opt_LocalFloatOutTopLevel
  - | Opt_LateSpecialise
  - | Opt_Specialise
  - | Opt_SpecialiseAggressively
  - | Opt_CrossModuleSpecialise
  - | Opt_PolymorphicSpecialisation
  - | Opt_InlineGenerics
  - | Opt_InlineGenericsAggressively
  - | Opt_StaticArgumentTransformation
  - | Opt_CSE
  - | Opt_StgCSE
  - | Opt_StgLiftLams
  - | Opt_LiberateCase
  - | Opt_SpecConstr
  - | Opt_SpecConstrKeen
  - | Opt_DoLambdaEtaExpansion
  - | Opt_IgnoreAsserts
  - | Opt_DoEtaReduction
  - | Opt_CaseMerge
  - | Opt_CaseFolding
  - | Opt_UnboxStrictFields
  - | Opt_UnboxSmallStrictFields
  - | Opt_DictsCheap
  - | Opt_EnableRewriteRules
  - | Opt_EnableThSpliceWarnings
  - | Opt_RegsGraph
  - | Opt_RegsIterative
  - | Opt_PedanticBottoms
  - | Opt_LlvmTBAA
  - | Opt_LlvmFillUndefWithGarbage
  - | Opt_IrrefutableTuples
  - | Opt_CmmSink
  - | Opt_CmmStaticPred
  - | Opt_CmmElimCommonBlocks
  - | Opt_CmmControlFlow
  - | Opt_AsmShortcutting
  - | Opt_OmitYields
  - | Opt_FunToThunk
  - | Opt_DictsStrict
  - | Opt_DmdTxDictSel
  - | Opt_Loopification
  - | Opt_CfgBlocklayout
  - | Opt_WeightlessBlocklayout
  - | Opt_CprAnal
  - | Opt_WorkerWrapper
  - | Opt_WorkerWrapperUnlift
  - | Opt_SolveConstantDicts
  - | Opt_AlignmentSanitisation
  - | Opt_CatchNonexhaustiveCases
  - | Opt_NumConstantFolding
  - | Opt_CoreConstantFolding
  - | Opt_FastPAPCalls
  - | Opt_DoTagInferenceChecks
  - | Opt_SimplPreInlining
  - | Opt_IgnoreInterfacePragmas
  - | Opt_OmitInterfacePragmas
  - | Opt_ExposeAllUnfoldings
  - | Opt_WriteInterface
  - | Opt_WriteHie
  - | Opt_AutoSccsOnIndividualCafs
  - | Opt_ProfCountEntries
  - | Opt_ProfLateInlineCcs
  - | Opt_ProfLateCcs
  - | Opt_ProfManualCcs
  - | Opt_Pp
  - | Opt_ForceRecomp
  - | Opt_IgnoreOptimChanges
  - | Opt_IgnoreHpcChanges
  - | Opt_ExcessPrecision
  - | Opt_EagerBlackHoling
  - | Opt_NoHsMain
  - | Opt_SplitSections
  - | Opt_StgStats
  - | Opt_HideAllPackages
  - | Opt_HideAllPluginPackages
  - | Opt_PrintBindResult
  - | Opt_Haddock
  - | Opt_HaddockOptions
  - | Opt_BreakOnException
  - | Opt_BreakOnError
  - | Opt_PrintEvldWithShow
  - | Opt_PrintBindContents
  - | Opt_GenManifest
  - | Opt_EmbedManifest
  - | Opt_SharedImplib
  - | Opt_BuildingCabalPackage
  - | Opt_IgnoreDotGhci
  - | Opt_GhciSandbox
  - | Opt_GhciHistory
  - | Opt_GhciLeakCheck
  - | Opt_ValidateHie
  - | Opt_LocalGhciHistory
  - | Opt_NoIt
  - | Opt_HelpfulErrors
  - | Opt_DeferTypeErrors
  - | Opt_DeferTypedHoles
  - | Opt_DeferOutOfScopeVariables
  - | Opt_PIC
  - | Opt_PIE
  - | Opt_PICExecutable
  - | Opt_ExternalDynamicRefs
  - | Opt_Ticky
  - | Opt_Ticky_Allocd
  - | Opt_Ticky_LNE
  - | Opt_Ticky_Dyn_Thunk
  - | Opt_Ticky_Tag
  - | Opt_Ticky_AP
  - | Opt_CmmThreadSanitizer
  - | Opt_RPath
  - | Opt_RelativeDynlibPaths
  - | Opt_CompactUnwind
  - | Opt_Hpc
  - | Opt_FamAppCache
  - | Opt_ExternalInterpreter
  - | Opt_OptimalApplicativeDo
  - | Opt_VersionMacros
  - | Opt_WholeArchiveHsLibs
  - | Opt_SingleLibFolder
  - | Opt_ExposeInternalSymbols
  - | Opt_KeepCAFs
  - | Opt_KeepGoing
  - | Opt_ByteCode
  - | Opt_ByteCodeAndObjectCode
  - | Opt_LinkRts
  - | Opt_ErrorSpans
  - | Opt_DeferDiagnostics
  - | Opt_DiagnosticsShowCaret
  - | Opt_PprCaseAsLet
  - | Opt_PprShowTicks
  - | Opt_ShowHoleConstraints
  - | Opt_ShowValidHoleFits
  - | Opt_SortValidHoleFits
  - | Opt_SortBySizeHoleFits
  - | Opt_SortBySubsumHoleFits
  - | Opt_AbstractRefHoleFits
  - | Opt_UnclutterValidHoleFits
  - | Opt_ShowTypeAppOfHoleFits
  - | Opt_ShowTypeAppVarsOfHoleFits
  - | Opt_ShowDocsOfHoleFits
  - | Opt_ShowTypeOfHoleFits
  - | Opt_ShowProvOfHoleFits
  - | Opt_ShowMatchesOfHoleFits
  - | Opt_ShowLoadedModules
  - | Opt_HexWordLiterals
  - | Opt_SuppressCoercions
  - | Opt_SuppressCoercionTypes
  - | Opt_SuppressVarKinds
  - | Opt_SuppressModulePrefixes
  - | Opt_SuppressTypeApplications
  - | Opt_SuppressIdInfo
  - | Opt_SuppressUnfoldings
  - | Opt_SuppressTypeSignatures
  - | Opt_SuppressUniques
  - | Opt_SuppressStgExts
  - | Opt_SuppressStgReps
  - | Opt_SuppressTicks
  - | Opt_SuppressTimestamps
  - | Opt_SuppressCoreSizes
  - | Opt_ShowErrorContext
  - | Opt_AutoLinkPackages
  - | Opt_ImplicitImportQualified
  - | Opt_KeepHscppFiles
  - | Opt_KeepHiDiffs
  - | Opt_KeepHcFiles
  - | Opt_KeepSFiles
  - | Opt_KeepTmpFiles
  - | Opt_KeepRawTokenStream
  - | Opt_KeepLlvmFiles
  - | Opt_KeepHiFiles
  - | Opt_KeepOFiles
  - | Opt_BuildDynamicToo
  - | Opt_WriteIfSimplifiedCore
  - | Opt_UseBytecodeRatherThanObjects
  - | Opt_DistrustAllPackages
  - | Opt_PackageTrust
  - | Opt_PluginTrustworthy
  - | Opt_G_NoStateHack
  - | Opt_G_NoOptCoercion
- data PackageFlag
- data PackageArg
  - = PackageArg String
  - | UnitIdArg Unit
- data ModRenaming = ModRenaming {
  - modRenamingWithImplicit :: Bool
  - modRenamings :: [(ModuleName, ModuleName)]
  }
- pattern ExposePackage :: String -> PackageArg -> ModRenaming -> PackageFlag
- parseDynamicFlagsCmdLine :: MonadIO m => DynFlags -> [Located String] -> m (DynFlags, [Located String], [Warn])
- parseDynamicFilePragma :: MonadIO m => DynFlags -> [Located String] -> m (DynFlags, [Located String], [Warn])
- wWarningFlags :: [FlagSpec WarningFlag]
- updOptLevel :: Int -> DynFlags -> DynFlags
- setUnsafeGlobalDynFlags :: DynFlags -> IO ()
- scaledThing :: Scaled a -> a
- type IfaceExport = AvailInfo
- data IfaceTyCon = IfaceTyCon {
  - ifaceTyConName :: IfExtName
  - ifaceTyConInfo :: IfaceTyConInfo
  }
- type ModIface = ModIface_ 'ModIfaceFinal
- data ModIface_ (phase :: ModIfacePhase) = ModIface {
  - mi_module :: !Module
  - mi_sig_of :: !(Maybe Module)
  - mi_hsc_src :: !HscSource
  - mi_deps :: Dependencies
  - mi_usages :: [Usage]
  - mi_exports :: ![IfaceExport]
  - mi_used_th :: !Bool
  - mi_fixities :: [(OccName, Fixity)]
  - mi_warns :: Warnings GhcRn
  - mi_anns :: [IfaceAnnotation]
  - mi_decls :: [IfaceDeclExts phase]
  - mi_extra_decls :: Maybe [IfaceBindingX IfaceMaybeRhs IfaceTopBndrInfo]
  - mi_globals :: !(Maybe GlobalRdrEnv)
  - mi_insts :: [IfaceClsInst]
  - mi_fam_insts :: [IfaceFamInst]
  - mi_rules :: [IfaceRule]
  - mi_hpc :: !AnyHpcUsage
  - mi_trust :: !IfaceTrustInfo
  - mi_trust_pkg :: !Bool
  - mi_complete_matches :: ![IfaceCompleteMatch]
  - mi_docs :: !(Maybe Docs)
  - mi_final_exts :: !(IfaceBackendExts phase)
  - mi_ext_fields :: !ExtensibleFields
  - mi_src_hash :: !Fingerprint
  }
- data HscSource
  - = HsSrcFile
  - | HsBootFile
  - | HsigFile
- data WhereFrom
  - = ImportByUser IsBootInterface
  - | ImportBySystem
  - | ImportByPlugin
- loadInterface :: SDoc -> Module -> WhereFrom -> IfM lcl (MaybeErr SDoc ModIface)
- loadModuleInterface :: SDoc -> Module -> TcM ModIface
- data RecompileRequired
  - = UpToDate
  - | NeedsRecompile !CompileReason
- mkPartialIface :: HscEnv -> CoreProgram -> ModDetails -> ModSummary -> ModGuts -> PartialModIface
- mkFullIface :: HscEnv -> PartialModIface -> Maybe StgCgInfos -> Maybe CmmCgInfos -> IO ModIface
- checkOldIface :: HscEnv -> ModSummary -> Maybe ModIface -> IO (MaybeValidated ModIface)
- data IsBootInterface
  - = NotBoot
  - | IsBoot
- data LexicalFixity
  - = Prefix
  - | Infix
- data Fixity = Fixity SourceText Int FixityDirection
- mi_fix :: ModIface -> OccName -> Fixity
- defaultFixity :: Fixity
- lookupFixityRn :: Name -> RnM Fixity
- data ModSummary = ModSummary {
  - ms_mod :: Module
  - ms_hsc_src :: HscSource
  - ms_location :: ModLocation
  - ms_hs_hash :: Fingerprint
  - ms_obj_date :: Maybe UTCTime
  - ms_dyn_obj_date :: !(Maybe UTCTime)
  - ms_iface_date :: Maybe UTCTime
  - ms_hie_date :: Maybe UTCTime
  - ms_srcimps :: [(PkgQual, Located ModuleName)]
  - ms_textual_imps :: [(PkgQual, Located ModuleName)]
  - ms_ghc_prim_import :: !Bool
  - ms_parsed_mod :: Maybe HsParsedModule
  - ms_hspp_file :: FilePath
  - ms_hspp_opts :: DynFlags
  - ms_hspp_buf :: Maybe StringBuffer
  }
- data HomeModInfo = HomeModInfo {
  - hm_iface :: !ModIface
  - hm_details :: ModDetails
  - hm_linkable :: !HomeModLinkable
  }
- data ModGuts = ModGuts {
  - mg_module :: !Module
  - mg_hsc_src :: HscSource
  - mg_loc :: SrcSpan
  - mg_exports :: ![AvailInfo]
  - mg_deps :: !Dependencies
  - mg_usages :: ![Usage]
  - mg_used_th :: !Bool
  - mg_rdr_env :: !GlobalRdrEnv
  - mg_fix_env :: !FixityEnv
  - mg_tcs :: ![TyCon]
  - mg_insts :: ![ClsInst]
  - mg_fam_insts :: ![FamInst]
  - mg_patsyns :: ![PatSyn]
  - mg_rules :: ![CoreRule]
  - mg_binds :: !CoreProgram
  - mg_foreign :: !ForeignStubs
  - mg_foreign_files :: ![(ForeignSrcLang, FilePath)]
  - mg_warns :: !(Warnings GhcRn)
  - mg_anns :: [Annotation]
  - mg_complete_matches :: [CompleteMatch]
  - mg_hpc_info :: !HpcInfo
  - mg_modBreaks :: !(Maybe ModBreaks)
  - mg_inst_env :: InstEnv
  - mg_fam_inst_env :: FamInstEnv
  - mg_boot_exports :: !NameSet
  - mg_safe_haskell :: SafeHaskellMode
  - mg_trust_pkg :: Bool
  - mg_docs :: !(Maybe Docs)
  }
- data CgGuts = CgGuts {
  - cg_module :: !Module
  - cg_tycons :: [TyCon]
  - cg_binds :: CoreProgram
  - cg_ccs :: [CostCentre]
  - cg_foreign :: !ForeignStubs
  - cg_foreign_files :: ![(ForeignSrcLang, FilePath)]
  - cg_dep_pkgs :: !(Set UnitId)
  - cg_hpc_info :: !HpcInfo
  - cg_modBreaks :: !(Maybe ModBreaks)
  - cg_spt_entries :: [SptEntry]
  }
- data ModDetails = ModDetails {
  - md_exports :: [AvailInfo]
  - md_types :: !TypeEnv
  - md_insts :: InstEnv
  - md_fam_insts :: ![FamInst]
  - md_rules :: ![CoreRule]
  - md_anns :: ![Annotation]
  - md_complete_matches :: [CompleteMatch]
  }
- data Type
  - = TyVarTy Var
  - | AppTy Type Type
  - | TyConApp TyCon [KindOrType]
  - | ForAllTy !ForAllTyBinder Type
  - | LitTy TyLit
  - | CastTy Type KindCoercion
  - | CoercionTy Coercion
- pattern FunTy :: Type -> Type -> Type
- pattern ConPatIn :: Located (ConLikeP GhcPs) -> HsConPatDetails GhcPs -> Pat GhcPs
- conPatDetails :: Pat p -> Maybe (HsConPatDetails p)
- mapConPatDetail :: (HsConPatDetails p -> Maybe (HsConPatDetails p)) -> Pat p -> Maybe (Pat p)
- mkVisFunTys :: [Scaled Type] -> Type -> Type
- data ImpDeclSpec = ImpDeclSpec {
  - is_mod :: ModuleName
  - is_as :: ModuleName
  - is_qual :: Bool
  - is_dloc :: SrcSpan
  }
- data ImportSpec = ImpSpec {
  - is_decl :: ImpDeclSpec
  - is_item :: ImpItemSpec
  }
- data SourceText
  - = SourceText String
  - | NoSourceText
- tyThingParent_maybe :: TyThing -> Maybe TyThing
- data Way
- wayGeneralFlags :: Platform -> Way -> [GeneralFlag]
- wayUnsetGeneralFlags :: Platform -> Way -> [GeneralFlag]
- data AvailInfo
- pattern AvailName :: Name -> AvailInfo
- pattern AvailFL :: FieldLabel -> AvailInfo
- pattern AvailTC :: Name -> [Name] -> [FieldLabel] -> AvailInfo
- availName :: AvailInfo -> Name
- availNames :: AvailInfo -> [Name]
- availNamesWithSelectors :: AvailInfo -> [Name]
- availsToNameSet :: [AvailInfo] -> NameSet
- data TcGblEnv = TcGblEnv {
  - tcg_mod :: Module
  - tcg_semantic_mod :: Module
  - tcg_src :: HscSource
  - tcg_rdr_env :: GlobalRdrEnv
  - tcg_default :: Maybe [Type]
  - tcg_fix_env :: FixityEnv
  - tcg_field_env :: RecFieldEnv
  - tcg_type_env :: TypeEnv
  - tcg_type_env_var :: KnotVars (IORef TypeEnv)
  - tcg_inst_env :: !InstEnv
  - tcg_fam_inst_env :: !FamInstEnv
  - tcg_ann_env :: AnnEnv
  - tcg_exports :: [AvailInfo]
  - tcg_imports :: ImportAvails
  - tcg_dus :: DefUses
  - tcg_used_gres :: TcRef [GlobalRdrElt]
  - tcg_keep :: TcRef NameSet
  - tcg_th_used :: TcRef Bool
  - tcg_th_splice_used :: TcRef Bool
  - tcg_th_needed_deps :: TcRef ([Linkable], PkgsLoaded)
  - tcg_dfun_n :: TcRef OccSet
  - tcg_merged :: [(Module, Fingerprint)]
  - tcg_rn_exports :: Maybe [(LIE GhcRn, Avails)]
  - tcg_rn_imports :: [LImportDecl GhcRn]
  - tcg_rn_decls :: Maybe (HsGroup GhcRn)
  - tcg_dependent_files :: TcRef [FilePath]
  - tcg_th_topdecls :: TcRef [LHsDecl GhcPs]
  - tcg_th_foreign_files :: TcRef [(ForeignSrcLang, FilePath)]
  - tcg_th_topnames :: TcRef NameSet
  - tcg_th_modfinalizers :: TcRef [(TcLclEnv, ThModFinalizers)]
  - tcg_th_coreplugins :: TcRef [String]
  - tcg_th_state :: TcRef (Map TypeRep Dynamic)
  - tcg_th_remote_state :: TcRef (Maybe (ForeignRef (IORef QState)))
  - tcg_th_docs :: TcRef THDocs
  - tcg_ev_binds :: Bag EvBind
  - tcg_tr_module :: Maybe Id
  - tcg_binds :: LHsBinds GhcTc
  - tcg_sigs :: NameSet
  - tcg_imp_specs :: [LTcSpecPrag]
  - tcg_warns :: Warnings GhcRn
  - tcg_anns :: [Annotation]
  - tcg_tcs :: [TyCon]
  - tcg_ksigs :: NameSet
  - tcg_insts :: [ClsInst]
  - tcg_fam_insts :: [FamInst]
  - tcg_rules :: [LRuleDecl GhcTc]
  - tcg_fords :: [LForeignDecl GhcTc]
  - tcg_patsyns :: [PatSyn]
  - tcg_doc_hdr :: Maybe (LHsDoc GhcRn)
  - tcg_hpc :: !AnyHpcUsage
  - tcg_self_boot :: SelfBootInfo
  - tcg_main :: Maybe Name
  - tcg_safe_infer :: TcRef Bool
  - tcg_safe_infer_reasons :: TcRef (Messages TcRnMessage)
  - tcg_tc_plugin_solvers :: [TcPluginSolver]
  - tcg_tc_plugin_rewriters :: UniqFM TyCon [TcPluginRewriter]
  - tcg_defaulting_plugins :: [FillDefaulting]
  - tcg_hf_plugins :: [HoleFitPlugin]
  - tcg_top_loc :: RealSrcSpan
  - tcg_static_wc :: TcRef WantedConstraints
  - tcg_complete_matches :: !CompleteMatches
  - tcg_cc_st :: TcRef CostCentreState
  - tcg_next_wrapper_num :: TcRef (ModuleEnv Int)
  }
- data HsModule p
  - = HsModule {
    - hsmodExt :: XCModule p
    - hsmodName :: Maybe (XRec p ModuleName)
    - hsmodExports :: Maybe (XRec p [LIE p])
    - hsmodImports :: [LImportDecl p]
    - hsmodDecls :: [LHsDecl p]
    }
  - | XModule !(XXModule p)
- type ParsedSource = Located (HsModule GhcPs)
- type RenamedSource = (HsGroup GhcRn, [LImportDecl GhcRn], Maybe [(LIE GhcRn, Avails)], Maybe (LHsDoc GhcRn))
- data HscEnv
- runGhc :: Maybe FilePath -> Ghc a -> IO a
- unGhc :: Ghc a -> Session -> IO a
- data Session = Session !(IORef HscEnv)
- modifySession :: GhcMonad m => (HscEnv -> HscEnv) -> m ()
- getSession :: GhcMonad m => m HscEnv
- setSessionDynFlags :: (HasCallStack, GhcMonad m) => DynFlags -> m ()
- getSessionDynFlags :: GhcMonad m => m DynFlags
- class (Functor m, ExceptionMonad m, HasDynFlags m, HasLogger m) => GhcMonad (m :: Type -> Type)
- data Ghc a
- runHsc :: HscEnv -> Hsc a -> IO a
- compileFile :: HscEnv -> StopPhase -> (FilePath, Maybe Phase) -> IO (Maybe FilePath)
- data Phase
  - = Unlit HscSource
  - | Cpp HscSource
  - | HsPp HscSource
  - | Hsc HscSource
  - | Ccxx
  - | Cc
  - | Cobjc
  - | Cobjcxx
  - | HCc
  - | As Bool
  - | LlvmOpt
  - | LlvmLlc
  - | LlvmMangle
  - | CmmCpp
  - | Cmm
  - | MergeForeign
  - | Js
  - | StopLn
- hscDesugar :: HscEnv -> ModSummary -> TcGblEnv -> IO ModGuts
- hscGenHardCode :: HscEnv -> CgGuts -> ModLocation -> FilePath -> IO (FilePath, Maybe FilePath, [(ForeignSrcLang, FilePath)], Maybe StgCgInfos, Maybe CmmCgInfos)
- hscInteractive :: HscEnv -> CgInteractiveGuts -> ModLocation -> IO (Maybe FilePath, CompiledByteCode, [SptEntry])
- hscSimplify :: HscEnv -> [String] -> ModGuts -> IO ModGuts
- hscTypecheckRename :: HscEnv -> ModSummary -> HsParsedModule -> IO (TcGblEnv, RenamedStuff)
- makeSimpleDetails :: HscEnv -> TcGblEnv -> IO ModDetails
- tcSplitForAllTyVars :: Type -> ([TyVar], Type)
- tcSplitForAllTyVarBinder_maybe :: Type -> Maybe (TyVarBinder, Type)
- typecheckIface :: ModIface -> IfG ModDetails
- mkIfaceTc :: HscEnv -> SafeHaskellMode -> ModDetails -> ModSummary -> Maybe CoreProgram -> TcGblEnv -> IO ModIface
- mkBootModDetailsTc :: HscEnv -> TcGblEnv -> IO ModDetails
- initTidyOpts :: HscEnv -> IO TidyOpts
- hscUpdateHPT :: (HomePackageTable -> HomePackageTable) -> HscEnv -> HscEnv
- driverNoStop :: StopPhase
- tidyProgram :: TidyOpts -> ModGuts -> IO (CgGuts, ModDetails)
- data ImportedModsVal = ImportedModsVal {
  - imv_name :: ModuleName
  - imv_span :: SrcSpan
  - imv_is_safe :: IsSafeImport
  - imv_is_hiding :: Bool
  - imv_all_exports :: !GlobalRdrEnv
  - imv_qualified :: Bool
  }
- importedByUser :: [ImportedBy] -> [ImportedModsVal]
- type TypecheckedSource = LHsBinds GhcTc
- class HasSrcSpan a
- type Located = GenLocated SrcSpan
- unLoc :: GenLocated l e -> e
- getLoc :: HasSrcSpan a => a -> SrcSpan
- getLocA :: GenLocated (SrcSpanAnn' a) e -> SrcSpan
- locA :: SrcSpanAnn' a -> SrcSpan
- noLocA :: a -> LocatedAn an a
- unLocA :: forall pass a. XRec (GhcPass pass) a -> a
- type LocatedAn a = LocatedAn a
- type LocatedA = LocatedA
- data AnnListItem = AnnListItem {
  - lann_trailing :: [TrailingAnn]
  }
- data NameAnn
  - = NameAnn {
    - nann_adornment :: NameAdornment
    - nann_open :: EpaLocation
    - nann_name :: EpaLocation
    - nann_close :: EpaLocation
    - nann_trailing :: [TrailingAnn]
    }
  - | NameAnnCommas {
    - nann_adornment :: NameAdornment
    - nann_open :: EpaLocation
    - nann_commas :: [EpaLocation]
    - nann_close :: EpaLocation
    - nann_trailing :: [TrailingAnn]
    }
  - | NameAnnBars {
    - nann_adornment :: NameAdornment
    - nann_open :: EpaLocation
    - nann_bars :: [EpaLocation]
    - nann_close :: EpaLocation
    - nann_trailing :: [TrailingAnn]
    }
  - | NameAnnOnly {
    - nann_adornment :: NameAdornment
    - nann_open :: EpaLocation
    - nann_close :: EpaLocation
    - nann_trailing :: [TrailingAnn]
    }
  - | NameAnnRArrow {
    - nann_name :: EpaLocation
    - nann_trailing :: [TrailingAnn]
    }
  - | NameAnnQuote {
    - nann_quote :: EpaLocation
    - nann_quoted :: SrcSpanAnnN
    - nann_trailing :: [TrailingAnn]
    }
  - | NameAnnTrailing {
    - nann_trailing :: [TrailingAnn]
    }
- type RealLocated = GenLocated RealSrcSpan
- data GenLocated l e = L l e
- data SrcSpan = UnhelpfulSpan !UnhelpfulSpanReason
- data RealSrcSpan
- pattern RealSrcSpan :: RealSrcSpan -> Maybe BufSpan -> SrcSpan
- data RealSrcLoc
- pattern RealSrcLoc :: RealSrcLoc -> Maybe BufPos -> SrcLoc
- data SrcLoc = UnhelpfulLoc !FastString
- data BufSpan
- data SrcSpanAnn' a
- type SrcAnn ann = SrcSpanAnn' (EpAnn ann)
- leftmost_smallest :: SrcSpan -> SrcSpan -> Ordering
- containsSpan :: RealSrcSpan -> RealSrcSpan -> Bool
- mkGeneralSrcSpan :: FastString -> SrcSpan
- mkRealSrcSpan :: RealSrcLoc -> RealSrcLoc -> RealSrcSpan
- mkRealSrcLoc :: FastString -> Int -> Int -> RealSrcLoc
- getRealSrcSpan :: RealLocated a -> RealSrcSpan
- realSrcLocSpan :: RealSrcLoc -> RealSrcSpan
- realSrcSpanStart :: RealSrcSpan -> RealSrcLoc
- realSrcSpanEnd :: RealSrcSpan -> RealSrcLoc
- isSubspanOfA :: LocatedAn la a -> LocatedAn lb b -> Bool
- isSubspanOf :: SrcSpan -> SrcSpan -> Bool
- wiredInSrcSpan :: SrcSpan
- mkSrcSpan :: SrcLoc -> SrcLoc -> SrcSpan
- srcSpanStart :: SrcSpan -> SrcLoc
- srcSpanStartLine :: RealSrcSpan -> Int
- srcSpanStartCol :: RealSrcSpan -> Int
- srcSpanEnd :: SrcSpan -> SrcLoc
- srcSpanEndLine :: RealSrcSpan -> Int
- srcSpanEndCol :: RealSrcSpan -> Int
- srcSpanFile :: RealSrcSpan -> FastString
- srcLocCol :: RealSrcLoc -> Int
- srcLocFile :: RealSrcLoc -> FastString
- srcLocLine :: RealSrcLoc -> Int
- noSrcSpan :: SrcSpan
- noSrcLoc :: SrcLoc
- noLoc :: e -> Located e
- mapLoc :: (a -> b) -> GenLocated l a -> GenLocated l b
- data FindResult
  - = Found ModLocation Module
  - | NoPackage Unit
  - | FoundMultiple [(Module, ModuleOrigin)]
  - | NotFound {
    - fr_paths :: [FilePath]
    - fr_pkg :: Maybe Unit
    - fr_mods_hidden :: [Unit]
    - fr_pkgs_hidden :: [Unit]
    - fr_unusables :: [(Unit, UnusableUnitReason)]
    - fr_suggestions :: [ModuleSuggestion]
    }
- mkHomeModLocation :: DynFlags -> ModuleName -> FilePath -> IO ModLocation
- addBootSuffixLocnOut :: ModLocation -> ModLocation
- findObjectLinkableMaybe :: Module -> ModLocation -> IO (Maybe Linkable)
- data InstalledFindResult
  - = InstalledFound ModLocation InstalledModule
  - | InstalledNoPackage UnitId
  - | InstalledNotFound [FilePath] (Maybe UnitId)
- data ModuleOrigin
  - = ModHidden
  - | ModUnusable UnusableUnitReason
  - | ModOrigin {
    - fromOrigUnit :: Maybe Bool
    - fromExposedReexport :: [UnitInfo]
    - fromHiddenReexport :: [UnitInfo]
    - fromPackageFlag :: Bool
    }
- newtype PackageName = PackageName {
  - unPackageName :: FastString
  }
- data Unlinked
  - = DotO ObjFile
  - | DotA FilePath
  - | DotDLL FilePath
  - | CoreBindings WholeCoreBindings
  - | LoadedBCOs [Unlinked]
  - | BCOs CompiledByteCode [SptEntry]
- data Linkable = LM {
  - linkableTime :: !UTCTime
  - linkableModule :: !Module
  - linkableUnlinked :: [Unlinked]
  }
- unload :: HscEnv -> [Linkable] -> IO ()
- data Hooks
- runMetaHook :: Hooks -> Maybe (MetaHook TcM)
- type MetaHook (f :: Type -> Type) = MetaRequest -> LHsExpr GhcTc -> f MetaResult
- data MetaRequest
  - = MetaE (LHsExpr GhcPs -> MetaResult)
  - | MetaP (LPat GhcPs -> MetaResult)
  - | MetaT (LHsType GhcPs -> MetaResult)
  - | MetaD ([LHsDecl GhcPs] -> MetaResult)
  - | MetaAW (Serialized -> MetaResult)
- metaRequestE :: Functor f => MetaHook f -> LHsExpr GhcTc -> f (LHsExpr GhcPs)
- metaRequestP :: Functor f => MetaHook f -> LHsExpr GhcTc -> f (LPat GhcPs)
- metaRequestT :: Functor f => MetaHook f -> LHsExpr GhcTc -> f (LHsType GhcPs)
- metaRequestD :: Functor f => MetaHook f -> LHsExpr GhcTc -> f [LHsDecl GhcPs]
- metaRequestAW :: Functor f => MetaHook f -> LHsExpr GhcTc -> f Serialized
- addToHpt :: HomePackageTable -> ModuleName -> HomeModInfo -> HomePackageTable
- addListToHpt :: HomePackageTable -> [(ModuleName, HomeModInfo)] -> HomePackageTable
- data Target = Target {
  - targetId :: !TargetId
  - targetAllowObjCode :: !Bool
  - targetUnitId :: !UnitId
  - targetContents :: !(Maybe (InputFileBuffer, UTCTime))
  }
- data TargetId
  - = TargetModule !ModuleName
  - | TargetFile !FilePath !(Maybe Phase)
- mkModuleGraph :: [ModuleGraphNode] -> ModuleGraph
- initObjLinker :: HscEnv -> IO ()
- loadDLL :: HscEnv -> String -> IO (Maybe String)
- data InteractiveImport
  - = IIDecl (ImportDecl GhcPs)
  - | IIModule ModuleName
- getContext :: GhcMonad m => m [InteractiveImport]
- setContext :: GhcMonad m => [InteractiveImport] -> m ()
- parseImportDecl :: GhcMonad m => String -> m (ImportDecl GhcPs)
- runDecls :: GhcMonad m => String -> m [Name]
- data Warn = Warn {
  - warnReason :: DiagnosticReason
  - warnMsg :: Located String
  }
- data ModLocation
- ml_hs_file :: ModLocation -> Maybe FilePath
- ml_obj_file :: ModLocation -> FilePath
- ml_hi_file :: ModLocation -> FilePath
- ml_hie_file :: ModLocation -> FilePath
- dataConExTyCoVars :: DataCon -> [TyCoVar]
- data Role
  - = Nominal
  - | Representational
  - | Phantom
- data PlainGhcException
- panic :: HasCallStack => String -> a
- panicDoc :: String -> SDoc -> a
- data CoreModule = CoreModule {
  - cm_module :: !Module
  - cm_types :: !TypeEnv
  - cm_binds :: CoreProgram
  - cm_safe :: SafeHaskellMode
  }
- data SafeHaskellMode
  - = Sf_None
  - | Sf_Unsafe
  - | Sf_Trustworthy
  - | Sf_Safe
  - | Sf_SafeInferred
  - | Sf_Ignore
- pattern GRE :: Name -> Parent -> Bool -> [ImportSpec] -> GlobalRdrElt
- gre_name :: GlobalRdrElt -> Name
- gre_imp :: GlobalRdrElt -> [ImportSpec]
- gre_lcl :: GlobalRdrElt -> Bool
- gre_par :: GlobalRdrElt -> Parent
- collectHsBindsBinders :: CollectPass p => Bag (XRec p (HsBindLR p idR)) -> [IdP p]
- class Uniquable a where
  - getUnique :: a -> Unique
- hasKey :: Uniquable a => a -> Unique -> Bool
- aRROW :: Module
- absentConstraintErrorIdKey :: Unique
- absentErrorIdKey :: Unique
- absentSumFieldErrorIdKey :: Unique
- addrPrimTyConKey :: Unique
- allNameStringList :: [String]
- allNameStrings :: Infinite String
- all_RDR :: RdrName
- alt_RDR :: RdrName
- alternativeClassKey :: Unique
- alternativeClassName :: Name
- and_RDR :: RdrName
- anyTyConKey :: Unique
- apAClassOpKey :: Unique
- apAName :: Name
- ap_RDR :: RdrName
- appAIdKey :: Unique
- appAName :: Name
- appendIdKey :: Unique
- appendName :: Name
- append_RDR :: RdrName
- applicativeClassKey :: Unique
- applicativeClassName :: Name
- arrAIdKey :: Unique
- arrAName :: Name
- arrayPrimTyConKey :: Unique
- assertErrorIdKey :: Unique
- assertErrorName :: Name
- assertIdKey :: Unique
- assertName :: Name
- augmentIdKey :: Unique
- augmentName :: Name
- basicKnownKeyNames :: [Name]
- bcoPrimTyConKey :: Unique
- bignatCompareIdKey :: Unique
- bignatCompareName :: Name
- bignatCompareWordIdKey :: Unique
- bignatCompareWordName :: Name
- bignatEqIdKey :: Unique
- bignatEqName :: Name
- bignatFromWordListIdKey :: Unique
- bignatFromWordListName :: Name
- bindIOIdKey :: Unique
- bindIOName :: Name
- bindIO_RDR :: RdrName
- bindMClassOpKey :: Unique
- bindMName :: Name
- bindM_RDR :: RdrName
- bitIntegerIdKey :: Unique
- bnbVarQual :: String -> Unique -> Name
- bniVarQual :: String -> Unique -> Name
- bnnVarQual :: String -> Unique -> Name
- boolTyConKey :: Unique
- boundedClassKey :: Unique
- boundedClassName :: Name
- boxedRepDataConKey :: Unique
- boxedRepDataConTyConKey :: Unique
- boxityConKey :: Unique
- buildIdKey :: Unique
- buildName :: Name
- build_RDR :: RdrName
- byteArrayPrimTyConKey :: Unique
- c1TyConKey :: Unique
- c1TyConName :: Name
- cONSTRAINTTyConKey :: Unique
- cONTROL_EXCEPTION_BASE :: Module
- cTyConKey :: Unique
- cTyConName :: Name
- callStackTyConKey :: Unique
- callStackTyConName :: Name
- ccArrowTyConKey :: Unique
- charDataConKey :: Unique
- charPrimTyConKey :: Unique
- charTyConKey :: Unique
- choiceAIdKey :: Unique
- choiceAName :: Name
- choose_RDR :: RdrName
- clsQual :: Module -> FastString -> Unique -> Name
- clsQual_RDR :: Module -> FastString -> RdrName
- coerceKey :: Unique
- coercibleDataConKey :: Unique
- coercibleSCSelIdKey :: Unique
- coercibleTyConKey :: Unique
- coercionTokenIdKey :: Unique
- comp1DataCon_RDR :: RdrName
- compTyConKey :: Unique
- compTyConName :: Name
- compactPrimTyConKey :: Unique
- compare_RDR :: RdrName
- composeAIdKey :: Unique
- composeAName :: Name
- compose_RDR :: RdrName
- conFixity_RDR :: RdrName
- conIsRecord_RDR :: RdrName
- conName_RDR :: RdrName
- concatIdKey :: Unique
- concatName :: Name
- consDataConKey :: Unique
- considerAccessibleIdKey :: Unique
- considerAccessibleName :: Name
- constPtrConName :: Name
- constPtrTyConKey :: Unique
- constraintKindRepKey :: Unique
- constraintKindRepName :: Name
- constraintKindTyConKey :: Unique
- constructorClassKey :: Unique
- constructorClassName :: Name
- crossDataConKey :: Unique
- cstringLengthIdKey :: Unique
- cstringLengthName :: Name
- ctArrowTyConKey :: Unique
- d1TyConKey :: Unique
- d1TyConName :: Name
- dATA_COERCE :: Module
- dATA_EITHER :: Module
- dATA_FOLDABLE :: Module
- dATA_LIST :: Module
- dATA_STRING :: Module
- dATA_TRAVERSABLE :: Module
- dEBUG_TRACE :: Module
- dTyConKey :: Unique
- dTyConName :: Name
- dYNAMIC :: Module
- dataClassKey :: Unique
- dataClassName :: Name
- dataQual_RDR :: Module -> FastString -> RdrName
- dataToTag_RDR :: RdrName
- datatypeClassKey :: Unique
- datatypeClassName :: Name
- datatypeName_RDR :: RdrName
- dcQual :: Module -> FastString -> Unique -> Name
- decidedLazyDataConKey :: Unique
- decidedLazyDataConName :: Name
- decidedStrictDataConKey :: Unique
- decidedStrictDataConName :: Name
- decidedUnpackDataConKey :: Unique
- decidedUnpackDataConName :: Name
- derivableClassKeys :: [Unique]
- dictTyConKey :: Unique
- divIntIdKey :: Unique
- divIntName :: Name
- dollarIdKey :: Unique
- dollarName :: Name
- doubleDataConKey :: Unique
- doublePrimTyConKey :: Unique
- doubleTyConKey :: Unique
- doubleX2PrimTyConKey :: Unique
- doubleX4PrimTyConKey :: Unique
- doubleX8PrimTyConKey :: Unique
- eitherTyConKey :: Unique
- eitherTyConName :: Name
- emptyCallStackKey :: Unique
- emptyCallStackName :: Name
- enumClassKey :: Unique
- enumClassName :: Name
- enumClass_RDR :: RdrName
- enumFromClassOpKey :: Unique
- enumFromName :: Name
- enumFromThenClassOpKey :: Unique
- enumFromThenName :: Name
- enumFromThenToClassOpKey :: Unique
- enumFromThenToName :: Name
- enumFromThenTo_RDR :: RdrName
- enumFromThen_RDR :: RdrName
- enumFromToClassOpKey :: Unique
- enumFromToName :: Name
- enumFromTo_RDR :: RdrName
- enumFrom_RDR :: RdrName
- eqClassKey :: Unique
- eqClassName :: Name
- eqClassOpKey :: Unique
- eqClass_RDR :: RdrName
- eqDataConKey :: Unique
- eqName :: Name
- eqPhantPrimTyConKey :: Unique
- eqPrimTyConKey :: Unique
- eqReprPrimTyConKey :: Unique
- eqSCSelIdKey :: Unique
- eqStringIdKey :: Unique
- eqStringName :: Name
- eqTag_RDR :: RdrName
- eqTyConKey :: Unique
- eq_RDR :: RdrName
- errorMessageTypeErrorFamKey :: Unique
- errorMessageTypeErrorFamName :: Name
- error_RDR :: RdrName
- expectP_RDR :: RdrName
- fOREIGN_C_CONSTPTR :: Module
- fUNTyConKey :: Unique
- failIOIdKey :: Unique
- failIOName :: Name
- failMClassOpKey :: Unique
- failMName :: Name
- failM_RDR :: RdrName
- falseDataConKey :: Unique
- filterIdKey :: Unique
- filterName :: Name
- fingerprintDataConKey :: Unique
- fingerprintDataConName :: Name
- firstAIdKey :: Unique
- firstAName :: Name
- floatDataConKey :: Unique
- floatPrimTyConKey :: Unique
- floatTyConKey :: Unique
- floatX16PrimTyConKey :: Unique
- floatX4PrimTyConKey :: Unique
- floatX8PrimTyConKey :: Unique
- floatingClassKey :: Unique
- floatingClassName :: Name
- fmapClassOpKey :: Unique
- fmapName :: Name
- fmap_RDR :: RdrName
- foldMap_RDR :: RdrName
- foldableClassKey :: Unique
- foldableClassName :: Name
- foldable_foldr_RDR :: RdrName
- foldrIdKey :: Unique
- foldrName :: Name
- foldr_RDR :: RdrName
- foreignObjPrimTyConKey :: Unique
- fractionalClassKey :: Unique
- fractionalClassKeys :: [Unique]
- fractionalClassName :: Name
- from1_RDR :: RdrName
- fromEnum_RDR :: RdrName
- fromIntegerClassOpKey :: Unique
- fromIntegerName :: Name
- fromInteger_RDR :: RdrName
- fromIntegralIdKey :: Unique
- fromIntegralName :: Name
- fromIntegral_RDR :: RdrName
- fromLabelClassOpKey :: Unique
- fromLabelClassOpName :: Name
- fromListClassOpKey :: Unique
- fromListNClassOpKey :: Unique
- fromListNName :: Name
- fromListN_RDR :: RdrName
- fromListName :: Name
- fromList_RDR :: RdrName
- fromRationalClassOpKey :: Unique
- fromRationalName :: Name
- fromRational_RDR :: RdrName
- fromStaticPtrClassOpKey :: Unique
- fromStaticPtrName :: Name
- fromStringClassOpKey :: Unique
- fromStringName :: Name
- fromString_RDR :: RdrName
- from_RDR :: RdrName
- frontendPluginTyConKey :: Unique
- frontendPluginTyConName :: Name
- funPtrTyConKey :: Unique
- funPtrTyConName :: Name
- functorClassKey :: Unique
- functorClassName :: Name
- gENERICS :: Module
- gHC_BASE :: Module
- gHC_CLASSES :: Module
- gHC_CONC :: Module
- gHC_CSTRING :: Module
- gHC_DESUGAR :: Module
- gHC_ENUM :: Module
- gHC_ERR :: Module
- gHC_EXTS :: Module
- gHC_FINGERPRINT_TYPE :: Module
- gHC_FLOAT :: Module
- gHC_GENERICS :: Module
- gHC_GHCI :: Module
- gHC_GHCI_HELPERS :: Module
- gHC_INT :: Module
- gHC_IO :: Module
- gHC_IO_Exception :: Module
- gHC_IS_LIST :: Module
- gHC_IX :: Module
- gHC_LIST :: Module
- gHC_MAGIC :: Module
- gHC_MAGIC_DICT :: Module
- gHC_MAYBE :: Module
- gHC_NUM :: Module
- gHC_NUM_BIGNAT :: Module
- gHC_NUM_INTEGER :: Module
- gHC_NUM_NATURAL :: Module
- gHC_OVER_LABELS :: Module
- gHC_PRIM :: Module
- gHC_PRIMOPWRAPPERS :: Module
- gHC_PRIM_PANIC :: Module
- gHC_PTR :: Module
- gHC_READ :: Module
- gHC_REAL :: Module
- gHC_RECORDS :: Module
- gHC_SHOW :: Module
- gHC_SRCLOC :: Module
- gHC_ST :: Module
- gHC_STABLE :: Module
- gHC_STACK :: Module
- gHC_STACK_TYPES :: Module
- gHC_STATICPTR :: Module
- gHC_STATICPTR_INTERNAL :: Module
- gHC_TOP_HANDLER :: Module
- gHC_TUPLE :: Module
- gHC_TUPLE_PRIM :: Module
- gHC_TYPEERROR :: Module
- gHC_TYPELITS :: Module
- gHC_TYPELITS_INTERNAL :: Module
- gHC_TYPENATS :: Module
- gHC_TYPENATS_INTERNAL :: Module
- gHC_TYPES :: Module
- gHC_WORD :: Module
- geClassOpKey :: Unique
- geName :: Name
- ge_RDR :: RdrName
- gen1ClassKey :: Unique
- gen1ClassName :: Name
- genClassKey :: Unique
- genClassName :: Name
- genUnitDataConKey :: Unique
- genericClassNames :: [Name]
- genericTyConNames :: [Name]
- getFieldClassOpKey :: Unique
- getFieldName :: Name
- ghciIoClassKey :: Unique
- ghciIoClassName :: Name
- ghciStepIoMClassOpKey :: Unique
- ghciStepIoMName :: Name
- gtTag_RDR :: RdrName
- gt_RDR :: RdrName
- guardMIdKey :: Unique
- guardMName :: Name
- hasFieldClassName :: Name
- hasFieldClassNameKey :: Unique
- heqDataConKey :: Unique
- heqSCSelIdKey :: Unique
- heqTyConKey :: Unique
- ident_RDR :: RdrName
- impossibleConstraintErrorIdKey :: Unique
- impossibleErrorIdKey :: Unique
- inRange_RDR :: RdrName
- index_RDR :: RdrName
- infixDataCon_RDR :: RdrName
- infixIDataConKey :: Unique
- infixIDataConName :: Name
- inlDataConKey :: Unique
- inlineIdKey :: Unique
- inlineIdName :: Name
- inrDataConKey :: Unique
- int16PrimTyConKey :: Unique
- int16TyConKey :: Unique
- int16TyConName :: Name
- int16X16PrimTyConKey :: Unique
- int16X32PrimTyConKey :: Unique
- int16X8PrimTyConKey :: Unique
- int32PrimTyConKey :: Unique
- int32TyConKey :: Unique
- int32TyConName :: Name
- int32X16PrimTyConKey :: Unique
- int32X4PrimTyConKey :: Unique
- int32X8PrimTyConKey :: Unique
- int64PrimTyConKey :: Unique
- int64TyConKey :: Unique
- int64TyConName :: Name
- int64X2PrimTyConKey :: Unique
- int64X4PrimTyConKey :: Unique
- int64X8PrimTyConKey :: Unique
- int8PrimTyConKey :: Unique
- int8TyConKey :: Unique
- int8TyConName :: Name
- int8X16PrimTyConKey :: Unique
- int8X32PrimTyConKey :: Unique
- int8X64PrimTyConKey :: Unique
- intDataConKey :: Unique
- intPrimTyConKey :: Unique
- intTyConKey :: Unique
- integerAbsIdKey :: Unique
- integerAbsName :: Name
- integerAddIdKey :: Unique
- integerAddName :: Name
- integerAdd_RDR :: RdrName
- integerAndIdKey :: Unique
- integerAndName :: Name
- integerBitIdKey :: Unique
- integerBitName :: Name
- integerComplementIdKey :: Unique
- integerComplementName :: Name
- integerDivIdKey :: Unique
- integerDivModIdKey :: Unique
- integerDivModName :: Name
- integerDivName :: Name
- integerEncodeDoubleIdKey :: Unique
- integerEncodeDoubleName :: Name
- integerEncodeFloatIdKey :: Unique
- integerEncodeFloatName :: Name
- integerFromInt64IdKey :: Unique
- integerFromInt64Name :: Name
- integerFromNaturalIdKey :: Unique
- integerFromNaturalName :: Name
- integerFromWord64IdKey :: Unique
- integerFromWord64Name :: Name
- integerFromWordIdKey :: Unique
- integerFromWordName :: Name
- integerGcdIdKey :: Unique
- integerGcdName :: Name
- integerINDataConKey :: Unique
- integerIPDataConKey :: Unique
- integerISDataConKey :: Unique
- integerLcmIdKey :: Unique
- integerLcmName :: Name
- integerModIdKey :: Unique
- integerModName :: Name
- integerMulIdKey :: Unique
- integerMulName :: Name
- integerMul_RDR :: RdrName
- integerNegateIdKey :: Unique
- integerNegateName :: Name
- integerOrIdKey :: Unique
- integerOrName :: Name
- integerPopCountIdKey :: Unique
- integerPopCountName :: Name
- integerQuotIdKey :: Unique
- integerQuotName :: Name
- integerQuotRemIdKey :: Unique
- integerQuotRemName :: Name
- integerRemIdKey :: Unique
- integerRemName :: Name
- integerShiftLIdKey :: Unique
- integerShiftLName :: Name
- integerShiftRIdKey :: Unique
- integerShiftRName :: Name
- integerSubIdKey :: Unique
- integerSubName :: Name
- integerTestBitIdKey :: Unique
- integerTestBitName :: Name
- integerToDoubleIdKey :: Unique
- integerToDoubleName :: Name
- integerToFloatIdKey :: Unique
- integerToFloatName :: Name
- integerToInt64IdKey :: Unique
- integerToInt64Name :: Name
- integerToIntIdKey :: Unique
- integerToIntName :: Name
- integerToNaturalClampIdKey :: Unique
- integerToNaturalClampName :: Name
- integerToNaturalIdKey :: Unique
- integerToNaturalName :: Name
- integerToNaturalThrowIdKey :: Unique
- integerToNaturalThrowName :: Name
- integerToWord64IdKey :: Unique
- integerToWord64Name :: Name
- integerToWordIdKey :: Unique
- integerToWordName :: Name
- integerTyConKey :: Unique
- integerXorIdKey :: Unique
- integerXorName :: Name
- integralClassKey :: Unique
- integralClassName :: Name
- interactiveClassKeys :: [Unique]
- interactiveClassNames :: [Name]
- ioDataConKey :: Unique
- ioDataConName :: Name
- ioDataCon_RDR :: RdrName
- ioPortPrimTyConKey :: Unique
- ioTyConKey :: Unique
- ioTyConName :: Name
- ipClassKey :: Unique
- ipClassName :: Name
- isListClassKey :: Unique
- isListClassName :: Name
- isNewtypeName_RDR :: RdrName
- isStringClassKey :: Unique
- isStringClassName :: Name
- isUnboundName :: Name -> Bool
- itName :: Unique -> SrcSpan -> Name
- ixClassKey :: Unique
- ixClassName :: Name
- joinMIdKey :: Unique
- joinMName :: Name
- justDataConKey :: Unique
- k1DataCon_RDR :: RdrName
- k1TyConKey :: Unique
- k1TyConName :: Name
- kindConKey :: Unique
- kindRepAppDataConKey :: Unique
- kindRepAppDataConName :: Name
- kindRepFunDataConKey :: Unique
- kindRepFunDataConName :: Name
- kindRepTYPEDataConKey :: Unique
- kindRepTYPEDataConName :: Name
- kindRepTyConAppDataConKey :: Unique
- kindRepTyConAppDataConName :: Name
- kindRepTyConKey :: Unique
- kindRepTyConName :: Name
- kindRepTypeLitDDataConKey :: Unique
- kindRepTypeLitDDataConName :: Name
- kindRepTypeLitSDataConKey :: Unique
- kindRepTypeLitSDataConName :: Name
- kindRepVarDataConKey :: Unique
- kindRepVarDataConName :: Name
- knownCharClassName :: Name
- knownCharClassNameKey :: Unique
- knownNatClassName :: Name
- knownNatClassNameKey :: Unique
- knownSymbolClassName :: Name
- knownSymbolClassNameKey :: Unique
- l1DataCon_RDR :: RdrName
- lEX :: Module
- lazyIdKey :: Unique
- le_RDR :: RdrName
- leftAssocDataCon_RDR :: RdrName
- leftAssociativeDataConKey :: Unique
- leftAssociativeDataConName :: Name
- leftDataConKey :: Unique
- leftDataConName :: Name
- leftSectionKey :: Unique
- left_RDR :: RdrName
- levityTyConKey :: Unique
- lexP_RDR :: RdrName
- liftA2_RDR :: RdrName
- liftMIdKey :: Unique
- liftMName :: Name
- liftedDataConKey :: Unique
- liftedRepTyConKey :: Unique
- liftedTypeKindTyConKey :: Unique
- listTyConKey :: Unique
- loopAIdKey :: Unique
- loopAName :: Name
- ltTag_RDR :: RdrName
- lt_RDR :: RdrName
- m1DataCon_RDR :: RdrName
- m1TyConKey :: Unique
- m1TyConName :: Name
- mAIN_NAME :: ModuleName
- mONAD :: Module
- mONAD_FAIL :: Module
- mONAD_FIX :: Module
- mONAD_ZIP :: Module
- mVarPrimTyConKey :: Unique
- main_RDR_Unqual :: RdrName
- makeStaticKey :: Unique
- makeStaticName :: Name
- manyDataConKey :: Unique
- mapIdKey :: Unique
- mapName :: Name
- map_RDR :: RdrName
- mappendClassOpKey :: Unique
- mappendName :: Name
- mappend_RDR :: RdrName
- maxBound_RDR :: RdrName
- maybeTyConKey :: Unique
- mconcatClassOpKey :: Unique
- mconcatName :: Name
- memptyClassOpKey :: Unique
- memptyName :: Name
- mempty_RDR :: RdrName
- metaConsDataConKey :: Unique
- metaConsDataConName :: Name
- metaDataDataConKey :: Unique
- metaDataDataConName :: Name
- metaSelDataConKey :: Unique
- metaSelDataConName :: Name
- mfixIdKey :: Unique
- mfixName :: Name
- minBound_RDR :: RdrName
- minusClassOpKey :: Unique
- minusName :: Name
- minus_RDR :: RdrName
- mkBaseModule :: FastString -> Module
- mkBaseModule_ :: ModuleName -> Module
- mkBignumModule :: FastString -> Module
- mkDictDataConKey :: Unique
- mkInteractiveModule :: Int -> Module
- mkMainModule :: FastString -> Module
- mkMainModule_ :: ModuleName -> Module
- mkPrimModule :: FastString -> Module
- mkRationalBase10IdKey :: Unique
- mkRationalBase10Name :: Name
- mkRationalBase2IdKey :: Unique
- mkRationalBase2Name :: Name
- mkThisGhcModule :: FastString -> Module
- mkThisGhcModule_ :: ModuleName -> Module
- mkTrAppKey :: Unique
- mkTrAppName :: Name
- mkTrConKey :: Unique
- mkTrConName :: Name
- mkTrFunKey :: Unique
- mkTrFunName :: Name
- mkTrTypeKey :: Unique
- mkTrTypeName :: Name
- mkTyConKey :: Unique
- mkUnboundName :: OccName -> Name
- mk_known_key_name :: NameSpace -> Module -> FastString -> Unique -> Name
- modIntIdKey :: Unique
- modIntName :: Name
- moduleName_RDR :: RdrName
- monadClassKey :: Unique
- monadClassName :: Name
- monadClass_RDR :: RdrName
- monadFailClassKey :: Unique
- monadFailClassName :: Name
- monadFixClassKey :: Unique
- monadFixClassName :: Name
- monadPlusClassKey :: Unique
- monadPlusClassName :: Name
- monoidClassKey :: Unique
- monoidClassName :: Name
- multMulTyConKey :: Unique
- multiplicityTyConKey :: Unique
- mutVarPrimTyConKey :: Unique
- mutableArrayPrimTyConKey :: Unique
- mutableByteArrayPrimTyConKey :: Unique
- mzipIdKey :: Unique
- mzipName :: Name
- naturalAddIdKey :: Unique
- naturalAddName :: Name
- naturalAndIdKey :: Unique
- naturalAndName :: Name
- naturalAndNotIdKey :: Unique
- naturalAndNotName :: Name
- naturalBitIdKey :: Unique
- naturalBitName :: Name
- naturalGcdIdKey :: Unique
- naturalGcdName :: Name
- naturalLcmIdKey :: Unique
- naturalLcmName :: Name
- naturalLog2IdKey :: Unique
- naturalLog2Name :: Name
- naturalLogBaseIdKey :: Unique
- naturalLogBaseName :: Name
- naturalLogBaseWordIdKey :: Unique
- naturalLogBaseWordName :: Name
- naturalMulIdKey :: Unique
- naturalMulName :: Name
- naturalNBDataConKey :: Unique
- naturalNSDataConKey :: Unique
- naturalOrIdKey :: Unique
- naturalOrName :: Name
- naturalPopCountIdKey :: Unique
- naturalPopCountName :: Name
- naturalPowModIdKey :: Unique
- naturalPowModName :: Name
- naturalQuotIdKey :: Unique
- naturalQuotName :: Name
- naturalQuotRemIdKey :: Unique
- naturalQuotRemName :: Name
- naturalRemIdKey :: Unique
- naturalRemName :: Name
- naturalShiftLIdKey :: Unique
- naturalShiftLName :: Name
- naturalShiftRIdKey :: Unique
- naturalShiftRName :: Name
- naturalSizeInBaseIdKey :: Unique
- naturalSizeInBaseName :: Name
- naturalSubIdKey :: Unique
- naturalSubName :: Name
- naturalSubThrowIdKey :: Unique
- naturalSubThrowName :: Name
- naturalSubUnsafeIdKey :: Unique
- naturalSubUnsafeName :: Name
- naturalTestBitIdKey :: Unique
- naturalTestBitName :: Name
- naturalToDoubleIdKey :: Unique
- naturalToDoubleName :: Name
- naturalToFloatIdKey :: Unique
- naturalToFloatName :: Name
- naturalToWordIdKey :: Unique
- naturalToWordName :: Name
- naturalTyConKey :: Unique
- naturalXorIdKey :: Unique
- naturalXorName :: Name
- negateClassOpKey :: Unique
- negateName :: Name
- newStablePtrIdKey :: Unique
- newStablePtrName :: Name
- newStablePtr_RDR :: RdrName
- nilDataConKey :: Unique
- noMethodBindingErrorIdKey :: Unique
- noSourceStrictnessDataConKey :: Unique
- noSourceStrictnessDataConName :: Name
- noSourceUnpackednessDataConKey :: Unique
- noSourceUnpackednessDataConName :: Name
- noinlineConstraintIdKey :: Unique
- noinlineIdKey :: Unique
- nonEmptyTyConKey :: Unique
- nonEmptyTyConName :: Name
- nonExhaustiveGuardsErrorIdKey :: Unique
- nospecIdKey :: Unique
- notAssocDataCon_RDR :: RdrName
- notAssociativeDataConKey :: Unique
- notAssociativeDataConName :: Name
- not_RDR :: RdrName
- nothingDataConKey :: Unique
- nullAddrIdKey :: Unique
- null_RDR :: RdrName
- numClassKey :: Unique
- numClassName :: Name
- numClass_RDR :: RdrName
- numericClassKeys :: [Unique]
- oneDataConKey :: Unique
- oneShotKey :: Unique
- ordClassKey :: Unique
- ordClassName :: Name
- ordClass_RDR :: RdrName
- ordEQDataConKey :: Unique
- ordEQDataConName :: Name
- ordGTDataConKey :: Unique
- ordGTDataConName :: Name
- ordLTDataConKey :: Unique
- ordLTDataConName :: Name
- orderingTyConKey :: Unique
- orderingTyConName :: Name
- otherwiseIdKey :: Unique
- otherwiseIdName :: Name
- pLUGINS :: Module
- pRELUDE :: Module
- pRELUDE_NAME :: ModuleName
- packageName_RDR :: RdrName
- par1DataCon_RDR :: RdrName
- par1TyConKey :: Unique
- par1TyConName :: Name
- parens_RDR :: RdrName
- patErrorIdKey :: Unique
- pfail_RDR :: RdrName
- pluginTyConKey :: Unique
- pluginTyConName :: Name
- plus_RDR :: RdrName
- prec_RDR :: RdrName
- pred_RDR :: RdrName
- prefixDataCon_RDR :: RdrName
- prefixIDataConKey :: Unique
- prefixIDataConName :: Name
- pretendNameIsInScope :: Name -> Bool
- printIdKey :: Unique
- prodDataCon_RDR :: RdrName
- prodTyConKey :: Unique
- prodTyConName :: Name
- promptTagPrimTyConKey :: Unique
- proxyHashKey :: Unique
- proxyPrimTyConKey :: Unique
- ptrTyConKey :: Unique
- ptrTyConName :: Name
- punc_RDR :: RdrName
- pureAClassOpKey :: Unique
- pureAName :: Name
- pure_RDR :: RdrName
- pushCallStackKey :: Unique
- pushCallStackName :: Name
- r1DataCon_RDR :: RdrName
- rANDOM :: Module
- rEAD_PREC :: Module
- rOOT_MAIN :: Module
- rTyConKey :: Unique
- rTyConName :: Name
- randomClassKey :: Unique
- randomGenClassKey :: Unique
- range_RDR :: RdrName
- ratioDataConKey :: Unique
- ratioDataConName :: Name
- ratioDataCon_RDR :: RdrName
- ratioTyConKey :: Unique
- ratioTyConName :: Name
- rationalToDoubleIdKey :: Unique
- rationalToDoubleName :: Name
- rationalToFloatIdKey :: Unique
- rationalToFloatName :: Name
- rationalTyConKey :: Unique
- rationalTyConName :: Name
- readClassKey :: Unique
- readClassName :: Name
- readFieldHash_RDR :: RdrName
- readField_RDR :: RdrName
- readListDefault_RDR :: RdrName
- readListPrecDefault_RDR :: RdrName
- readListPrec_RDR :: RdrName
- readList_RDR :: RdrName
- readPrec_RDR :: RdrName
- readSymField_RDR :: RdrName
- realClassKey :: Unique
- realClassName :: Name
- realFloatClassKey :: Unique
- realFloatClassName :: Name
- realFracClassKey :: Unique
- realFracClassName :: Name
- realToFracIdKey :: Unique
- realToFracName :: Name
- realWorldPrimIdKey :: Unique
- realWorldTyConKey :: Unique
- rec0TyConKey :: Unique
- rec0TyConName :: Name
- rec1DataCon_RDR :: RdrName
- rec1TyConKey :: Unique
- rec1TyConName :: Name
- recConErrorIdKey :: Unique
- recSelErrorIdKey :: Unique
- rep1TyConKey :: Unique
- rep1TyConName :: Name
- repTyConKey :: Unique
- repTyConName :: Name
- replace_RDR :: RdrName
- reset_RDR :: RdrName
- returnIOIdKey :: Unique
- returnIOName :: Name
- returnIO_RDR :: RdrName
- returnMClassOpKey :: Unique
- returnMName :: Name
- returnM_RDR :: RdrName
- rightAssocDataCon_RDR :: RdrName
- rightAssociativeDataConKey :: Unique
- rightAssociativeDataConName :: Name
- rightDataConKey :: Unique
- rightDataConName :: Name
- rightSectionKey :: Unique
- right_RDR :: RdrName
- rootMainKey :: Unique
- runMainIOName :: Name
- runMainKey :: Unique
- runRWKey :: Unique
- runRWName :: Name
- runtimeRepSimpleDataConKeys :: [Unique]
- runtimeRepTyConKey :: Unique
- s1TyConKey :: Unique
- s1TyConName :: Name
- sTyConKey :: Unique
- sTyConName :: Name
- sYSTEM_IO :: Module
- sappendClassOpKey :: Unique
- sappendName :: Name
- selName_RDR :: RdrName
- selectorClassKey :: Unique
- selectorClassName :: Name
- semigroupClassKey :: Unique
- semigroupClassName :: Name
- seqIdKey :: Unique
- setFieldClassOpKey :: Unique
- setFieldName :: Name
- showClassKey :: Unique
- showClassName :: Name
- showCommaSpace_RDR :: RdrName
- showParen_RDR :: RdrName
- showSpace_RDR :: RdrName
- showString_RDR :: RdrName
- showsPrec_RDR :: RdrName
- shows_RDR :: RdrName
- smallArrayPrimTyConKey :: Unique
- smallMutableArrayPrimTyConKey :: Unique
- someTypeRepDataConKey :: Unique
- someTypeRepDataConName :: Name
- someTypeRepTyConKey :: Unique
- someTypeRepTyConName :: Name
- sourceLazyDataConKey :: Unique
- sourceLazyDataConName :: Name
- sourceNoUnpackDataConKey :: Unique
- sourceNoUnpackDataConName :: Name
- sourceStrictDataConKey :: Unique
- sourceStrictDataConName :: Name
- sourceUnpackDataConKey :: Unique
- sourceUnpackDataConName :: Name
- specTyConKey :: Unique
- specTyConName :: Name
- srcLocDataConKey :: Unique
- srcLocDataConName :: Name
- stableNameDataConKey :: Unique
- stableNamePrimTyConKey :: Unique
- stableNameTyConKey :: Unique
- stablePtrPrimTyConKey :: Unique
- stablePtrTyConKey :: Unique
- stablePtrTyConName :: Name
- stackSnapshotPrimTyConKey :: Unique
- standardClassKeys :: [Unique]
- starArrStarArrStarKindRepKey :: Unique
- starArrStarArrStarKindRepName :: Name
- starArrStarKindRepKey :: Unique
- starArrStarKindRepName :: Name
- starKindRepKey :: Unique
- starKindRepName :: Name
- statePrimTyConKey :: Unique
- staticPtrDataConKey :: Unique
- staticPtrDataConName :: Name
- staticPtrInfoDataConKey :: Unique
- staticPtrInfoDataConName :: Name
- staticPtrInfoTyConKey :: Unique
- staticPtrInfoTyConName :: Name
- staticPtrTyConKey :: Unique
- staticPtrTyConName :: Name
- step_RDR :: RdrName
- stringTyConKey :: Unique
- succ_RDR :: RdrName
- sumRepDataConKey :: Unique
- sumTyConKey :: Unique
- sumTyConName :: Name
- symbol_RDR :: RdrName
- tVarPrimTyConKey :: Unique
- tYPEABLE :: Module
- tYPEABLE_INTERNAL :: Module
- tYPETyConKey :: Unique
- tcArrowTyConKey :: Unique
- tcQual :: Module -> FastString -> Unique -> Name
- tcQual_RDR :: Module -> FastString -> RdrName
- thenAClassOpKey :: Unique
- thenAName :: Name
- thenIOIdKey :: Unique
- thenIOName :: Name
- thenMClassOpKey :: Unique
- thenMName :: Name
- threadIdPrimTyConKey :: Unique
- times_RDR :: RdrName
- to1_RDR :: RdrName
- toAnnotationWrapperIdKey :: Unique
- toAnnotationWrapperName :: Name
- toDynIdKey :: Unique
- toDynName :: Name
- toEnum_RDR :: RdrName
- toIntegerClassOpKey :: Unique
- toIntegerName :: Name
- toInteger_RDR :: RdrName
- toListClassOpKey :: Unique
- toListName :: Name
- toList_RDR :: RdrName
- toRationalClassOpKey :: Unique
- toRationalName :: Name
- toRational_RDR :: RdrName
- to_RDR :: RdrName
- tr'PtrRepLiftedKey :: Unique
- trGhcPrimModuleKey :: Unique
- trGhcPrimModuleName :: Name
- trLiftedRepKey :: Unique
- trModuleDataConKey :: Unique
- trModuleDataConName :: Name
- trModuleTyConKey :: Unique
- trModuleTyConName :: Name
- trNameDDataConKey :: Unique
- trNameDDataConName :: Name
- trNameSDataConKey :: Unique
- trNameSDataConName :: Name
- trNameTyConKey :: Unique
- trNameTyConName :: Name
- trRuntimeRepKey :: Unique
- trTYPE'PtrRepLiftedKey :: Unique
- trTYPEKey :: Unique
- trTyConDataConKey :: Unique
- trTyConDataConName :: Name
- trTyConTyConKey :: Unique
- trTyConTyConName :: Name
- traceKey :: Unique
- traceName :: Name
- traversableClassKey :: Unique
- traversableClassName :: Name
- traverse_RDR :: RdrName
- trueDataConKey :: Unique
- tupleRepDataConKey :: Unique
- tupleRepDataConTyConKey :: Unique
- typeCharCmpTyFamNameKey :: Unique
- typeCharKindConNameKey :: Unique
- typeCharToNatTyFamNameKey :: Unique
- typeCharTypeRepKey :: Unique
- typeCharTypeRepName :: Name
- typeConKey :: Unique
- typeConsSymbolTyFamNameKey :: Unique
- typeErrorAppendDataConKey :: Unique
- typeErrorAppendDataConName :: Name
- typeErrorIdKey :: Unique
- typeErrorShowTypeDataConKey :: Unique
- typeErrorShowTypeDataConName :: Name
- typeErrorTextDataConKey :: Unique
- typeErrorTextDataConName :: Name
- typeErrorVAppendDataConKey :: Unique
- typeErrorVAppendDataConName :: Name
- typeLeqCharTyFamNameKey :: Unique
- typeLitCharDataConKey :: Unique
- typeLitCharDataConName :: Name
- typeLitNatDataConKey :: Unique
- typeLitNatDataConName :: Name
- typeLitSortTyConKey :: Unique
- typeLitSortTyConName :: Name
- typeLitSymbolDataConKey :: Unique
- typeLitSymbolDataConName :: Name
- typeNatAddTyFamNameKey :: Unique
- typeNatCmpTyFamNameKey :: Unique
- typeNatDivTyFamNameKey :: Unique
- typeNatExpTyFamNameKey :: Unique
- typeNatLogTyFamNameKey :: Unique
- typeNatModTyFamNameKey :: Unique
- typeNatMulTyFamNameKey :: Unique
- typeNatSubTyFamNameKey :: Unique
- typeNatToCharTyFamNameKey :: Unique
- typeNatTypeRepKey :: Unique
- typeNatTypeRepName :: Name
- typeRepIdKey :: Unique
- typeRepIdName :: Name
- typeRepTyConKey :: Unique
- typeRepTyConName :: Name
- typeSymbolAppendFamNameKey :: Unique
- typeSymbolCmpTyFamNameKey :: Unique
- typeSymbolKindConNameKey :: Unique
- typeSymbolTypeRepKey :: Unique
- typeSymbolTypeRepName :: Name
- typeUnconsSymbolTyFamNameKey :: Unique
- typeableClassKey :: Unique
- typeableClassName :: Name
- u1DataCon_RDR :: RdrName
- u1TyConKey :: Unique
- u1TyConName :: Name
- uAddrDataCon_RDR :: RdrName
- uAddrHash_RDR :: RdrName
- uAddrTyConKey :: Unique
- uAddrTyConName :: Name
- uCharDataCon_RDR :: RdrName
- uCharHash_RDR :: RdrName
- uCharTyConKey :: Unique
- uCharTyConName :: Name
- uDoubleDataCon_RDR :: RdrName
- uDoubleHash_RDR :: RdrName
- uDoubleTyConKey :: Unique
- uDoubleTyConName :: Name
- uFloatDataCon_RDR :: RdrName
- uFloatHash_RDR :: RdrName
- uFloatTyConKey :: Unique
- uFloatTyConName :: Name
- uIntDataCon_RDR :: RdrName
- uIntHash_RDR :: RdrName
- uIntTyConKey :: Unique
- uIntTyConName :: Name
- uNSAFE_COERCE :: Module
- uRecTyConKey :: Unique
- uRecTyConName :: Name
- uWordDataCon_RDR :: RdrName
- uWordHash_RDR :: RdrName
- uWordTyConKey :: Unique
- uWordTyConName :: Name
- unComp1_RDR :: RdrName
- unK1_RDR :: RdrName
- unPar1_RDR :: RdrName
- unRec1_RDR :: RdrName
- unboundKey :: Unique
- unliftedDataConKey :: Unique
- unliftedRepTyConKey :: Unique
- unliftedTypeKindTyConKey :: Unique
- unpackCStringAppendIdKey :: Unique
- unpackCStringAppendName :: Name
- unpackCStringAppendUtf8IdKey :: Unique
- unpackCStringAppendUtf8Name :: Name
- unpackCStringFoldrIdKey :: Unique
- unpackCStringFoldrName :: Name
- unpackCStringFoldrUtf8IdKey :: Unique
- unpackCStringFoldrUtf8Name :: Name
- unpackCStringIdKey :: Unique
- unpackCStringName :: Name
- unpackCStringUtf8IdKey :: Unique
- unpackCStringUtf8Name :: Name
- unrestrictedFunTyConKey :: Unique
- unsafeCoercePrimIdKey :: Unique
- unsafeCoercePrimName :: Name
- unsafeEqualityProofIdKey :: Unique
- unsafeEqualityProofName :: Name
- unsafeEqualityTyConKey :: Unique
- unsafeEqualityTyConName :: Name
- unsafeIndex_RDR :: RdrName
- unsafeRangeSize_RDR :: RdrName
- unsafeReflDataConKey :: Unique
- unsafeReflDataConName :: Name
- v1TyConKey :: Unique
- v1TyConName :: Name
- varQual :: Module -> FastString -> Unique -> Name
- varQual_RDR :: Module -> FastString -> RdrName
- vecCountDataConKeys :: [Unique]
- vecCountTyConKey :: Unique
- vecElemDataConKeys :: [Unique]
- vecElemTyConKey :: Unique
- vecRepDataConKey :: Unique
- voidArgIdKey :: Unique
- voidPrimIdKey :: Unique
- voidTyConKey :: Unique
- voidTyConName :: Name
- weakPrimTyConKey :: Unique
- wildCardKey :: Unique
- wildCardName :: Name
- withDictClassKey :: Unique
- withDictClassName :: Name
- word16PrimTyConKey :: Unique
- word16TyConKey :: Unique
- word16TyConName :: Name
- word16X16PrimTyConKey :: Unique
- word16X32PrimTyConKey :: Unique
- word16X8PrimTyConKey :: Unique
- word32PrimTyConKey :: Unique
- word32TyConKey :: Unique
- word32TyConName :: Name
- word32X16PrimTyConKey :: Unique
- word32X4PrimTyConKey :: Unique
- word32X8PrimTyConKey :: Unique
- word64PrimTyConKey :: Unique
- word64TyConKey :: Unique
- word64TyConName :: Name
- word64X2PrimTyConKey :: Unique
- word64X4PrimTyConKey :: Unique
- word64X8PrimTyConKey :: Unique
- word8DataConKey :: Unique
- word8PrimTyConKey :: Unique
- word8TyConKey :: Unique
- word8TyConName :: Name
- word8X16PrimTyConKey :: Unique
- word8X32PrimTyConKey :: Unique
- word8X64PrimTyConKey :: Unique
- wordDataConKey :: Unique
- wordPrimTyConKey :: Unique
- wordTyConKey :: Unique
- zeroBitRepTyConKey :: Unique
- zeroBitTypeTyConKey :: Unique
- zipIdKey :: Unique
- zipName :: Name
- data DataCon
- data FieldLabel = FieldLabel {
  - flLabel :: FieldLabelString
  - flHasDuplicateRecordFields :: DuplicateRecordFields
  - flHasFieldSelector :: FieldSelectors
  - flSelector :: Name
  }
- data HsImplBang
  - = HsLazy
  - | HsStrict Bool
  - | HsUnpack (Maybe Coercion)
- data HsSrcBang = HsSrcBang SourceText SrcUnpackedness SrcStrictness
- data StrictnessMark
  - = MarkedStrict
  - | NotMarkedStrict
- data SrcStrictness
  - = SrcLazy
  - | SrcStrict
  - | NoSrcStrict
- data SrcUnpackedness
  - = SrcUnpack
  - | SrcNoUnpack
  - | NoSrcUnpack
- type ConTag = Int
- data EqSpec
- data FieldLabelString
- type DataConEnv a = UniqFM DataCon a
- data DataConRep
  - = NoDataConRep
  - | DCR {
    - dcr_wrap_id :: Id
    - dcr_boxer :: DataConBoxer
    - dcr_arg_tys :: [Scaled Type]
    - dcr_stricts :: [StrictnessMark]
    - dcr_bangs :: [HsImplBang]
    }
- dataConFieldLabels :: DataCon -> [FieldLabel]
- dataConIsInfix :: DataCon -> Bool
- dataConSrcBangs :: DataCon -> [HsSrcBang]
- dataConTyCon :: DataCon -> TyCon
- dataConWrapId :: DataCon -> Id
- dataConWrapperType :: DataCon -> Type
- isMarkedStrict :: StrictnessMark -> Bool
- isVanillaDataCon :: DataCon -> Bool
- dataConName :: DataCon -> Name
- dataConWorkId :: DataCon -> Id
- mkDataCon :: Name -> Bool -> TyConRepName -> [HsSrcBang] -> [FieldLabel] -> [TyVar] -> [TyCoVar] -> [InvisTVBinder] -> [EqSpec] -> KnotTied ThetaType -> [KnotTied (Scaled Type)] -> KnotTied Type -> PromDataConInfo -> KnotTied TyCon -> ConTag -> ThetaType -> Id -> DataConRep -> DataCon
- promoteDataCon :: DataCon -> TyCon
- dataConFieldType :: DataCon -> FieldLabelString -> Type
- dataConFullSig :: DataCon -> ([TyVar], [TyCoVar], [EqSpec], ThetaType, [Scaled Type], Type)
- dataConImplBangs :: DataCon -> [HsImplBang]
- dataConInstOrigArgTys :: DataCon -> [Type] -> [Scaled Type]
- dataConSourceArity :: DataCon -> Arity
- dataConStupidTheta :: DataCon -> ThetaType
- dataConUserTyVarBinders :: DataCon -> [InvisTVBinder]
- fIRST_TAG :: ConTag
- cbvFromStrictMark :: StrictnessMark -> CbvMark
- checkDataConTyVars :: DataCon -> Bool
- classDataCon :: Class -> DataCon
- dataConBoxer :: DataCon -> Maybe DataConBoxer
- dataConCannotMatch :: [Type] -> DataCon -> Bool
- dataConDisplayType :: Bool -> DataCon -> Type
- dataConFieldType_maybe :: DataCon -> FieldLabelString -> Maybe (FieldLabel, Type)
- dataConIdentity :: DataCon -> ByteString
- dataConImplicitTyThings :: DataCon -> [TyThing]
- dataConInstArgTys :: DataCon -> [Type] -> [Scaled Type]
- dataConInstSig :: DataCon -> [Type] -> ([TyCoVar], ThetaType, [Type])
- dataConInstUnivs :: DataCon -> [Type] -> [Type]
- dataConNonlinearType :: DataCon -> Type
- dataConOrigArgTys :: DataCon -> [Scaled Type]
- dataConOrigResTy :: DataCon -> Type
- dataConOrigTyCon :: DataCon -> TyCon
- dataConOtherTheta :: DataCon -> ThetaType
- dataConRepArgTys :: DataCon -> [Scaled Type]
- dataConRepArity :: DataCon -> Arity
- dataConRepStrictness :: DataCon -> [StrictnessMark]
- dataConRepType :: DataCon -> Type
- dataConResRepTyArgs :: DataCon -> [Type]
- dataConTag :: DataCon -> ConTag
- dataConTagZ :: DataCon -> ConTagZ
- dataConTheta :: DataCon -> ThetaType
- dataConUnivAndExTyCoVars :: DataCon -> [TyCoVar]
- dataConUnivTyVars :: DataCon -> [TyVar]
- dataConUserTyVars :: DataCon -> [TyVar]
- dataConUserTyVarsNeedWrapper :: DataCon -> Bool
- dataConWrapId_maybe :: DataCon -> Maybe Id
- eqHsBang :: HsImplBang -> HsImplBang -> Bool
- eqSpecPair :: EqSpec -> (TyVar, Type)
- eqSpecPreds :: [EqSpec] -> ThetaType
- eqSpecTyVar :: EqSpec -> TyVar
- eqSpecType :: EqSpec -> Type
- isBanged :: HsImplBang -> Bool
- isBoxedTupleDataCon :: DataCon -> Bool
- isCovertGadtDataCon :: DataCon -> Bool
- isNewDataCon :: DataCon -> Bool
- isNullaryRepDataCon :: DataCon -> Bool
- isNullarySrcDataCon :: DataCon -> Bool
- isSrcStrict :: SrcStrictness -> Bool
- isSrcUnpacked :: SrcUnpackedness -> Bool
- isTupleDataCon :: DataCon -> Bool
- isTypeDataCon :: DataCon -> Bool
- isUnboxedSumDataCon :: DataCon -> Bool
- isUnboxedTupleDataCon :: DataCon -> Bool
- mkEqSpec :: TyVar -> Type -> EqSpec
- specialPromotedDc :: DataCon -> Bool
- splitDataProductType_maybe :: Type -> Maybe (TyCon, [Type], DataCon, [Scaled Type])
- data FamInstEnv
- data FamInst = FamInst {
  - fi_axiom :: CoAxiom Unbranched
  - fi_flavor :: FamFlavor
  - fi_fam :: Name
  - fi_tcs :: [RoughMatchTc]
  - fi_tvs :: [TyVar]
  - fi_cvs :: [CoVar]
  - fi_tys :: [Type]
  - fi_rhs :: Type
  }
- data FamInstMatch = FamInstMatch {
  - fim_instance :: FamInst
  - fim_tys :: [Type]
  - fim_cos :: [Coercion]
  }
- data FamFlavor
  - = SynFamilyInst
  - | DataFamilyInst TyCon
- type FamInstEnvs = (FamInstEnv, FamInstEnv)
- data InjectivityCheckResult
  - = InjectivityAccepted
  - | InjectivityUnified CoAxBranch CoAxBranch
- famInstEnvElts :: FamInstEnv -> [FamInst]
- orphNamesOfFamInst :: FamInst -> NameSet
- apartnessCheck :: [Type] -> CoAxBranch -> Bool
- compatibleBranches :: CoAxBranch -> CoAxBranch -> Bool
- dataFamInstRepTyCon :: FamInst -> TyCon
- emptyFamInstEnv :: FamInstEnv
- emptyFamInstEnvs :: (FamInstEnv, FamInstEnv)
- extendFamInstEnv :: FamInstEnv -> FamInst -> FamInstEnv
- extendFamInstEnvList :: FamInstEnv -> [FamInst] -> FamInstEnv
- famInstAxiom :: FamInst -> CoAxiom Unbranched
- famInstEnvSize :: FamInstEnv -> Int
- famInstRHS :: FamInst -> Type
- famInstRepTyCon_maybe :: FamInst -> Maybe TyCon
- famInstTyCon :: FamInst -> TyCon
- famInstsRepTyCons :: [FamInst] -> [TyCon]
- familyInstances :: (FamInstEnv, FamInstEnv) -> TyCon -> [FamInst]
- familyNameInstances :: (FamInstEnv, FamInstEnv) -> Name -> [FamInst]
- injectiveBranches :: [Bool] -> CoAxBranch -> CoAxBranch -> InjectivityCheckResult
- isDominatedBy :: CoAxBranch -> [CoAxBranch] -> Bool
- lookupFamInstEnv :: FamInstEnvs -> TyCon -> [Type] -> [FamInstMatch]
- lookupFamInstEnvByTyCon :: FamInstEnvs -> TyCon -> [FamInst]
- lookupFamInstEnvConflicts :: FamInstEnvs -> FamInst -> [FamInst]
- lookupFamInstEnvInjectivityConflicts :: [Bool] -> FamInstEnvs -> FamInst -> [CoAxBranch]
- mkBranchedCoAxiom :: Name -> TyCon -> [CoAxBranch] -> CoAxiom Branched
- mkCoAxBranch :: [TyVar] -> [TyVar] -> [CoVar] -> [Type] -> Type -> [Role] -> SrcSpan -> CoAxBranch
- mkImportedFamInst :: Name -> [RoughMatchTc] -> CoAxiom Unbranched -> FamInst
- mkNewTypeCoAxiom :: Name -> TyCon -> [TyVar] -> [Role] -> Type -> CoAxiom Unbranched
- mkSingleCoAxiom :: Role -> Name -> [TyVar] -> [TyVar] -> [CoVar] -> TyCon -> [Type] -> Type -> CoAxiom Unbranched
- mkUnbranchedCoAxiom :: Name -> TyCon -> CoAxBranch -> CoAxiom Unbranched
- normaliseTcApp :: FamInstEnvs -> Role -> TyCon -> [Type] -> Reduction
- normaliseType :: FamInstEnvs -> Role -> Type -> Reduction
- pprFamInsts :: [FamInst] -> SDoc
- reduceTyFamApp_maybe :: FamInstEnvs -> Role -> TyCon -> [Type] -> Maybe Reduction
- topNormaliseType :: FamInstEnvs -> Type -> Type
- topNormaliseType_maybe :: FamInstEnvs -> Type -> Maybe Reduction
- topReduceTyFamApp_maybe :: FamInstEnvs -> TyCon -> [Type] -> Maybe HetReduction
- unionFamInstEnv :: FamInstEnv -> FamInstEnv -> FamInstEnv
- data DerivStrategy pass
  - = StockStrategy (XStockStrategy pass)
  - | AnyclassStrategy (XAnyClassStrategy pass)
  - | NewtypeStrategy (XNewtypeStrategy pass)
  - | ViaStrategy (XViaStrategy pass)
- data InjectivityAnn pass
  - = InjectivityAnn (XCInjectivityAnn pass) (LIdP pass) [LIdP pass]
  - | XInjectivityAnn !(XXInjectivityAnn pass)
- data RuleBndr pass
  - = RuleBndr (XCRuleBndr pass) (LIdP pass)
  - | RuleBndrSig (XRuleBndrSig pass) (LIdP pass) (HsPatSigType pass)
  - | XRuleBndr !(XXRuleBndr pass)
- data FamilyResultSig pass
  - = NoSig (XNoSig pass)
  - | KindSig (XCKindSig pass) (LHsKind pass)
  - | TyVarSig (XTyVarSig pass) (LHsTyVarBndr () pass)
  - | XFamilyResultSig !(XXFamilyResultSig pass)
- data DataDeclRn = DataDeclRn {
  - tcdDataCusk :: Bool
  - tcdFVs :: NameSet
  }
- data HsRuleAnn = HsRuleAnn {
  - ra_tyanns :: Maybe (AddEpAnn, AddEpAnn)
  - ra_tmanns :: Maybe (AddEpAnn, AddEpAnn)
  - ra_rest :: [AddEpAnn]
  }
- data HsRuleRn = HsRuleRn NameSet NameSet
- data XViaStrategyPs = XViaStrategyPs (EpAnn [AddEpAnn]) (LHsSigType GhcPs)
- data AnnDecl pass
  - = HsAnnotation (XHsAnnotation pass) (AnnProvenance pass) (XRec pass (HsExpr pass))
  - | XAnnDecl !(XXAnnDecl pass)
- data AnnProvenance pass
  - = ValueAnnProvenance (LIdP pass)
  - | TypeAnnProvenance (LIdP pass)
  - | ModuleAnnProvenance
- data CImportSpec
  - = CLabel CLabelString
  - | CFunction CCallTarget
  - | CWrapper
- data ClsInstDecl pass
  - = ClsInstDecl {
    - cid_ext :: XCClsInstDecl pass
    - cid_poly_ty :: LHsSigType pass
    - cid_binds :: LHsBinds pass
    - cid_sigs :: [LSig pass]
    - cid_tyfam_insts :: [LTyFamInstDecl pass]
    - cid_datafam_insts :: [LDataFamInstDecl pass]
    - cid_overlap_mode :: Maybe (XRec pass OverlapMode)
    }
  - | XClsInstDecl !(XXClsInstDecl pass)
- data ConDecl pass
  - = ConDeclGADT {
    - con_g_ext :: XConDeclGADT pass
    - con_names :: NonEmpty (LIdP pass)
    - con_dcolon :: !(LHsUniToken "::" "\8759" pass)
    - con_bndrs :: XRec pass (HsOuterSigTyVarBndrs pass)
    - con_mb_cxt :: Maybe (LHsContext pass)
    - con_g_args :: HsConDeclGADTDetails pass
    - con_res_ty :: LHsType pass
    - con_doc :: Maybe (LHsDoc pass)
    }
  - | ConDeclH98 {
    - con_ext :: XConDeclH98 pass
    - con_name :: LIdP pass
    - con_forall :: Bool
    - con_ex_tvs :: [LHsTyVarBndr Specificity pass]
    - con_mb_cxt :: Maybe (LHsContext pass)
    - con_args :: HsConDeclH98Details pass
    - con_doc :: Maybe (LHsDoc pass)
    }
  - | XConDecl !(XXConDecl pass)
- newtype DataFamInstDecl pass = DataFamInstDecl {
  - dfid_eqn :: FamEqn pass (HsDataDefn pass)
  }
- data DefaultDecl pass
  - = DefaultDecl (XCDefaultDecl pass) [LHsType pass]
  - | XDefaultDecl !(XXDefaultDecl pass)
- data DerivClauseTys pass
  - = DctSingle (XDctSingle pass) (LHsSigType pass)
  - | DctMulti (XDctMulti pass) [LHsSigType pass]
  - | XDerivClauseTys !(XXDerivClauseTys pass)
- data DerivDecl pass
  - = DerivDecl {
    - deriv_ext :: XCDerivDecl pass
    - deriv_type :: LHsSigWcType pass
    - deriv_strategy :: Maybe (LDerivStrategy pass)
    - deriv_overlap_mode :: Maybe (XRec pass OverlapMode)
    }
  - | XDerivDecl !(XXDerivDecl pass)
- data DocDecl pass
  - = DocCommentNext (LHsDoc pass)
  - | DocCommentPrev (LHsDoc pass)
  - | DocCommentNamed String (LHsDoc pass)
  - | DocGroup Int (LHsDoc pass)
- data FamEqn pass rhs
  - = FamEqn {
    - feqn_ext :: XCFamEqn pass rhs
    - feqn_tycon :: LIdP pass
    - feqn_bndrs :: HsOuterFamEqnTyVarBndrs pass
    - feqn_pats :: HsTyPats pass
    - feqn_fixity :: LexicalFixity
    - feqn_rhs :: rhs
    }
  - | XFamEqn !(XXFamEqn pass rhs)
- data FamilyDecl pass
  - = FamilyDecl {
    - fdExt :: XCFamilyDecl pass
    - fdInfo :: FamilyInfo pass
    - fdTopLevel :: TopLevelFlag
    - fdLName :: LIdP pass
    - fdTyVars :: LHsQTyVars pass
    - fdFixity :: LexicalFixity
    - fdResultSig :: LFamilyResultSig pass
    - fdInjectivityAnn :: Maybe (LInjectivityAnn pass)
    }
  - | XFamilyDecl !(XXFamilyDecl pass)
- data FamilyInfo pass
  - = DataFamily
  - | OpenTypeFamily
  - | ClosedTypeFamily (Maybe [LTyFamInstEqn pass])
- data ForeignDecl pass
  - = ForeignImport {
    - fd_i_ext :: XForeignImport pass
    - fd_name :: LIdP pass
    - fd_sig_ty :: LHsSigType pass
    - fd_fi :: ForeignImport pass
    }
  - | ForeignExport {
    - fd_e_ext :: XForeignExport pass
    - fd_name :: LIdP pass
    - fd_sig_ty :: LHsSigType pass
    - fd_fe :: ForeignExport pass
    }
  - | XForeignDecl !(XXForeignDecl pass)
- data ForeignExport pass
  - = CExport (XCExport pass) (XRec pass CExportSpec)
  - | XForeignExport !(XXForeignExport pass)
- data ForeignImport pass
  - = CImport (XCImport pass) (XRec pass CCallConv) (XRec pass Safety) (Maybe Header) CImportSpec
  - | XForeignImport !(XXForeignImport pass)
- data HsConDeclGADTDetails pass
  - = PrefixConGADT [HsScaled pass (LBangType pass)]
  - | RecConGADT (XRec pass [LConDeclField pass]) (LHsUniToken "->" "\8594" pass)
- type HsConDeclH98Details pass = HsConDetails Void (HsScaled pass (LBangType pass)) (XRec pass [LConDeclField pass])
- data HsDataDefn pass
  - = HsDataDefn {
    - dd_ext :: XCHsDataDefn pass
    - dd_ctxt :: Maybe (LHsContext pass)
    - dd_cType :: Maybe (XRec pass CType)
    - dd_kindSig :: Maybe (LHsKind pass)
    - dd_cons :: DataDefnCons (LConDecl pass)
    - dd_derivs :: HsDeriving pass
    }
  - | XHsDataDefn !(XXHsDataDefn pass)
- data HsDecl p
  - = TyClD (XTyClD p) (TyClDecl p)
  - | InstD (XInstD p) (InstDecl p)
  - | DerivD (XDerivD p) (DerivDecl p)
  - | ValD (XValD p) (HsBind p)
  - | SigD (XSigD p) (Sig p)
  - | KindSigD (XKindSigD p) (StandaloneKindSig p)
  - | DefD (XDefD p) (DefaultDecl p)
  - | ForD (XForD p) (ForeignDecl p)
  - | WarningD (XWarningD p) (WarnDecls p)
  - | AnnD (XAnnD p) (AnnDecl p)
  - | RuleD (XRuleD p) (RuleDecls p)
  - | SpliceD (XSpliceD p) (SpliceDecl p)
  - | DocD (XDocD p) (DocDecl p)
  - | RoleAnnotD (XRoleAnnotD p) (RoleAnnotDecl p)
  - | XHsDecl !(XXHsDecl p)
- type HsDeriving pass = [LHsDerivingClause pass]
- data HsDerivingClause pass
  - = HsDerivingClause {
    - deriv_clause_ext :: XCHsDerivingClause pass
    - deriv_clause_strategy :: Maybe (LDerivStrategy pass)
    - deriv_clause_tys :: LDerivClauseTys pass
    }
  - | XHsDerivingClause !(XXHsDerivingClause pass)
- data HsGroup p
  - = HsGroup {
    - hs_ext :: XCHsGroup p
    - hs_valds :: HsValBinds p
    - hs_splcds :: [LSpliceDecl p]
    - hs_tyclds :: [TyClGroup p]
    - hs_derivds :: [LDerivDecl p]
    - hs_fixds :: [LFixitySig p]
    - hs_defds :: [LDefaultDecl p]
    - hs_fords :: [LForeignDecl p]
    - hs_warnds :: [LWarnDecls p]
    - hs_annds :: [LAnnDecl p]
    - hs_ruleds :: [LRuleDecls p]
    - hs_docs :: [LDocDecl p]
    }
  - | XHsGroup !(XXHsGroup p)
- type HsTyPats pass = [LHsTypeArg pass]
- data InstDecl pass
  - = ClsInstD {
    - cid_d_ext :: XClsInstD pass
    - cid_inst :: ClsInstDecl pass
    }
  - | DataFamInstD {
    - dfid_ext :: XDataFamInstD pass
    - dfid_inst :: DataFamInstDecl pass
    }
  - | TyFamInstD {
    - tfid_ext :: XTyFamInstD pass
    - tfid_inst :: TyFamInstDecl pass
    }
  - | XInstDecl !(XXInstDecl pass)
- type LAnnDecl pass = XRec pass (AnnDecl pass)
- type LClsInstDecl pass = XRec pass (ClsInstDecl pass)
- type LConDecl pass = XRec pass (ConDecl pass)
- type LDataFamInstDecl pass = XRec pass (DataFamInstDecl pass)
- type LDefaultDecl pass = XRec pass (DefaultDecl pass)
- type LDerivClauseTys pass = XRec pass (DerivClauseTys pass)
- type LDerivDecl pass = XRec pass (DerivDecl pass)
- type LDerivStrategy pass = XRec pass (DerivStrategy pass)
- type LDocDecl pass = XRec pass (DocDecl pass)
- type LFamilyDecl pass = XRec pass (FamilyDecl pass)
- type LFamilyResultSig pass = XRec pass (FamilyResultSig pass)
- type LForeignDecl pass = XRec pass (ForeignDecl pass)
- type LHsDecl p = XRec p (HsDecl p)
- type LHsDerivingClause pass = XRec pass (HsDerivingClause pass)
- type LHsFunDep pass = XRec pass (FunDep pass)
- type LInjectivityAnn pass = XRec pass (InjectivityAnn pass)
- type LInstDecl pass = XRec pass (InstDecl pass)
- type LRoleAnnotDecl pass = XRec pass (RoleAnnotDecl pass)
- type LRuleBndr pass = XRec pass (RuleBndr pass)
- type LRuleDecl pass = XRec pass (RuleDecl pass)
- type LRuleDecls pass = XRec pass (RuleDecls pass)
- type LSpliceDecl pass = XRec pass (SpliceDecl pass)
- type LStandaloneKindSig pass = XRec pass (StandaloneKindSig pass)
- type LTyClDecl pass = XRec pass (TyClDecl pass)
- type LTyFamDefltDecl pass = XRec pass (TyFamDefltDecl pass)
- type LTyFamInstDecl pass = XRec pass (TyFamInstDecl pass)
- type LTyFamInstEqn pass = XRec pass (TyFamInstEqn pass)
- type LWarnDecl pass = XRec pass (WarnDecl pass)
- type LWarnDecls pass = XRec pass (WarnDecls pass)
- data NewOrData
- data RoleAnnotDecl pass
  - = RoleAnnotDecl (XCRoleAnnotDecl pass) (LIdP pass) [XRec pass (Maybe Role)]
  - | XRoleAnnotDecl !(XXRoleAnnotDecl pass)
- data RuleDecl pass
  - = HsRule {
    - rd_ext :: XHsRule pass
    - rd_name :: XRec pass RuleName
    - rd_act :: Activation
    - rd_tyvs :: Maybe [LHsTyVarBndr () (NoGhcTc pass)]
    - rd_tmvs :: [LRuleBndr pass]
    - rd_lhs :: XRec pass (HsExpr pass)
    - rd_rhs :: XRec pass (HsExpr pass)
    }
  - | XRuleDecl !(XXRuleDecl pass)
- data RuleDecls pass
  - = HsRules {
    - rds_ext :: XCRuleDecls pass
    - rds_rules :: [LRuleDecl pass]
    }
  - | XRuleDecls !(XXRuleDecls pass)
- data SpliceDecl p
  - = SpliceDecl (XSpliceDecl p) (XRec p (HsUntypedSplice p)) SpliceDecoration
  - | XSpliceDecl !(XXSpliceDecl p)
- data SpliceDecoration
  - = DollarSplice
  - | BareSplice
- data StandaloneKindSig pass
  - = StandaloneKindSig (XStandaloneKindSig pass) (LIdP pass) (LHsSigType pass)
  - | XStandaloneKindSig !(XXStandaloneKindSig pass)
- data TyClDecl pass
  - = FamDecl {
    - tcdFExt :: XFamDecl pass
    - tcdFam :: FamilyDecl pass
    }
  - | SynDecl {
    - tcdSExt :: XSynDecl pass
    - tcdLName :: LIdP pass
    - tcdTyVars :: LHsQTyVars pass
    - tcdFixity :: LexicalFixity
    - tcdRhs :: LHsType pass
    }
  - | DataDecl {
    - tcdDExt :: XDataDecl pass
    - tcdLName :: LIdP pass
    - tcdTyVars :: LHsQTyVars pass
    - tcdFixity :: LexicalFixity
    - tcdDataDefn :: HsDataDefn pass
    }
  - | ClassDecl {
    - tcdCExt :: XClassDecl pass
    - tcdLayout :: !(LayoutInfo pass)
    - tcdCtxt :: Maybe (LHsContext pass)
    - tcdLName :: LIdP pass
    - tcdTyVars :: LHsQTyVars pass
    - tcdFixity :: LexicalFixity
    - tcdFDs :: [LHsFunDep pass]
    - tcdSigs :: [LSig pass]
    - tcdMeths :: LHsBinds pass
    - tcdATs :: [LFamilyDecl pass]
    - tcdATDefs :: [LTyFamDefltDecl pass]
    - tcdDocs :: [LDocDecl pass]
    }
  - | XTyClDecl !(XXTyClDecl pass)
- data TyClGroup pass
  - = TyClGroup {
    - group_ext :: XCTyClGroup pass
    - group_tyclds :: [LTyClDecl pass]
    - group_roles :: [LRoleAnnotDecl pass]
    - group_kisigs :: [LStandaloneKindSig pass]
    - group_instds :: [LInstDecl pass]
    }
  - | XTyClGroup !(XXTyClGroup pass)
- type TyFamDefltDecl = TyFamInstDecl
- data TyFamInstDecl pass
  - = TyFamInstDecl {
    - tfid_xtn :: XCTyFamInstDecl pass
    - tfid_eqn :: TyFamInstEqn pass
    }
  - | XTyFamInstDecl !(XXTyFamInstDecl pass)
- type TyFamInstEqn pass = FamEqn pass (LHsType pass)
- data WarnDecl pass
  - = Warning (XWarning pass) [LIdP pass] (WarningTxt pass)
  - | XWarnDecl !(XXWarnDecl pass)
- data WarnDecls pass
  - = Warnings {
    - wd_ext :: XWarnings pass
    - wd_warnings :: [LWarnDecl pass]
    }
  - | XWarnDecls !(XXWarnDecls pass)
- pattern XFunDep :: !(XXFunDep pass) -> FunDep pass
- anyLConIsGadt :: Foldable f => f (GenLocated l (ConDecl pass)) -> Bool
- appendGroups :: forall (p :: Pass). HsGroup (GhcPass p) -> HsGroup (GhcPass p) -> HsGroup (GhcPass p)
- countTyClDecls :: [TyClDecl pass] -> (Int, Int, Int, Int, Int)
- derivStrategyName :: DerivStrategy a -> SDoc
- emptyRdrGroup :: forall (p :: Pass). HsGroup (GhcPass p)
- emptyRnGroup :: forall (p :: Pass). HsGroup (GhcPass p)
- famResultKindSignature :: forall (p :: Pass). FamilyResultSig (GhcPass p) -> Maybe (LHsKind (GhcPass p))
- familyDeclLName :: forall (p :: Pass). FamilyDecl (GhcPass p) -> XRec (GhcPass p) (IdP (GhcPass p))
- familyDeclName :: forall (p :: Pass). FamilyDecl (GhcPass p) -> IdP (GhcPass p)
- flattenRuleDecls :: forall (p :: Pass). [LRuleDecls (GhcPass p)] -> [LRuleDecl (GhcPass p)]
- foldDerivStrategy :: forall p (pass :: Pass) r. p ~ GhcPass pass => r -> (XViaStrategy p -> r) -> DerivStrategy p -> r
- getConNames :: ConDecl GhcRn -> [LocatedN Name]
- getRecConArgs_maybe :: ConDecl GhcRn -> Maybe (LocatedL [LConDeclField GhcRn])
- hsConDeclTheta :: forall (p :: Pass). Maybe (LHsContext (GhcPass p)) -> [LHsType (GhcPass p)]
- hsDeclHasCusk :: TyClDecl GhcRn -> Bool
- hsGroupTopLevelFixitySigs :: forall (p :: Pass). HsGroup (GhcPass p) -> [LFixitySig (GhcPass p)]
- instDeclDataFamInsts :: forall (p :: Pass). [LInstDecl (GhcPass p)] -> [DataFamInstDecl (GhcPass p)]
- mapDerivStrategy :: forall p (pass :: Pass). p ~ GhcPass pass => (XViaStrategy p -> XViaStrategy p) -> DerivStrategy p -> DerivStrategy p
- newOrDataToFlavour :: NewOrData -> TyConFlavour
- partitionBindsAndSigs :: [LHsDecl GhcPs] -> (LHsBinds GhcPs, [LSig GhcPs], [LFamilyDecl GhcPs], [LTyFamInstDecl GhcPs], [LDataFamInstDecl GhcPs], [LDocDecl GhcPs])
- ppDataDefnHeader :: forall (p :: Pass). OutputableBndrId p => (Maybe (LHsContext (GhcPass p)) -> SDoc) -> HsDataDefn (GhcPass p) -> SDoc
- pp_vanilla_decl_head :: forall (p :: Pass). OutputableBndrId p => XRec (GhcPass p) (IdP (GhcPass p)) -> LHsQTyVars (GhcPass p) -> LexicalFixity -> Maybe (LHsContext (GhcPass p)) -> SDoc
- pprDataFamInstFlavour :: forall (p :: Pass). DataFamInstDecl (GhcPass p) -> SDoc
- pprFullRuleName :: SourceText -> GenLocated a RuleName -> SDoc
- pprHsFamInstLHS :: forall (p :: Pass). OutputableBndrId p => IdP (GhcPass p) -> HsOuterFamEqnTyVarBndrs (GhcPass p) -> HsTyPats (GhcPass p) -> LexicalFixity -> Maybe (LHsContext (GhcPass p)) -> SDoc
- pprTyClDeclFlavour :: forall (p :: Pass). TyClDecl (GhcPass p) -> SDoc
- pprTyFamInstDecl :: forall (p :: Pass). OutputableBndrId p => TopLevelFlag -> TyFamInstDecl (GhcPass p) -> SDoc
- resultVariableName :: forall (a :: Pass). FamilyResultSig (GhcPass a) -> Maybe (IdP (GhcPass a))
- roleAnnotDeclName :: forall (p :: Pass). RoleAnnotDecl (GhcPass p) -> IdP (GhcPass p)
- standaloneKindSigName :: forall (p :: Pass). StandaloneKindSig (GhcPass p) -> IdP (GhcPass p)
- tcdName :: forall (p :: Pass). Anno (IdGhcP p) ~ SrcSpanAnnN => TyClDecl (GhcPass p) -> IdP (GhcPass p)
- tyClDeclLName :: forall (p :: Pass). Anno (IdGhcP p) ~ SrcSpanAnnN => TyClDecl (GhcPass p) -> LocatedN (IdP (GhcPass p))
- tyFamInstDeclLName :: forall (p :: Pass). Anno (IdGhcP p) ~ SrcSpanAnnN => TyFamInstDecl (GhcPass p) -> LocatedN (IdP (GhcPass p))
- tyFamInstDeclName :: forall (p :: Pass). Anno (IdGhcP p) ~ SrcSpanAnnN => TyFamInstDecl (GhcPass p) -> IdP (GhcPass p)
- annProvenanceName_maybe :: UnXRec p => AnnProvenance p -> Maybe (IdP p)
- collectRuleBndrSigTys :: [RuleBndr pass] -> [HsPatSigType pass]
- docDeclDoc :: DocDecl pass -> LHsDoc pass
- hsGroupInstDecls :: HsGroup id -> [LInstDecl id]
- isClassDecl :: TyClDecl pass -> Bool
- isClosedTypeFamilyInfo :: FamilyInfo pass -> Bool
- isDataDecl :: TyClDecl pass -> Bool
- isDataFamilyDecl :: TyClDecl pass -> Bool
- isFamilyDecl :: TyClDecl pass -> Bool
- isOpenTypeFamilyInfo :: FamilyInfo pass -> Bool
- isSynDecl :: TyClDecl pass -> Bool
- isTypeFamilyDecl :: TyClDecl pass -> Bool
- tyClDeclTyVars :: TyClDecl pass -> LHsQTyVars pass
- tyClGroupInstDecls :: [TyClGroup pass] -> [LInstDecl pass]
- tyClGroupKindSigs :: [TyClGroup pass] -> [LStandaloneKindSig pass]
- tyClGroupRoleDecls :: [TyClGroup pass] -> [LRoleAnnotDecl pass]
- tyClGroupTyClDecls :: [TyClGroup pass] -> [LTyClDecl pass]
- class UnXRec p => CollectPass p where
  - collectXXPat :: CollectFlag p -> XXPat p -> [IdP p] -> [IdP p]
  - collectXXHsBindsLR :: XXHsBindsLR p pR -> [IdP p] -> [IdP p]
  - collectXSplicePat :: CollectFlag p -> XSplicePat p -> [IdP p] -> [IdP p]
- data CollectFlag p where
  - CollNoDictBinders :: forall p. CollectFlag p
  - CollWithDictBinders :: CollectFlag (GhcPass 'Typechecked)
- mkHsAppKindTy :: forall (p :: Pass). XAppKindTy (GhcPass p) -> LHsType (GhcPass p) -> LHsType (GhcPass p) -> LHsType (GhcPass p)
- mkHsAppTy :: forall (p :: Pass). LHsType (GhcPass p) -> LHsType (GhcPass p) -> LHsType (GhcPass p)
- collectHsBindBinders :: CollectPass p => CollectFlag p -> HsBindLR p idR -> [IdP p]
- collectHsBindListBinders :: CollectPass p => CollectFlag p -> [LHsBindLR p idR] -> [IdP p]
- collectHsIdBinders :: forall (idL :: Pass) (idR :: Pass). CollectPass (GhcPass idL) => CollectFlag (GhcPass idL) -> HsValBindsLR (GhcPass idL) (GhcPass idR) -> [IdP (GhcPass idL)]
- collectHsValBinders :: forall (idL :: Pass) idR. CollectPass (GhcPass idL) => CollectFlag (GhcPass idL) -> HsValBindsLR (GhcPass idL) idR -> [IdP (GhcPass idL)]
- collectLStmtBinders :: forall (idL :: Pass) (idR :: Pass) body. CollectPass (GhcPass idL) => CollectFlag (GhcPass idL) -> LStmtLR (GhcPass idL) (GhcPass idR) body -> [IdP (GhcPass idL)]
- collectLStmtsBinders :: forall (idL :: Pass) (idR :: Pass) body. CollectPass (GhcPass idL) => CollectFlag (GhcPass idL) -> [LStmtLR (GhcPass idL) (GhcPass idR) body] -> [IdP (GhcPass idL)]
- collectLocalBinders :: forall (idL :: Pass) (idR :: Pass). CollectPass (GhcPass idL) => CollectFlag (GhcPass idL) -> HsLocalBindsLR (GhcPass idL) (GhcPass idR) -> [IdP (GhcPass idL)]
- collectMethodBinders :: UnXRec idL => LHsBindsLR idL idR -> [LIdP idL]
- collectPatBinders :: CollectPass p => CollectFlag p -> LPat p -> [IdP p]
- collectPatsBinders :: CollectPass p => CollectFlag p -> [LPat p] -> [IdP p]
- collectStmtBinders :: forall (idL :: Pass) (idR :: Pass) body. CollectPass (GhcPass idL) => CollectFlag (GhcPass idL) -> StmtLR (GhcPass idL) (GhcPass idR) body -> [IdP (GhcPass idL)]
- collectStmtsBinders :: forall (idL :: Pass) (idR :: Pass) body. CollectPass (GhcPass idL) => CollectFlag (GhcPass idL) -> [StmtLR (GhcPass idL) (GhcPass idR) body] -> [IdP (GhcPass idL)]
- emptyRecStmt :: forall (idL :: Pass) bodyR. Anno [GenLocated (Anno (StmtLR (GhcPass idL) GhcPs bodyR)) (StmtLR (GhcPass idL) GhcPs bodyR)] ~ SrcSpanAnnL => StmtLR (GhcPass idL) GhcPs bodyR
- emptyRecStmtId :: Stmt GhcTc (LocatedA (HsCmd GhcTc))
- emptyRecStmtName :: Anno [GenLocated (Anno (StmtLR GhcRn GhcRn bodyR)) (StmtLR GhcRn GhcRn bodyR)] ~ SrcSpanAnnL => StmtLR GhcRn GhcRn bodyR
- emptyTransStmt :: EpAnn [AddEpAnn] -> StmtLR GhcPs GhcPs (LHsExpr GhcPs)
- getPatSynBinds :: UnXRec id => [(RecFlag, LHsBinds id)] -> [PatSynBind id id]
- hsDataFamInstBinders :: forall (p :: Pass). IsPass p => DataFamInstDecl (GhcPass p) -> ([LocatedA (IdP (GhcPass p))], [LFieldOcc (GhcPass p)])
- hsForeignDeclsBinders :: forall (p :: Pass) a. (UnXRec (GhcPass p), IsSrcSpanAnn p a) => [LForeignDecl (GhcPass p)] -> [LIdP (GhcPass p)]
- hsGroupBinders :: HsGroup GhcRn -> [Name]
- hsLTyClDeclBinders :: forall (p :: Pass). IsPass p => LocatedA (TyClDecl (GhcPass p)) -> ([LocatedA (IdP (GhcPass p))], [LFieldOcc (GhcPass p)])
- hsPatSynSelectors :: forall (p :: Pass). IsPass p => HsValBinds (GhcPass p) -> [FieldOcc (GhcPass p)]
- hsTyClForeignBinders :: [TyClGroup GhcRn] -> [LForeignDecl GhcRn] -> [Name]
- hsTypeToHsSigType :: LHsType GhcPs -> LHsSigType GhcPs
- hsTypeToHsSigWcType :: LHsType GhcPs -> LHsSigWcType GhcPs
- hsValBindsImplicits :: forall (idR :: Pass). HsValBindsLR GhcRn (GhcPass idR) -> [(SrcSpan, [Name])]
- isBangedHsBind :: HsBind GhcTc -> Bool
- isInfixFunBind :: forall id1 id2. UnXRec id2 => HsBindLR id1 id2 -> Bool
- isUnliftedHsBind :: HsBind GhcTc -> Bool
- lPatImplicits :: LPat GhcRn -> [(SrcSpan, [Name])]
- lStmtsImplicits :: forall (idR :: Pass) (body :: Type -> Type). [LStmtLR GhcRn (GhcPass idR) (LocatedA (body (GhcPass idR)))] -> [(SrcSpan, [Name])]
- missingTupArg :: EpAnn EpaLocation -> HsTupArg GhcPs
- mkBigLHsPatTup :: [LPat GhcRn] -> LPat GhcRn
- mkBigLHsTup :: forall (id :: Pass). [LHsExpr (GhcPass id)] -> XExplicitTuple (GhcPass id) -> LHsExpr (GhcPass id)
- mkBigLHsVarPatTup :: [IdP GhcRn] -> LPat GhcRn
- mkBigLHsVarTup :: forall (p :: Pass) a. IsSrcSpanAnn p a => [IdP (GhcPass p)] -> XExplicitTuple (GhcPass p) -> LHsExpr (GhcPass p)
- mkBodyStmt :: forall bodyR (idL :: Pass). LocatedA (bodyR GhcPs) -> StmtLR (GhcPass idL) GhcPs (LocatedA (bodyR GhcPs))
- mkClassOpSigs :: [LSig GhcPs] -> [LSig GhcPs]
- mkConLikeTc :: ConLike -> HsExpr GhcTc
- mkFunBind :: Origin -> LocatedN RdrName -> [LMatch GhcPs (LHsExpr GhcPs)] -> HsBind GhcPs
- mkGroupByUsingStmt :: EpAnn [AddEpAnn] -> [ExprLStmt GhcPs] -> LHsExpr GhcPs -> LHsExpr GhcPs -> StmtLR GhcPs GhcPs (LHsExpr GhcPs)
- mkGroupUsingStmt :: EpAnn [AddEpAnn] -> [ExprLStmt GhcPs] -> LHsExpr GhcPs -> StmtLR GhcPs GhcPs (LHsExpr GhcPs)
- mkHsApp :: forall (id :: Pass). LHsExpr (GhcPass id) -> LHsExpr (GhcPass id) -> LHsExpr (GhcPass id)
- mkHsAppType :: LHsExpr GhcRn -> LHsWcType GhcRn -> LHsExpr GhcRn
- mkHsAppTypes :: LHsExpr GhcRn -> [LHsWcType GhcRn] -> LHsExpr GhcRn
- mkHsAppWith :: forall (id :: Pass). (LHsExpr (GhcPass id) -> LHsExpr (GhcPass id) -> HsExpr (GhcPass id) -> LHsExpr (GhcPass id)) -> LHsExpr (GhcPass id) -> LHsExpr (GhcPass id) -> LHsExpr (GhcPass id)
- mkHsApps :: forall (id :: Pass). LHsExpr (GhcPass id) -> [LHsExpr (GhcPass id)] -> LHsExpr (GhcPass id)
- mkHsAppsWith :: forall (id :: Pass). (LHsExpr (GhcPass id) -> LHsExpr (GhcPass id) -> HsExpr (GhcPass id) -> LHsExpr (GhcPass id)) -> LHsExpr (GhcPass id) -> [LHsExpr (GhcPass id)] -> LHsExpr (GhcPass id)
- mkHsCaseAlt :: forall (p :: Pass) body. (Anno (GRHS (GhcPass p) (LocatedA (body (GhcPass p)))) ~ SrcAnn NoEpAnns, Anno (Match (GhcPass p) (LocatedA (body (GhcPass p)))) ~ SrcSpanAnnA) => LPat (GhcPass p) -> LocatedA (body (GhcPass p)) -> LMatch (GhcPass p) (LocatedA (body (GhcPass p)))
- mkHsCharPrimLit :: forall (p :: Pass). Char -> HsLit (GhcPass p)
- mkHsCmdIf :: LHsExpr GhcPs -> LHsCmd GhcPs -> LHsCmd GhcPs -> EpAnn AnnsIf -> HsCmd GhcPs
- mkHsCmdWrap :: HsWrapper -> HsCmd GhcTc -> HsCmd GhcTc
- mkHsComp :: HsDoFlavour -> [ExprLStmt GhcPs] -> LHsExpr GhcPs -> HsExpr GhcPs
- mkHsCompAnns :: HsDoFlavour -> [ExprLStmt GhcPs] -> LHsExpr GhcPs -> EpAnn AnnList -> HsExpr GhcPs
- mkHsDictLet :: TcEvBinds -> LHsExpr GhcTc -> LHsExpr GhcTc
- mkHsDo :: HsDoFlavour -> LocatedL [ExprLStmt GhcPs] -> HsExpr GhcPs
- mkHsDoAnns :: HsDoFlavour -> LocatedL [ExprLStmt GhcPs] -> EpAnn AnnList -> HsExpr GhcPs
- mkHsFractional :: FractionalLit -> HsOverLit GhcPs
- mkHsIf :: LHsExpr GhcPs -> LHsExpr GhcPs -> LHsExpr GhcPs -> EpAnn AnnsIf -> HsExpr GhcPs
- mkHsIntegral :: IntegralLit -> HsOverLit GhcPs
- mkHsIsString :: SourceText -> FastString -> HsOverLit GhcPs
- mkHsLam :: forall (p :: Pass). (IsPass p, XMG (GhcPass p) (LHsExpr (GhcPass p)) ~ Origin) => [LPat (GhcPass p)] -> LHsExpr (GhcPass p) -> LHsExpr (GhcPass p)
- mkHsLams :: [TyVar] -> [EvVar] -> LHsExpr GhcTc -> LHsExpr GhcTc
- mkHsOpApp :: LHsExpr GhcPs -> IdP GhcPs -> LHsExpr GhcPs -> HsExpr GhcPs
- mkHsPar :: forall (id :: Pass). LHsExpr (GhcPass id) -> LHsExpr (GhcPass id)
- mkHsSigEnv :: (LSig GhcRn -> Maybe ([LocatedN Name], a)) -> [LSig GhcRn] -> NameEnv a
- mkHsString :: forall (p :: Pass). String -> HsLit (GhcPass p)
- mkHsStringFS :: forall (p :: Pass). FastString -> HsLit (GhcPass p)
- mkHsStringPrimLit :: forall (p :: Pass). FastString -> HsLit (GhcPass p)
- mkHsVarBind :: SrcSpan -> RdrName -> LHsExpr GhcPs -> LHsBind GhcPs
- mkHsWrap :: HsWrapper -> HsExpr GhcTc -> HsExpr GhcTc
- mkHsWrapCo :: TcCoercionN -> HsExpr GhcTc -> HsExpr GhcTc
- mkHsWrapCoR :: TcCoercionR -> HsExpr GhcTc -> HsExpr GhcTc
- mkHsWrapPat :: HsWrapper -> Pat GhcTc -> Type -> Pat GhcTc
- mkHsWrapPatCo :: TcCoercionN -> Pat GhcTc -> Type -> Pat GhcTc
- mkLHsCmdWrap :: HsWrapper -> LHsCmd GhcTc -> LHsCmd GhcTc
- mkLHsPar :: forall (id :: Pass). IsPass id => LHsExpr (GhcPass id) -> LHsExpr (GhcPass id)
- mkLHsTupleExpr :: forall (p :: Pass). [LHsExpr (GhcPass p)] -> XExplicitTuple (GhcPass p) -> LHsExpr (GhcPass p)
- mkLHsVarTuple :: forall (p :: Pass) a. IsSrcSpanAnn p a => [IdP (GhcPass p)] -> XExplicitTuple (GhcPass p) -> LHsExpr (GhcPass p)
- mkLHsWrap :: HsWrapper -> LHsExpr GhcTc -> LHsExpr GhcTc
- mkLHsWrapCo :: TcCoercionN -> LHsExpr GhcTc -> LHsExpr GhcTc
- mkLamCaseMatchGroup :: forall (p :: Pass) body. AnnoBody p body => Origin -> LamCaseVariant -> LocatedL [LocatedA (Match (GhcPass p) (LocatedA (body (GhcPass p))))] -> MatchGroup (GhcPass p) (LocatedA (body (GhcPass p)))
- mkLastStmt :: forall (idR :: Pass) bodyR (idL :: Pass). IsPass idR => LocatedA (bodyR (GhcPass idR)) -> StmtLR (GhcPass idL) (GhcPass idR) (LocatedA (bodyR (GhcPass idR)))
- mkLetStmt :: EpAnn [AddEpAnn] -> HsLocalBinds GhcPs -> StmtLR GhcPs GhcPs (LocatedA b)
- mkLocatedList :: Semigroup a => [GenLocated (SrcAnn a) e2] -> LocatedAn an [GenLocated (SrcAnn a) e2]
- mkMatch :: forall (p :: Pass). IsPass p => HsMatchContext (GhcPass p) -> [LPat (GhcPass p)] -> LHsExpr (GhcPass p) -> HsLocalBinds (GhcPass p) -> LMatch (GhcPass p) (LHsExpr (GhcPass p))
- mkMatchGroup :: forall (p :: Pass) body. AnnoBody p body => Origin -> LocatedL [LocatedA (Match (GhcPass p) (LocatedA (body (GhcPass p))))] -> MatchGroup (GhcPass p) (LocatedA (body (GhcPass p)))
- mkNPat :: LocatedAn NoEpAnns (HsOverLit GhcPs) -> Maybe (SyntaxExpr GhcPs) -> EpAnn [AddEpAnn] -> Pat GhcPs
- mkNPlusKPat :: LocatedN RdrName -> LocatedAn NoEpAnns (HsOverLit GhcPs) -> EpAnn EpaLocation -> Pat GhcPs
- mkParPat :: forall (p :: Pass). IsPass p => LPat (GhcPass p) -> LPat (GhcPass p)
- mkPatSynBind :: LocatedN RdrName -> HsPatSynDetails GhcPs -> LPat GhcPs -> HsPatSynDir GhcPs -> EpAnn [AddEpAnn] -> HsBind GhcPs
- mkPrefixFunRhs :: LIdP (NoGhcTc p) -> HsMatchContext p
- mkPsBindStmt :: EpAnn [AddEpAnn] -> LPat GhcPs -> LocatedA (bodyR GhcPs) -> StmtLR GhcPs GhcPs (LocatedA (bodyR GhcPs))
- mkRecStmt :: forall (idL :: Pass) bodyR. Anno [GenLocated (Anno (StmtLR (GhcPass idL) GhcPs bodyR)) (StmtLR (GhcPass idL) GhcPs bodyR)] ~ SrcSpanAnnL => EpAnn AnnList -> LocatedL [LStmtLR (GhcPass idL) GhcPs bodyR] -> StmtLR (GhcPass idL) GhcPs bodyR
- mkRnBindStmt :: LPat GhcRn -> LocatedA (bodyR GhcRn) -> StmtLR GhcRn GhcRn (LocatedA (bodyR GhcRn))
- mkSimpleGeneratedFunBind :: SrcSpan -> RdrName -> [LPat GhcPs] -> LHsExpr GhcPs -> LHsBind GhcPs
- mkSimpleMatch :: forall (p :: Pass) body. (Anno (Match (GhcPass p) (LocatedA (body (GhcPass p)))) ~ SrcSpanAnnA, Anno (GRHS (GhcPass p) (LocatedA (body (GhcPass p)))) ~ SrcAnn NoEpAnns) => HsMatchContext (GhcPass p) -> [LPat (GhcPass p)] -> LocatedA (body (GhcPass p)) -> LMatch (GhcPass p) (LocatedA (body (GhcPass p)))
- mkTcBindStmt :: LPat GhcTc -> LocatedA (bodyR GhcTc) -> StmtLR GhcTc GhcTc (LocatedA (bodyR GhcTc))
- mkTopFunBind :: Origin -> LocatedN Name -> [LMatch GhcRn (LHsExpr GhcRn)] -> HsBind GhcRn
- mkTransformByStmt :: EpAnn [AddEpAnn] -> [ExprLStmt GhcPs] -> LHsExpr GhcPs -> LHsExpr GhcPs -> StmtLR GhcPs GhcPs (LHsExpr GhcPs)
- mkTransformStmt :: EpAnn [AddEpAnn] -> [ExprLStmt GhcPs] -> LHsExpr GhcPs -> StmtLR GhcPs GhcPs (LHsExpr GhcPs)
- mkVarBind :: forall (p :: Pass). IdP (GhcPass p) -> LHsExpr (GhcPass p) -> LHsBind (GhcPass p)
- nlConPat :: RdrName -> [LPat GhcPs] -> LPat GhcPs
- nlConPatName :: Name -> [LPat GhcRn] -> LPat GhcRn
- nlConVarPat :: RdrName -> [RdrName] -> LPat GhcPs
- nlConVarPatName :: Name -> [Name] -> LPat GhcRn
- nlHsApp :: forall (id :: Pass). IsPass id => LHsExpr (GhcPass id) -> LHsExpr (GhcPass id) -> LHsExpr (GhcPass id)
- nlHsAppKindTy :: forall (p :: Pass). LHsType (GhcPass p) -> LHsKind (GhcPass p) -> LHsType (GhcPass p)
- nlHsAppTy :: forall (p :: Pass). LHsType (GhcPass p) -> LHsType (GhcPass p) -> LHsType (GhcPass p)
- nlHsApps :: forall (p :: Pass) a. IsSrcSpanAnn p a => IdP (GhcPass p) -> [LHsExpr (GhcPass p)] -> LHsExpr (GhcPass p)
- nlHsCase :: LHsExpr GhcPs -> [LMatch GhcPs (LHsExpr GhcPs)] -> LHsExpr GhcPs
- nlHsDataCon :: DataCon -> LHsExpr GhcTc
- nlHsDo :: HsDoFlavour -> [LStmt GhcPs (LHsExpr GhcPs)] -> LHsExpr GhcPs
- nlHsFunTy :: forall (p :: Pass). LHsType (GhcPass p) -> LHsType (GhcPass p) -> LHsType (GhcPass p)
- nlHsIf :: LHsExpr GhcPs -> LHsExpr GhcPs -> LHsExpr GhcPs -> LHsExpr GhcPs
- nlHsIntLit :: forall (p :: Pass). Integer -> LHsExpr (GhcPass p)
- nlHsLam :: LMatch GhcPs (LHsExpr GhcPs) -> LHsExpr GhcPs
- nlHsLit :: forall (p :: Pass). HsLit (GhcPass p) -> LHsExpr (GhcPass p)
- nlHsOpApp :: LHsExpr GhcPs -> IdP GhcPs -> LHsExpr GhcPs -> LHsExpr GhcPs
- nlHsPar :: forall (id :: Pass). LHsExpr (GhcPass id) -> LHsExpr (GhcPass id)
- nlHsParTy :: forall (p :: Pass). LHsType (GhcPass p) -> LHsType (GhcPass p)
- nlHsSyntaxApps :: SyntaxExprTc -> [LHsExpr GhcTc] -> LHsExpr GhcTc
- nlHsTyApp :: Id -> [Type] -> LHsExpr GhcTc
- nlHsTyApps :: Id -> [Type] -> [LHsExpr GhcTc] -> LHsExpr GhcTc
- nlHsTyConApp :: forall (p :: Pass) a. IsSrcSpanAnn p a => PromotionFlag -> LexicalFixity -> IdP (GhcPass p) -> [LHsTypeArg (GhcPass p)] -> LHsType (GhcPass p)
- nlHsTyVar :: forall (p :: Pass) a. IsSrcSpanAnn p a => PromotionFlag -> IdP (GhcPass p) -> LHsType (GhcPass p)
- nlHsVar :: forall (p :: Pass) a. IsSrcSpanAnn p a => IdP (GhcPass p) -> LHsExpr (GhcPass p)
- nlHsVarApps :: forall (p :: Pass) a. IsSrcSpanAnn p a => IdP (GhcPass p) -> [IdP (GhcPass p)] -> LHsExpr (GhcPass p)
- nlInfixConPat :: RdrName -> LPat GhcPs -> LPat GhcPs -> LPat GhcPs
- nlList :: [LHsExpr GhcPs] -> LHsExpr GhcPs
- nlLitPat :: HsLit GhcPs -> LPat GhcPs
- nlNullaryConPat :: RdrName -> LPat GhcPs
- nlParPat :: forall (name :: Pass). LPat (GhcPass name) -> LPat (GhcPass name)
- nlTuplePat :: [LPat GhcPs] -> Boxity -> LPat GhcPs
- nlVarPat :: forall (p :: Pass) a. IsSrcSpanAnn p a => IdP (GhcPass p) -> LPat (GhcPass p)
- nlWildConPat :: DataCon -> LPat GhcPs
- nlWildPat :: LPat GhcPs
- nlWildPatName :: LPat GhcRn
- nl_HsVar :: forall (p :: Pass) a. IsSrcSpanAnn p a => IdP (GhcPass p) -> HsExpr (GhcPass p)
- spanHsLocaLBinds :: forall (p :: Pass). HsLocalBinds (GhcPass p) -> SrcSpan
- unguardedGRHSs :: forall (p :: Pass) body. Anno (GRHS (GhcPass p) (LocatedA (body (GhcPass p)))) ~ SrcAnn NoEpAnns => SrcSpan -> LocatedA (body (GhcPass p)) -> EpAnn GrhsAnn -> GRHSs (GhcPass p) (LocatedA (body (GhcPass p)))
- unguardedRHS :: forall (p :: Pass) body. Anno (GRHS (GhcPass p) (LocatedA (body (GhcPass p)))) ~ SrcAnn NoEpAnns => EpAnn GrhsAnn -> SrcSpan -> LocatedA (body (GhcPass p)) -> [LGRHS (GhcPass p) (LocatedA (body (GhcPass p)))]
- unitRecStmtTc :: RecStmtTc
- data DerivStrategy pass
  - = StockStrategy (XStockStrategy pass)
  - | AnyclassStrategy (XAnyClassStrategy pass)
  - | NewtypeStrategy (XNewtypeStrategy pass)
  - | ViaStrategy (XViaStrategy pass)
- data InjectivityAnn pass
  - = InjectivityAnn (XCInjectivityAnn pass) (LIdP pass) [LIdP pass]
  - | XInjectivityAnn !(XXInjectivityAnn pass)
- data RuleBndr pass
  - = RuleBndr (XCRuleBndr pass) (LIdP pass)
  - | RuleBndrSig (XRuleBndrSig pass) (LIdP pass) (HsPatSigType pass)
  - | XRuleBndr !(XXRuleBndr pass)
- type BangType pass = HsType pass
- type Stmt id body = StmtLR id id body
- data Match p body
  - = Match {
    - m_ext :: XCMatch p body
    - m_ctxt :: HsMatchContext p
    - m_pats :: [LPat p]
    - m_grhss :: GRHSs p body
    }
  - | XMatch !(XXMatch p body)
- data Pat p
  - = WildPat (XWildPat p)
  - | VarPat (XVarPat p) (LIdP p)
  - | LazyPat (XLazyPat p) (LPat p)
  - | AsPat (XAsPat p) (LIdP p) !(LHsToken "@" p) (LPat p)
  - | ParPat (XParPat p) !(LHsToken "(" p) (LPat p) !(LHsToken ")" p)
  - | BangPat (XBangPat p) (LPat p)
  - | ListPat (XListPat p) [LPat p]
  - | TuplePat (XTuplePat p) [LPat p] Boxity
  - | SumPat (XSumPat p) (LPat p) ConTag SumWidth
  - | ConPat {
    - pat_con_ext :: XConPat p
    - pat_con :: XRec p (ConLikeP p)
    - pat_args :: HsConPatDetails p
    }
  - | ViewPat (XViewPat p) (LHsExpr p) (LPat p)
  - | SplicePat (XSplicePat p) (HsUntypedSplice p)
  - | LitPat (XLitPat p) (HsLit p)
  - | NPat (XNPat p) (XRec p (HsOverLit p)) (Maybe (SyntaxExpr p)) (SyntaxExpr p)
  - | NPlusKPat (XNPlusKPat p) (LIdP p) (XRec p (HsOverLit p)) (HsOverLit p) (SyntaxExpr p) (SyntaxExpr p)
  - | SigPat (XSigPat p) (LPat p) (HsPatSigType (NoGhcTc p))
  - | XPat !(XXPat p)
- newtype ModuleName = ModuleName FastString
- data IsBootInterface
  - = NotBoot
  - | IsBoot
- data HsModule p
  - = HsModule {
    - hsmodExt :: XCModule p
    - hsmodName :: Maybe (XRec p ModuleName)
    - hsmodExports :: Maybe (XRec p [LIE p])
    - hsmodImports :: [LImportDecl p]
    - hsmodDecls :: [LHsDecl p]
    }
  - | XModule !(XXModule p)
- type family Anno a = (b :: Type)
- data FamilyResultSig pass
  - = NoSig (XNoSig pass)
  - | KindSig (XCKindSig pass) (LHsKind pass)
  - | TyVarSig (XTyVarSig pass) (LHsTyVarBndr () pass)
  - | XFamilyResultSig !(XXFamilyResultSig pass)
- type family ConLikeP x
- type HsConPatDetails p = HsConDetails (HsConPatTyArg (NoGhcTc p)) (LPat p) (HsRecFields p (LPat p))
- type family XRec p a = (r :: Type) | r -> a
- data HsBindLR idL idR
  - = FunBind {
    - fun_ext :: XFunBind idL idR
    - fun_id :: LIdP idL
    - fun_matches :: MatchGroup idR (LHsExpr idR)
    }
  - | PatBind {
    - pat_ext :: XPatBind idL idR
    - pat_lhs :: LPat idL
    - pat_rhs :: GRHSs idR (LHsExpr idR)
    }
  - | VarBind {
    - var_ext :: XVarBind idL idR
    - var_id :: IdP idL
    - var_rhs :: LHsExpr idR
    }
  - | PatSynBind (XPatSynBind idL idR) (PatSynBind idL idR)
  - | XHsBindsLR !(XXHsBindsLR idL idR)
- type family IdP p
- data HsSrcBang = HsSrcBang SourceText SrcUnpackedness SrcStrictness
- data FixitySig pass
  - = FixitySig (XFixitySig pass) [LIdP pass] Fixity
  - | XFixitySig !(XXFixitySig pass)
- type HsBind id = HsBindLR id id
- data HsIPBinds id
  - = IPBinds (XIPBinds id) [LIPBind id]
  - | XHsIPBinds !(XXHsIPBinds id)
- type HsLocalBinds id = HsLocalBindsLR id id
- data HsLocalBindsLR idL idR
  - = HsValBinds (XHsValBinds idL idR) (HsValBindsLR idL idR)
  - | HsIPBinds (XHsIPBinds idL idR) (HsIPBinds idR)
  - | EmptyLocalBinds (XEmptyLocalBinds idL idR)
  - | XHsLocalBindsLR !(XXHsLocalBindsLR idL idR)
- type HsPatSynDetails pass = HsConDetails Void (LIdP pass) [RecordPatSynField pass]
- data HsPatSynDir id
  - = Unidirectional
  - | ImplicitBidirectional
  - | ExplicitBidirectional (MatchGroup id (LHsExpr id))
- type HsValBinds id = HsValBindsLR id id
- data HsValBindsLR idL idR
  - = ValBinds (XValBinds idL idR) (LHsBindsLR idL idR) [LSig idR]
  - | XValBindsLR !(XXValBindsLR idL idR)
- data IPBind id
  - = IPBind (XCIPBind id) (XRec id HsIPName) (LHsExpr id)
  - | XIPBind !(XXIPBind id)
- type LFixitySig pass = XRec pass (FixitySig pass)
- type LHsBind id = LHsBindLR id id
- type LHsBindLR idL idR = XRec idL (HsBindLR idL idR)
- type LHsBinds id = LHsBindsLR id id
- type LHsBindsLR idL idR = Bag (LHsBindLR idL idR)
- type LHsLocalBinds id = XRec id (HsLocalBinds id)
- type LHsLocalBindsLR idL idR = XRec idL (HsLocalBindsLR idL idR)
- type LIPBind id = XRec id (IPBind id)
- type LSig pass = XRec pass (Sig pass)
- data PatSynBind idL idR
  - = PSB {
    - psb_ext :: XPSB idL idR
    - psb_id :: LIdP idL
    - psb_args :: HsPatSynDetails idR
    - psb_def :: LPat idR
    - psb_dir :: HsPatSynDir idR
    }
  - | XPatSynBind !(XXPatSynBind idL idR)
- data RecordPatSynField pass = RecordPatSynField {
  - recordPatSynField :: FieldOcc pass
  - recordPatSynPatVar :: LIdP pass
  }
- data Sig pass
  - = TypeSig (XTypeSig pass) [LIdP pass] (LHsSigWcType pass)
  - | PatSynSig (XPatSynSig pass) [LIdP pass] (LHsSigType pass)
  - | ClassOpSig (XClassOpSig pass) Bool [LIdP pass] (LHsSigType pass)
  - | FixSig (XFixSig pass) (FixitySig pass)
  - | InlineSig (XInlineSig pass) (LIdP pass) InlinePragma
  - | SpecSig (XSpecSig pass) (LIdP pass) [LHsSigType pass] InlinePragma
  - | SpecInstSig (XSpecInstSig pass) (LHsSigType pass)
  - | MinimalSig (XMinimalSig pass) (LBooleanFormula (LIdP pass))
  - | SCCFunSig (XSCCFunSig pass) (LIdP pass) (Maybe (XRec pass StringLiteral))
  - | CompleteMatchSig (XCompleteMatchSig pass) (XRec pass [LIdP pass]) (Maybe (LIdP pass))
  - | XSig !(XXSig pass)
- type family XFixitySig x
- type family XHsIPBinds x x'
- type family XPatSynBind x x'
- data HsToken (tok :: Symbol) = HsTok
- data HsUniToken (tok :: Symbol) (utok :: Symbol)
  - = HsNormalTok
  - | HsUnicodeTok
- type LHsToken (tok :: Symbol) p = XRec p (HsToken tok)
- type LHsUniToken (tok :: Symbol) (utok :: Symbol) p = XRec p (HsUniToken tok utok)
- data LayoutInfo pass
  - = ExplicitBraces !(LHsToken "{" pass) !(LHsToken "}" pass)
  - | VirtualBraces !Int
  - | NoLayoutInfo
- data AnnDecl pass
  - = HsAnnotation (XHsAnnotation pass) (AnnProvenance pass) (XRec pass (HsExpr pass))
  - | XAnnDecl !(XXAnnDecl pass)
- data AnnProvenance pass
  - = ValueAnnProvenance (LIdP pass)
  - | TypeAnnProvenance (LIdP pass)
  - | ModuleAnnProvenance
- data CImportSpec
  - = CLabel CLabelString
  - | CFunction CCallTarget
  - | CWrapper
- data ClsInstDecl pass
  - = ClsInstDecl {
    - cid_ext :: XCClsInstDecl pass
    - cid_poly_ty :: LHsSigType pass
    - cid_binds :: LHsBinds pass
    - cid_sigs :: [LSig pass]
    - cid_tyfam_insts :: [LTyFamInstDecl pass]
    - cid_datafam_insts :: [LDataFamInstDecl pass]
    - cid_overlap_mode :: Maybe (XRec pass OverlapMode)
    }
  - | XClsInstDecl !(XXClsInstDecl pass)
- data ConDecl pass
  - = ConDeclGADT {
    - con_g_ext :: XConDeclGADT pass
    - con_names :: NonEmpty (LIdP pass)
    - con_dcolon :: !(LHsUniToken "::" "\8759" pass)
    - con_bndrs :: XRec pass (HsOuterSigTyVarBndrs pass)
    - con_mb_cxt :: Maybe (LHsContext pass)
    - con_g_args :: HsConDeclGADTDetails pass
    - con_res_ty :: LHsType pass
    - con_doc :: Maybe (LHsDoc pass)
    }
  - | ConDeclH98 {
    - con_ext :: XConDeclH98 pass
    - con_name :: LIdP pass
    - con_forall :: Bool
    - con_ex_tvs :: [LHsTyVarBndr Specificity pass]
    - con_mb_cxt :: Maybe (LHsContext pass)
    - con_args :: HsConDeclH98Details pass
    - con_doc :: Maybe (LHsDoc pass)
    }
  - | XConDecl !(XXConDecl pass)
- data DataDefnCons a
  - = NewTypeCon a
  - | DataTypeCons Bool [a]
- newtype DataFamInstDecl pass = DataFamInstDecl {
  - dfid_eqn :: FamEqn pass (HsDataDefn pass)
  }
- data DefaultDecl pass
  - = DefaultDecl (XCDefaultDecl pass) [LHsType pass]
  - | XDefaultDecl !(XXDefaultDecl pass)
- data DerivClauseTys pass
  - = DctSingle (XDctSingle pass) (LHsSigType pass)
  - | DctMulti (XDctMulti pass) [LHsSigType pass]
  - | XDerivClauseTys !(XXDerivClauseTys pass)
- data DerivDecl pass
  - = DerivDecl {
    - deriv_ext :: XCDerivDecl pass
    - deriv_type :: LHsSigWcType pass
    - deriv_strategy :: Maybe (LDerivStrategy pass)
    - deriv_overlap_mode :: Maybe (XRec pass OverlapMode)
    }
  - | XDerivDecl !(XXDerivDecl pass)
- data DocDecl pass
  - = DocCommentNext (LHsDoc pass)
  - | DocCommentPrev (LHsDoc pass)
  - | DocCommentNamed String (LHsDoc pass)
  - | DocGroup Int (LHsDoc pass)
- data FamEqn pass rhs
  - = FamEqn {
    - feqn_ext :: XCFamEqn pass rhs
    - feqn_tycon :: LIdP pass
    - feqn_bndrs :: HsOuterFamEqnTyVarBndrs pass
    - feqn_pats :: HsTyPats pass
    - feqn_fixity :: LexicalFixity
    - feqn_rhs :: rhs
    }
  - | XFamEqn !(XXFamEqn pass rhs)
- data FamilyDecl pass
  - = FamilyDecl {
    - fdExt :: XCFamilyDecl pass
    - fdInfo :: FamilyInfo pass
    - fdTopLevel :: TopLevelFlag
    - fdLName :: LIdP pass
    - fdTyVars :: LHsQTyVars pass
    - fdFixity :: LexicalFixity
    - fdResultSig :: LFamilyResultSig pass
    - fdInjectivityAnn :: Maybe (LInjectivityAnn pass)
    }
  - | XFamilyDecl !(XXFamilyDecl pass)
- data FamilyInfo pass
  - = DataFamily
  - | OpenTypeFamily
  - | ClosedTypeFamily (Maybe [LTyFamInstEqn pass])
- data ForeignDecl pass
  - = ForeignImport {
    - fd_i_ext :: XForeignImport pass
    - fd_name :: LIdP pass
    - fd_sig_ty :: LHsSigType pass
    - fd_fi :: ForeignImport pass
    }
  - | ForeignExport {
    - fd_e_ext :: XForeignExport pass
    - fd_name :: LIdP pass
    - fd_sig_ty :: LHsSigType pass
    - fd_fe :: ForeignExport pass
    }
  - | XForeignDecl !(XXForeignDecl pass)
- data ForeignExport pass
  - = CExport (XCExport pass) (XRec pass CExportSpec)
  - | XForeignExport !(XXForeignExport pass)
- data ForeignImport pass
  - = CImport (XCImport pass) (XRec pass CCallConv) (XRec pass Safety) (Maybe Header) CImportSpec
  - | XForeignImport !(XXForeignImport pass)
- data HsConDeclGADTDetails pass
  - = PrefixConGADT [HsScaled pass (LBangType pass)]
  - | RecConGADT (XRec pass [LConDeclField pass]) (LHsUniToken "->" "\8594" pass)
- type HsConDeclH98Details pass = HsConDetails Void (HsScaled pass (LBangType pass)) (XRec pass [LConDeclField pass])
- data HsDataDefn pass
  - = HsDataDefn {
    - dd_ext :: XCHsDataDefn pass
    - dd_ctxt :: Maybe (LHsContext pass)
    - dd_cType :: Maybe (XRec pass CType)
    - dd_kindSig :: Maybe (LHsKind pass)
    - dd_cons :: DataDefnCons (LConDecl pass)
    - dd_derivs :: HsDeriving pass
    }
  - | XHsDataDefn !(XXHsDataDefn pass)
- data HsDecl p
  - = TyClD (XTyClD p) (TyClDecl p)
  - | InstD (XInstD p) (InstDecl p)
  - | DerivD (XDerivD p) (DerivDecl p)
  - | ValD (XValD p) (HsBind p)
  - | SigD (XSigD p) (Sig p)
  - | KindSigD (XKindSigD p) (StandaloneKindSig p)
  - | DefD (XDefD p) (DefaultDecl p)
  - | ForD (XForD p) (ForeignDecl p)
  - | WarningD (XWarningD p) (WarnDecls p)
  - | AnnD (XAnnD p) (AnnDecl p)
  - | RuleD (XRuleD p) (RuleDecls p)
  - | SpliceD (XSpliceD p) (SpliceDecl p)
  - | DocD (XDocD p) (DocDecl p)
  - | RoleAnnotD (XRoleAnnotD p) (RoleAnnotDecl p)
  - | XHsDecl !(XXHsDecl p)
- type HsDeriving pass = [LHsDerivingClause pass]
- data HsDerivingClause pass
  - = HsDerivingClause {
    - deriv_clause_ext :: XCHsDerivingClause pass
    - deriv_clause_strategy :: Maybe (LDerivStrategy pass)
    - deriv_clause_tys :: LDerivClauseTys pass
    }
  - | XHsDerivingClause !(XXHsDerivingClause pass)
- data HsGroup p
  - = HsGroup {
    - hs_ext :: XCHsGroup p
    - hs_valds :: HsValBinds p
    - hs_splcds :: [LSpliceDecl p]
    - hs_tyclds :: [TyClGroup p]
    - hs_derivds :: [LDerivDecl p]
    - hs_fixds :: [LFixitySig p]
    - hs_defds :: [LDefaultDecl p]
    - hs_fords :: [LForeignDecl p]
    - hs_warnds :: [LWarnDecls p]
    - hs_annds :: [LAnnDecl p]
    - hs_ruleds :: [LRuleDecls p]
    - hs_docs :: [LDocDecl p]
    }
  - | XHsGroup !(XXHsGroup p)
- type HsTyPats pass = [LHsTypeArg pass]
- data InstDecl pass
  - = ClsInstD {
    - cid_d_ext :: XClsInstD pass
    - cid_inst :: ClsInstDecl pass
    }
  - | DataFamInstD {
    - dfid_ext :: XDataFamInstD pass
    - dfid_inst :: DataFamInstDecl pass
    }
  - | TyFamInstD {
    - tfid_ext :: XTyFamInstD pass
    - tfid_inst :: TyFamInstDecl pass
    }
  - | XInstDecl !(XXInstDecl pass)
- type LAnnDecl pass = XRec pass (AnnDecl pass)
- type LClsInstDecl pass = XRec pass (ClsInstDecl pass)
- type LConDecl pass = XRec pass (ConDecl pass)
- type LDataFamInstDecl pass = XRec pass (DataFamInstDecl pass)
- type LDefaultDecl pass = XRec pass (DefaultDecl pass)
- type LDerivClauseTys pass = XRec pass (DerivClauseTys pass)
- type LDerivDecl pass = XRec pass (DerivDecl pass)
- type LDerivStrategy pass = XRec pass (DerivStrategy pass)
- type LDocDecl pass = XRec pass (DocDecl pass)
- type LFamilyDecl pass = XRec pass (FamilyDecl pass)
- type LFamilyResultSig pass = XRec pass (FamilyResultSig pass)
- type LForeignDecl pass = XRec pass (ForeignDecl pass)
- type LHsDecl p = XRec p (HsDecl p)
- type LHsDerivingClause pass = XRec pass (HsDerivingClause pass)
- type LHsFunDep pass = XRec pass (FunDep pass)
- type LInjectivityAnn pass = XRec pass (InjectivityAnn pass)
- type LInstDecl pass = XRec pass (InstDecl pass)
- type LRoleAnnotDecl pass = XRec pass (RoleAnnotDecl pass)
- type LRuleBndr pass = XRec pass (RuleBndr pass)
- type LRuleDecl pass = XRec pass (RuleDecl pass)
- type LRuleDecls pass = XRec pass (RuleDecls pass)
- type LSpliceDecl pass = XRec pass (SpliceDecl pass)
- type LStandaloneKindSig pass = XRec pass (StandaloneKindSig pass)
- type LTyClDecl pass = XRec pass (TyClDecl pass)
- type LTyFamDefltDecl pass = XRec pass (TyFamDefltDecl pass)
- type LTyFamInstDecl pass = XRec pass (TyFamInstDecl pass)
- type LTyFamInstEqn pass = XRec pass (TyFamInstEqn pass)
- type LWarnDecl pass = XRec pass (WarnDecl pass)
- type LWarnDecls pass = XRec pass (WarnDecls pass)
- data NewOrData
  - = NewType
  - | DataType
- data RoleAnnotDecl pass
  - = RoleAnnotDecl (XCRoleAnnotDecl pass) (LIdP pass) [XRec pass (Maybe Role)]
  - | XRoleAnnotDecl !(XXRoleAnnotDecl pass)
- data RuleDecl pass
  - = HsRule {
    - rd_ext :: XHsRule pass
    - rd_name :: XRec pass RuleName
    - rd_act :: Activation
    - rd_tyvs :: Maybe [LHsTyVarBndr () (NoGhcTc pass)]
    - rd_tmvs :: [LRuleBndr pass]
    - rd_lhs :: XRec pass (HsExpr pass)
    - rd_rhs :: XRec pass (HsExpr pass)
    }
  - | XRuleDecl !(XXRuleDecl pass)
- data RuleDecls pass
  - = HsRules {
    - rds_ext :: XCRuleDecls pass
    - rds_rules :: [LRuleDecl pass]
    }
  - | XRuleDecls !(XXRuleDecls pass)
- data SpliceDecl p
  - = SpliceDecl (XSpliceDecl p) (XRec p (HsUntypedSplice p)) SpliceDecoration
  - | XSpliceDecl !(XXSpliceDecl p)
- data SpliceDecoration
  - = DollarSplice
  - | BareSplice
- data StandaloneKindSig pass
  - = StandaloneKindSig (XStandaloneKindSig pass) (LIdP pass) (LHsSigType pass)
  - | XStandaloneKindSig !(XXStandaloneKindSig pass)
- data TyClDecl pass
  - = FamDecl {
    - tcdFExt :: XFamDecl pass
    - tcdFam :: FamilyDecl pass
    }
  - | SynDecl {
    - tcdSExt :: XSynDecl pass
    - tcdLName :: LIdP pass
    - tcdTyVars :: LHsQTyVars pass
    - tcdFixity :: LexicalFixity
    - tcdRhs :: LHsType pass
    }
  - | DataDecl {
    - tcdDExt :: XDataDecl pass
    - tcdLName :: LIdP pass
    - tcdTyVars :: LHsQTyVars pass
    - tcdFixity :: LexicalFixity
    - tcdDataDefn :: HsDataDefn pass
    }
  - | ClassDecl {
    - tcdCExt :: XClassDecl pass
    - tcdLayout :: !(LayoutInfo pass)
    - tcdCtxt :: Maybe (LHsContext pass)
    - tcdLName :: LIdP pass
    - tcdTyVars :: LHsQTyVars pass
    - tcdFixity :: LexicalFixity
    - tcdFDs :: [LHsFunDep pass]
    - tcdSigs :: [LSig pass]
    - tcdMeths :: LHsBinds pass
    - tcdATs :: [LFamilyDecl pass]
    - tcdATDefs :: [LTyFamDefltDecl pass]
    - tcdDocs :: [LDocDecl pass]
    }
  - | XTyClDecl !(XXTyClDecl pass)
- data TyClGroup pass
  - = TyClGroup {
    - group_ext :: XCTyClGroup pass
    - group_tyclds :: [LTyClDecl pass]
    - group_roles :: [LRoleAnnotDecl pass]
    - group_kisigs :: [LStandaloneKindSig pass]
    - group_instds :: [LInstDecl pass]
    }
  - | XTyClGroup !(XXTyClGroup pass)
- type TyFamDefltDecl = TyFamInstDecl
- data TyFamInstDecl pass
  - = TyFamInstDecl {
    - tfid_xtn :: XCTyFamInstDecl pass
    - tfid_eqn :: TyFamInstEqn pass
    }
  - | XTyFamInstDecl !(XXTyFamInstDecl pass)
- type TyFamInstEqn pass = FamEqn pass (LHsType pass)
- data WarnDecl pass
  - = Warning (XWarning pass) [LIdP pass] (WarningTxt pass)
  - | XWarnDecl !(XXWarnDecl pass)
- data WarnDecls pass
  - = Warnings {
    - wd_ext :: XWarnings pass
    - wd_warnings :: [LWarnDecl pass]
    }
  - | XWarnDecls !(XXWarnDecls pass)
- type family XForeignExport x
- type family XForeignImport x
- type family XSpliceDecl x
- type family XStandaloneKindSig x
- data ApplicativeArg idL
  - = ApplicativeArgOne {
    - xarg_app_arg_one :: XApplicativeArgOne idL
    - app_arg_pattern :: LPat idL
    - arg_expr :: LHsExpr idL
    - is_body_stmt :: Bool
    }
  - | ApplicativeArgMany {
    - xarg_app_arg_many :: XApplicativeArgMany idL
    - app_stmts :: [ExprLStmt idL]
    - final_expr :: HsExpr idL
    - bv_pattern :: LPat idL
    - stmt_context :: HsDoFlavour
    }
  - | XApplicativeArg !(XXApplicativeArg idL)
- data ArithSeqInfo id
  - = From (LHsExpr id)
  - | FromThen (LHsExpr id) (LHsExpr id)
  - | FromTo (LHsExpr id) (LHsExpr id)
  - | FromThenTo (LHsExpr id) (LHsExpr id) (LHsExpr id)
- type CmdLStmt id = LStmt id (LHsCmd id)
- type CmdStmt id = Stmt id (LHsCmd id)
- data DotFieldOcc p
  - = DotFieldOcc {
    - dfoExt :: XCDotFieldOcc p
    - dfoLabel :: XRec p FieldLabelString
    }
  - | XDotFieldOcc !(XXDotFieldOcc p)
- type ExprLStmt id = LStmt id (LHsExpr id)
- type ExprStmt id = Stmt id (LHsExpr id)
- type FailOperator id = Maybe (SyntaxExpr id)
- newtype FieldLabelStrings p = FieldLabelStrings [XRec p (DotFieldOcc p)]
- data GRHS p body
  - = GRHS (XCGRHS p body) [GuardLStmt p] body
  - | XGRHS !(XXGRHS p body)
- data GRHSs p body
  - = GRHSs {
    - grhssExt :: XCGRHSs p body
    - grhssGRHSs :: [LGRHS p body]
    - grhssLocalBinds :: HsLocalBinds p
    }
  - | XGRHSs !(XXGRHSs p body)
- type GhciLStmt id = LStmt id (LHsExpr id)
- type GhciStmt id = Stmt id (LHsExpr id)
- type GuardLStmt id = LStmt id (LHsExpr id)
- type GuardStmt id = Stmt id (LHsExpr id)
- data HsArrAppType
  - = HsHigherOrderApp
  - | HsFirstOrderApp
- data HsArrowMatchContext
  - = ProcExpr
  - | ArrowCaseAlt
  - | ArrowLamCaseAlt LamCaseVariant
  - | KappaExpr
- data HsCmd id
  - = HsCmdArrApp (XCmdArrApp id) (LHsExpr id) (LHsExpr id) HsArrAppType Bool
  - | HsCmdArrForm (XCmdArrForm id) (LHsExpr id) LexicalFixity (Maybe Fixity) [LHsCmdTop id]
  - | HsCmdApp (XCmdApp id) (LHsCmd id) (LHsExpr id)
  - | HsCmdLam (XCmdLam id) (MatchGroup id (LHsCmd id))
  - | HsCmdPar (XCmdPar id) !(LHsToken "(" id) (LHsCmd id) !(LHsToken ")" id)
  - | HsCmdCase (XCmdCase id) (LHsExpr id) (MatchGroup id (LHsCmd id))
  - | HsCmdLamCase (XCmdLamCase id) LamCaseVariant (MatchGroup id (LHsCmd id))
  - | HsCmdIf (XCmdIf id) (SyntaxExpr id) (LHsExpr id) (LHsCmd id) (LHsCmd id)
  - | HsCmdLet (XCmdLet id) !(LHsToken "let" id) (HsLocalBinds id) !(LHsToken "in" id) (LHsCmd id)
  - | HsCmdDo (XCmdDo id) (XRec id [CmdLStmt id])
  - | XCmd !(XXCmd id)
- data HsCmdTop p
  - = HsCmdTop (XCmdTop p) (LHsCmd p)
  - | XCmdTop !(XXCmdTop p)
- data HsDoFlavour
  - = DoExpr (Maybe ModuleName)
  - | MDoExpr (Maybe ModuleName)
  - | GhciStmtCtxt
  - | ListComp
  - | MonadComp
- data HsExpr p
  - = HsVar (XVar p) (LIdP p)
  - | HsUnboundVar (XUnboundVar p) RdrName
  - | HsRecSel (XRecSel p) (FieldOcc p)
  - | HsOverLabel (XOverLabel p) SourceText FastString
  - | HsIPVar (XIPVar p) HsIPName
  - | HsOverLit (XOverLitE p) (HsOverLit p)
  - | HsLit (XLitE p) (HsLit p)
  - | HsLam (XLam p) (MatchGroup p (LHsExpr p))
  - | HsLamCase (XLamCase p) LamCaseVariant (MatchGroup p (LHsExpr p))
  - | HsApp (XApp p) (LHsExpr p) (LHsExpr p)
  - | HsAppType (XAppTypeE p) (LHsExpr p) !(LHsToken "@" p) (LHsWcType (NoGhcTc p))
  - | OpApp (XOpApp p) (LHsExpr p) (LHsExpr p) (LHsExpr p)
  - | NegApp (XNegApp p) (LHsExpr p) (SyntaxExpr p)
  - | HsPar (XPar p) !(LHsToken "(" p) (LHsExpr p) !(LHsToken ")" p)
  - | SectionL (XSectionL p) (LHsExpr p) (LHsExpr p)
  - | SectionR (XSectionR p) (LHsExpr p) (LHsExpr p)
  - | ExplicitTuple (XExplicitTuple p) [HsTupArg p] Boxity
  - | ExplicitSum (XExplicitSum p) ConTag SumWidth (LHsExpr p)
  - | HsCase (XCase p) (LHsExpr p) (MatchGroup p (LHsExpr p))
  - | HsIf (XIf p) (LHsExpr p) (LHsExpr p) (LHsExpr p)
  - | HsMultiIf (XMultiIf p) [LGRHS p (LHsExpr p)]
  - | HsLet (XLet p) !(LHsToken "let" p) (HsLocalBinds p) !(LHsToken "in" p) (LHsExpr p)
  - | HsDo (XDo p) HsDoFlavour (XRec p [ExprLStmt p])
  - | ExplicitList (XExplicitList p) [LHsExpr p]
  - | RecordCon {
    - rcon_ext :: XRecordCon p
    - rcon_con :: XRec p (ConLikeP p)
    - rcon_flds :: HsRecordBinds p
    }
  - | RecordUpd {
    - rupd_ext :: XRecordUpd p
    - rupd_expr :: LHsExpr p
    - rupd_flds :: Either [LHsRecUpdField p] [LHsRecUpdProj p]
    }
  - | HsGetField {
    - gf_ext :: XGetField p
    - gf_expr :: LHsExpr p
    - gf_field :: XRec p (DotFieldOcc p)
    }
  - | HsProjection {
    - proj_ext :: XProjection p
    - proj_flds :: NonEmpty (XRec p (DotFieldOcc p))
    }
  - | ExprWithTySig (XExprWithTySig p) (LHsExpr p) (LHsSigWcType (NoGhcTc p))
  - | ArithSeq (XArithSeq p) (Maybe (SyntaxExpr p)) (ArithSeqInfo p)
  - | HsTypedBracket (XTypedBracket p) (LHsExpr p)
  - | HsUntypedBracket (XUntypedBracket p) (HsQuote p)
  - | HsTypedSplice (XTypedSplice p) (LHsExpr p)
  - | HsUntypedSplice (XUntypedSplice p) (HsUntypedSplice p)
  - | HsProc (XProc p) (LPat p) (LHsCmdTop p)
  - | HsStatic (XStatic p) (LHsExpr p)
  - | HsPragE (XPragE p) (HsPragE p) (LHsExpr p)
  - | XExpr !(XXExpr p)
- data HsLit x
  - = HsChar (XHsChar x) Char
  - | HsCharPrim (XHsCharPrim x) Char
  - | HsString (XHsString x) FastString
  - | HsStringPrim (XHsStringPrim x) !ByteString
  - | HsInt (XHsInt x) IntegralLit
  - | HsIntPrim (XHsIntPrim x) Integer
  - | HsWordPrim (XHsWordPrim x) Integer
  - | HsInt64Prim (XHsInt64Prim x) Integer
  - | HsWord64Prim (XHsWord64Prim x) Integer
  - | HsInteger (XHsInteger x) Integer Type
  - | HsRat (XHsRat x) FractionalLit Type
  - | HsFloatPrim (XHsFloatPrim x) FractionalLit
  - | HsDoublePrim (XHsDoublePrim x) FractionalLit
  - | XLit !(XXLit x)
- data HsMatchContext p
  - = FunRhs {
    - mc_fun :: LIdP (NoGhcTc p)
    - mc_fixity :: LexicalFixity
    - mc_strictness :: SrcStrictness
    }
  - | LambdaExpr
  - | CaseAlt
  - | LamCaseAlt LamCaseVariant
  - | IfAlt
  - | ArrowMatchCtxt HsArrowMatchContext
  - | PatBindRhs
  - | PatBindGuards
  - | RecUpd
  - | StmtCtxt (HsStmtContext p)
  - | ThPatSplice
  - | ThPatQuote
  - | PatSyn
- data HsOverLit p
  - = OverLit {
    - ol_ext :: XOverLit p
    - ol_val :: OverLitVal
    }
  - | XOverLit !(XXOverLit p)
- data HsPragE p
  - = HsPragSCC (XSCC p) StringLiteral
  - | XHsPragE !(XXPragE p)
- data HsQuote p
  - = ExpBr (XExpBr p) (LHsExpr p)
  - | PatBr (XPatBr p) (LPat p)
  - | DecBrL (XDecBrL p) [LHsDecl p]
  - | DecBrG (XDecBrG p) (HsGroup p)
  - | TypBr (XTypBr p) (LHsType p)
  - | VarBr (XVarBr p) Bool (LIdP p)
  - | XQuote !(XXQuote p)
- type HsRecordBinds p = HsRecFields p (LHsExpr p)
- data HsStmtContext p
  - = HsDoStmt HsDoFlavour
  - | PatGuard (HsMatchContext p)
  - | ParStmtCtxt (HsStmtContext p)
  - | TransStmtCtxt (HsStmtContext p)
  - | ArrowExpr
- data HsTupArg id
  - = Present (XPresent id) (LHsExpr id)
  - | Missing (XMissing id)
  - | XTupArg !(XXTupArg id)
- data HsUntypedSplice id
  - = HsUntypedSpliceExpr (XUntypedSpliceExpr id) (LHsExpr id)
  - | HsQuasiQuote (XQuasiQuote id) (IdP id) (XRec id FastString)
  - | XUntypedSplice !(XXUntypedSplice id)
- type LFieldLabelStrings p = XRec p (FieldLabelStrings p)
- type LGRHS id body = XRec id (GRHS id body)
- type LHsCmd id = XRec id (HsCmd id)
- type LHsCmdTop p = XRec p (HsCmdTop p)
- type LHsExpr p = XRec p (HsExpr p)
- type LHsRecProj p arg = XRec p (RecProj p arg)
- type LHsRecUpdProj p = XRec p (RecUpdProj p)
- type LHsTupArg id = XRec id (HsTupArg id)
- type LMatch id body = XRec id (Match id body)
- type LStmt id body = XRec id (StmtLR id id body)
- type LStmtLR idL idR body = XRec idL (StmtLR idL idR body)
- data LamCaseVariant
  - = LamCase
  - | LamCases
- data MatchGroup p body
  - = MG {
    - mg_ext :: XMG p body
    - mg_alts :: XRec p [LMatch p body]
    }
  - | XMatchGroup !(XXMatchGroup p body)
- data ParStmtBlock idL idR
  - = ParStmtBlock (XParStmtBlock idL idR) [ExprLStmt idL] [IdP idR] (SyntaxExpr idR)
  - | XParStmtBlock !(XXParStmtBlock idL idR)
- type RecProj p arg = HsFieldBind (LFieldLabelStrings p) arg
- type RecUpdProj p = RecProj p (LHsExpr p)
- data StmtLR idL idR body
  - = LastStmt (XLastStmt idL idR body) body (Maybe Bool) (SyntaxExpr idR)
  - | BindStmt (XBindStmt idL idR body) (LPat idL) body
  - | ApplicativeStmt (XApplicativeStmt idL idR body) [(SyntaxExpr idR, ApplicativeArg idL)] (Maybe (SyntaxExpr idR))
  - | BodyStmt (XBodyStmt idL idR body) body (SyntaxExpr idR) (SyntaxExpr idR)
  - | LetStmt (XLetStmt idL idR body) (HsLocalBindsLR idL idR)
  - | ParStmt (XParStmt idL idR body) [ParStmtBlock idL idR] (HsExpr idR) (SyntaxExpr idR)
  - | TransStmt {
    - trS_ext :: XTransStmt idL idR body
    - trS_form :: TransForm
    - trS_stmts :: [ExprLStmt idL]
    - trS_bndrs :: [(IdP idR, IdP idR)]
    - trS_using :: LHsExpr idR
    - trS_by :: Maybe (LHsExpr idR)
    - trS_ret :: SyntaxExpr idR
    - trS_bind :: SyntaxExpr idR
    - trS_fmap :: HsExpr idR
    }
  - | RecStmt {
    - recS_ext :: XRecStmt idL idR body
    - recS_stmts :: XRec idR [LStmtLR idL idR body]
    - recS_later_ids :: [IdP idR]
    - recS_rec_ids :: [IdP idR]
    - recS_bind_fn :: SyntaxExpr idR
    - recS_ret_fn :: SyntaxExpr idR
    - recS_mfix_fn :: SyntaxExpr idR
    }
  - | XStmtLR !(XXStmtLR idL idR body)
- type family SyntaxExpr p
- data TransForm
  - = ThenForm
  - | GroupForm
- type family XCmdTop x
- type family XParStmtBlock x x'
- type family XUntypedSplice x
- data DataConCantHappen
- type family ImportDeclPkgQual x
- type LIdP p = XRec p (IdP p)
- class MapXRec p where
  - mapXRec :: Anno a ~ Anno b => (a -> b) -> XRec p a -> XRec p b
- data NoExtField = NoExtField
- type family NoGhcTc p
- class UnXRec p where
  - unXRec :: XRec p a -> a
- class WrapXRec p a where
  - wrapXRec :: a -> XRec p a
- type family XAmbiguous x
- type family XAnnD x
- type family XAnyClassStrategy x
- type family XApp x
- type family XAppKindTy x
- type family XAppTy x
- type family XAppTypeE x
- type family XApplicativeArgMany x
- type family XApplicativeArgOne x
- type family XApplicativeStmt x x' b
- type family XArithSeq x
- type family XAsPat x
- type family XBangPat x
- type family XBangTy x
- type family XBinTick x
- type family XBindStmt x x' b
- type family XBodyStmt x x' b
- type family XCClsInstDecl x
- type family XCDefaultDecl x
- type family XCDerivDecl x
- type family XCDotFieldOcc x
- type family XCExport x
- type family XCFamEqn x r
- type family XCFamilyDecl x
- type family XCFieldOcc x
- type family XCFunDep x
- type family XCGRHS x b
- type family XCGRHSs x b
- type family XCHsDataDefn x
- type family XCHsDerivingClause x
- type family XCHsGroup x
- type family XCIPBind x
- type family XCImport x
- type family XCImportDecl x
- type family XCInjectivityAnn x
- type family XCKindSig x
- type family XCMatch x b
- type family XCModule x
- type family XCRoleAnnotDecl x
- type family XCRuleBndr x
- type family XCRuleDecls x
- type family XCTyClGroup x
- type family XCTyFamInstDecl x
- type family XCase x
- type family XCharTy x
- type family XClassDecl x
- type family XClassOpSig x
- type family XClsInstD x
- type family XCmdApp x
- type family XCmdArrApp x
- type family XCmdArrForm x
- type family XCmdCase x
- type family XCmdDo x
- type family XCmdIf x
- type family XCmdLam x
- type family XCmdLamCase x
- type family XCmdLet x
- type family XCmdPar x
- type family XCmdWrap x
- type family XCoPat x
- type family XCompleteMatchSig x
- type family XConDeclField x
- type family XConDeclGADT x
- type family XConDeclH98 x
- type family XConPat x
- type family XDataDecl x
- type family XDataFamInstD x
- type family XDctMulti x
- type family XDctSingle x
- type family XDecBrG x
- type family XDecBrL x
- type family XDefD x
- type family XDerivD x
- type family XDo x
- type family XDocD x
- type family XDocTy x
- type family XEmptyLocalBinds x x'
- type family XExpBr x
- type family XExplicitList x
- type family XExplicitListTy x
- type family XExplicitSum x
- type family XExplicitTuple x
- type family XExplicitTupleTy x
- type family XExprWithTySig x
- type family XFamDecl x
- type family XFixSig x
- type family XForAllTy x
- type family XForD x
- type family XFunBind x x'
- type family XFunTy x
- type family XGetField x
- type family XHsAnnotation x
- type family XHsChar x
- type family XHsCharPrim x
- type family XHsDoublePrim x
- type family XHsFieldBind x
- type family XHsFloatPrim x
- type family XHsForAllInvis x
- type family XHsForAllVis x
- type family XHsInt x
- type family XHsInt64Prim x
- type family XHsIntPrim x
- type family XHsInteger x
- type family XHsOuterExplicit x flag
- type family XHsOuterImplicit x
- type family XHsPS x
- type family XHsQTvs x
- type family XHsRat x
- type family XHsRule x
- type family XHsSig x
- type family XHsString x
- type family XHsStringPrim x
- type family XHsValBinds x x'
- type family XHsWC x b
- type family XHsWord64Prim x
- type family XHsWordPrim x
- type family XIEDoc x
- type family XIEDocNamed x
- type family XIEGroup x
- type family XIEModuleContents x
- type family XIEName p
- type family XIEPattern p
- type family XIEThingAbs x
- type family XIEThingAll x
- type family XIEThingWith x
- type family XIEType p
- type family XIEVar x
- type family XIPBinds x
- type family XIPVar x
- type family XIParamTy x
- type family XIdSig x
- type family XIf x
- type family XInlineSig x
- type family XInstD x
- type family XKindSig x
- type family XKindSigD x
- type family XKindedTyVar x
- type family XLam x
- type family XLamCase x
- type family XLastStmt x x' b
- type family XLazyPat x
- type family XLet x
- type family XLetStmt x x' b
- type family XListPat x
- type family XListTy x
- type family XLitE x
- type family XLitPat x
- type family XMG x b
- type family XMinimalSig x
- type family XMissing x
- type family XMultiIf x
- type family XNPat x
- type family XNPlusKPat x
- type family XNegApp x
- type family XNewtypeStrategy x
- type family XNoSig x
- type family XNumTy x
- type family XOpApp x
- type family XOpTy x
- type family XOverLabel x
- type family XOverLit x
- type family XOverLitE x
- type family XPSB x x'
- type family XPar x
- type family XParPat x
- type family XParStmt x x' b
- type family XParTy x
- type family XPatBind x x'
- type family XPatBr x
- type family XPatSynSig x
- type family XPragE x
- type family XPresent x
- type family XProc x
- type family XProjection x
- type family XQualTy x
- type family XQuasiQuote x
- type family XRecSel x
- type family XRecStmt x x' b
- type family XRecTy x
- type family XRecordCon x
- type family XRecordUpd x
- type family XRoleAnnotD x
- type family XRuleBndrSig x
- type family XRuleD x
- type family XSCC x
- type family XSCCFunSig x
- type family XSectionL x
- type family XSectionR x
- type family XSigD x
- type family XSigPat x
- type family XSpecInstSig x
- type family XSpecSig x
- type family XSpliceD x
- type family XSplicePat x
- type family XSpliceTy x
- type family XStarTy x
- type family XStatic x
- type family XStockStrategy x
- type family XStrTy x
- type family XSumPat x
- type family XSumTy x
- type family XSynDecl x
- type family XTick x
- type family XTransStmt x x' b
- type family XTuplePat x
- type family XTupleTy x
- type family XTyClD x
- type family XTyFamInstD x
- type family XTyLit x
- type family XTyVar x
- type family XTyVarSig x
- type family XTypBr x
- type family XTypeSig x
- type family XTypedBracket x
- type family XTypedSplice x
- type family XUnambiguous x
- type family XUnboundVar x
- type family XUntypedBracket x
- type family XUntypedSpliceExpr x
- type family XUserTyVar x
- type family XValBinds x x'
- type family XValD x
- type family XVar x
- type family XVarBind x x'
- type family XVarBr x
- type family XVarPat x
- type family XViaStrategy x
- type family XViewPat x
- type family XWarning x
- type family XWarningD x
- type family XWarnings x
- type family XWildCardTy x
- type family XWildPat x
- type family XXAmbiguousFieldOcc x
- type family XXAnnDecl x
- type family XXApplicativeArg x
- type family XXClsInstDecl x
- type family XXCmd x
- type family XXCmdTop x
- type family XXConDecl x
- type family XXConDeclField x
- type family XXDefaultDecl x
- type family XXDerivClauseTys x
- type family XXDerivDecl x
- type family XXDotFieldOcc x
- type family XXExpr x
- type family XXFamEqn x r
- type family XXFamilyDecl x
- type family XXFamilyResultSig x
- type family XXFieldOcc x
- type family XXFixitySig x
- type family XXForeignDecl x
- type family XXForeignExport x
- type family XXForeignImport x
- type family XXFunDep x
- type family XXGRHS x b
- type family XXGRHSs x b
- type family XXHsBindsLR x x'
- type family XXHsDataDefn x
- type family XXHsDecl x
- type family XXHsDerivingClause x
- type family XXHsForAllTelescope x
- type family XXHsGroup x
- type family XXHsIPBinds x
- type family XXHsLocalBindsLR x x'
- type family XXHsOuterTyVarBndrs x
- type family XXHsPatSigType x
- type family XXHsSigType x
- type family XXHsWildCardBndrs x b
- type family XXIE x
- type family XXIEWrappedName p
- type family XXIPBind x
- type family XXImportDecl x
- type family XXInjectivityAnn x
- type family XXInstDecl x
- type family XXLHsQTyVars x
- type family XXLit x
- type family XXMatch x b
- type family XXMatchGroup x b
- type family XXModule x
- type family XXOverLit x
- type family XXParStmtBlock x x'
- type family XXPat x
- type family XXPatSynBind x x'
- type family XXPragE x
- type family XXQuote x
- type family XXRoleAnnotDecl x
- type family XXRuleBndr x
- type family XXRuleDecl x
- type family XXRuleDecls x
- type family XXSig x
- type family XXSpliceDecl x
- type family XXStandaloneKindSig x
- type family XXStmtLR x x' b
- type family XXTupArg x
- type family XXTyClDecl x
- type family XXTyClGroup x
- type family XXTyFamInstDecl x
- type family XXTyLit x
- type family XXTyVarBndr x
- type family XXType x
- type family XXUntypedSplice x
- type family XXValBindsLR x x'
- type family XXWarnDecl x
- type family XXWarnDecls x
- data IE pass
  - = IEVar (XIEVar pass) (LIEWrappedName pass)
  - | IEThingAbs (XIEThingAbs pass) (LIEWrappedName pass)
  - | IEThingAll (XIEThingAll pass) (LIEWrappedName pass)
  - | IEThingWith (XIEThingWith pass) (LIEWrappedName pass) IEWildcard [LIEWrappedName pass]
  - | IEModuleContents (XIEModuleContents pass) (XRec pass ModuleName)
  - | IEGroup (XIEGroup pass) Int (LHsDoc pass)
  - | IEDoc (XIEDoc pass) (LHsDoc pass)
  - | IEDocNamed (XIEDocNamed pass) String
  - | XIE !(XXIE pass)
- data IEWildcard
  - = NoIEWildcard
  - | IEWildcard Int
- data IEWrappedName p
  - = IEName (XIEName p) (LIdP p)
  - | IEPattern (XIEPattern p) (LIdP p)
  - | IEType (XIEType p) (LIdP p)
  - | XIEWrappedName !(XXIEWrappedName p)
- data ImportDecl pass
  - = ImportDecl {
    - ideclExt :: XCImportDecl pass
    - ideclName :: XRec pass ModuleName
    - ideclPkgQual :: ImportDeclPkgQual pass
    - ideclSource :: IsBootInterface
    - ideclSafe :: Bool
    - ideclQualified :: ImportDeclQualifiedStyle
    - ideclAs :: Maybe (XRec pass ModuleName)
    - ideclImportList :: Maybe (ImportListInterpretation, XRec pass [LIE pass])
    }
  - | XImportDecl !(XXImportDecl pass)
- data ImportDeclQualifiedStyle
  - = QualifiedPre
  - | QualifiedPost
  - | NotQualified
- data ImportListInterpretation
  - = Exactly
  - | EverythingBut
- type LIE pass = XRec pass (IE pass)
- type LIEWrappedName p = XRec p (IEWrappedName p)
- type LImportDecl pass = XRec pass (ImportDecl pass)
- data OverLitVal
  - = HsIntegral !IntegralLit
  - | HsFractional !FractionalLit
  - | HsIsString !SourceText !FastString
- data HsConPatTyArg p = HsConPatTyArg !(LHsToken "@" p) (HsPatSigType p)
- data HsFieldBind lhs rhs = HsFieldBind {
  - hfbAnn :: XHsFieldBind lhs
  - hfbLHS :: lhs
  - hfbRHS :: rhs
  - hfbPun :: Bool
  }
- type HsRecField p arg = HsFieldBind (LFieldOcc p) arg
- data HsRecFields p arg = HsRecFields {
  - rec_flds :: [LHsRecField p arg]
  - rec_dotdot :: Maybe (XRec p RecFieldsDotDot)
  }
- type HsRecUpdField p = HsFieldBind (LAmbiguousFieldOcc p) (LHsExpr p)
- type LHsFieldBind p id arg = XRec p (HsFieldBind id arg)
- type LHsRecField p arg = XRec p (HsRecField p arg)
- type LHsRecUpdField p = XRec p (HsRecUpdField p)
- type LPat p = XRec p (Pat p)
- newtype RecFieldsDotDot = RecFieldsDotDot {
  - unRecFieldsDotDot :: Int
  }
- data AmbiguousFieldOcc pass
  - = Unambiguous (XUnambiguous pass) (XRec pass RdrName)
  - | Ambiguous (XAmbiguous pass) (XRec pass RdrName)
  - | XAmbiguousFieldOcc !(XXAmbiguousFieldOcc pass)
- data ConDeclField pass
  - = ConDeclField {
    - cd_fld_ext :: XConDeclField pass
    - cd_fld_names :: [LFieldOcc pass]
    - cd_fld_type :: LBangType pass
    - cd_fld_doc :: Maybe (LHsDoc pass)
    }
  - | XConDeclField !(XXConDeclField pass)
- data FieldOcc pass
  - = FieldOcc {
    - foExt :: XCFieldOcc pass
    - foLabel :: XRec pass RdrName
    }
  - | XFieldOcc !(XXFieldOcc pass)
- data HsArg tm ty
  - = HsValArg tm
  - | HsTypeArg SrcSpan ty
  - | HsArgPar SrcSpan
- data HsArrow pass
  - = HsUnrestrictedArrow !(LHsUniToken "->" "\8594" pass)
  - | HsLinearArrow !(HsLinearArrowTokens pass)
  - | HsExplicitMult !(LHsToken "%" pass) !(LHsType pass) !(LHsUniToken "->" "\8594" pass)
- data HsConDetails tyarg arg rec
  - = PrefixCon [tyarg] [arg]
  - | RecCon rec
  - | InfixCon arg arg
- type HsContext pass = [LHsType pass]
- data HsForAllTelescope pass
  - = HsForAllVis {
    - hsf_xvis :: XHsForAllVis pass
    - hsf_vis_bndrs :: [LHsTyVarBndr () pass]
    }
  - | HsForAllInvis {
    - hsf_xinvis :: XHsForAllInvis pass
    - hsf_invis_bndrs :: [LHsTyVarBndr Specificity pass]
    }
  - | XHsForAllTelescope !(XXHsForAllTelescope pass)
- newtype HsIPName = HsIPName FastString
- type HsKind pass = HsType pass
- data HsLinearArrowTokens pass
  - = HsPct1 !(LHsToken "%1" pass) !(LHsUniToken "->" "\8594" pass)
  - | HsLolly !(LHsToken "\8888" pass)
- type HsOuterFamEqnTyVarBndrs = HsOuterTyVarBndrs ()
- type HsOuterSigTyVarBndrs = HsOuterTyVarBndrs Specificity
- data HsOuterTyVarBndrs flag pass
  - = HsOuterImplicit {
    - hso_ximplicit :: XHsOuterImplicit pass
    }
  - | HsOuterExplicit {
    - hso_xexplicit :: XHsOuterExplicit pass flag
    - hso_bndrs :: [LHsTyVarBndr flag (NoGhcTc pass)]
    }
  - | XHsOuterTyVarBndrs !(XXHsOuterTyVarBndrs pass)
- data HsPatSigType pass
  - = HsPS {
    - hsps_ext :: XHsPS pass
    - hsps_body :: LHsType pass
    }
  - | XHsPatSigType !(XXHsPatSigType pass)
- data HsScaled pass a = HsScaled (HsArrow pass) a
- data HsSigType pass
  - = HsSig {
    - sig_ext :: XHsSig pass
    - sig_bndrs :: HsOuterSigTyVarBndrs pass
    - sig_body :: LHsType pass
    }
  - | XHsSigType !(XXHsSigType pass)
- data HsTupleSort
  - = HsUnboxedTuple
  - | HsBoxedOrConstraintTuple
- data HsTyLit pass
  - = HsNumTy (XNumTy pass) Integer
  - | HsStrTy (XStrTy pass) FastString
  - | HsCharTy (XCharTy pass) Char
  - | XTyLit !(XXTyLit pass)
- data HsTyVarBndr flag pass
  - = UserTyVar (XUserTyVar pass) flag (LIdP pass)
  - | KindedTyVar (XKindedTyVar pass) flag (LIdP pass) (LHsKind pass)
  - | XTyVarBndr !(XXTyVarBndr pass)
- data HsType pass
  - = HsForAllTy {
    - hst_xforall :: XForAllTy pass
    - hst_tele :: HsForAllTelescope pass
    - hst_body :: LHsType pass
    }
  - | HsQualTy {
    - hst_xqual :: XQualTy pass
    - hst_ctxt :: LHsContext pass
    - hst_body :: LHsType pass
    }
  - | HsTyVar (XTyVar pass) PromotionFlag (LIdP pass)
  - | HsAppTy (XAppTy pass) (LHsType pass) (LHsType pass)
  - | HsAppKindTy (XAppKindTy pass) (LHsType pass) (LHsKind pass)
  - | HsFunTy (XFunTy pass) (HsArrow pass) (LHsType pass) (LHsType pass)
  - | HsListTy (XListTy pass) (LHsType pass)
  - | HsTupleTy (XTupleTy pass) HsTupleSort [LHsType pass]
  - | HsSumTy (XSumTy pass) [LHsType pass]
  - | HsOpTy (XOpTy pass) PromotionFlag (LHsType pass) (LIdP pass) (LHsType pass)
  - | HsParTy (XParTy pass) (LHsType pass)
  - | HsIParamTy (XIParamTy pass) (XRec pass HsIPName) (LHsType pass)
  - | HsStarTy (XStarTy pass) Bool
  - | HsKindSig (XKindSig pass) (LHsType pass) (LHsKind pass)
  - | HsSpliceTy (XSpliceTy pass) (HsUntypedSplice pass)
  - | HsDocTy (XDocTy pass) (LHsType pass) (LHsDoc pass)
  - | HsBangTy (XBangTy pass) HsSrcBang (LHsType pass)
  - | HsRecTy (XRecTy pass) [LConDeclField pass]
  - | HsExplicitListTy (XExplicitListTy pass) PromotionFlag [LHsType pass]
  - | HsExplicitTupleTy (XExplicitTupleTy pass) [LHsType pass]
  - | HsTyLit (XTyLit pass) (HsTyLit pass)
  - | HsWildCardTy (XWildCardTy pass)
  - | XHsType !(XXType pass)
- data HsWildCardBndrs pass thing
  - = HsWC {
    - hswc_ext :: XHsWC pass thing
    - hswc_body :: thing
    }
  - | XHsWildCardBndrs !(XXHsWildCardBndrs pass thing)
- type LAmbiguousFieldOcc pass = XRec pass (AmbiguousFieldOcc pass)
- type LBangType pass = XRec pass (BangType pass)
- type LConDeclField pass = XRec pass (ConDeclField pass)
- type LFieldOcc pass = XRec pass (FieldOcc pass)
- type LHsContext pass = XRec pass (HsContext pass)
- type LHsKind pass = XRec pass (HsKind pass)
- data LHsQTyVars pass
  - = HsQTvs {
    - hsq_ext :: XHsQTvs pass
    - hsq_explicit :: [LHsTyVarBndr () pass]
    }
  - | XLHsQTyVars !(XXLHsQTyVars pass)
- type LHsSigType pass = XRec pass (HsSigType pass)
- type LHsSigWcType pass = HsWildCardBndrs pass (LHsSigType pass)
- type LHsTyVarBndr flag pass = XRec pass (HsTyVarBndr flag pass)
- type LHsType pass = XRec pass (HsType pass)
- type LHsTypeArg p = HsArg (LHsType p) (LHsKind p)
- type LHsWcType pass = HsWildCardBndrs pass (LHsType pass)
- data PromotionFlag
  - = NotPromoted
  - | IsPromoted
- pattern XFunDep :: !(XXFunDep pass) -> FunDep pass
- moduleNameString :: ModuleName -> String
- mkModuleName :: String -> ModuleName
- isCompleteMatchSig :: UnXRec p => LSig p -> Bool
- isFixityLSig :: UnXRec p => LSig p -> Bool
- isInlineLSig :: UnXRec p => LSig p -> Bool
- isMinimalLSig :: UnXRec p => LSig p -> Bool
- isPragLSig :: UnXRec p => LSig p -> Bool
- isSCCFunSig :: UnXRec p => LSig p -> Bool
- isSpecInstLSig :: UnXRec p => LSig p -> Bool
- isSpecLSig :: UnXRec p => LSig p -> Bool
- isTypeLSig :: UnXRec p => LSig p -> Bool
- annProvenanceName_maybe :: UnXRec p => AnnProvenance p -> Maybe (IdP p)
- collectRuleBndrSigTys :: [RuleBndr pass] -> [HsPatSigType pass]
- dataDefnConsNewOrData :: DataDefnCons a -> NewOrData
- docDeclDoc :: DocDecl pass -> LHsDoc pass
- hsGroupInstDecls :: HsGroup id -> [LInstDecl id]
- isClassDecl :: TyClDecl pass -> Bool
- isClosedTypeFamilyInfo :: FamilyInfo pass -> Bool
- isDataDecl :: TyClDecl pass -> Bool
- isDataFamilyDecl :: TyClDecl pass -> Bool
- isFamilyDecl :: TyClDecl pass -> Bool
- isOpenTypeFamilyInfo :: FamilyInfo pass -> Bool
- isSynDecl :: TyClDecl pass -> Bool
- isTypeDataDefnCons :: DataDefnCons a -> Bool
- isTypeFamilyDecl :: TyClDecl pass -> Bool
- tyClDeclTyVars :: TyClDecl pass -> LHsQTyVars pass
- tyClGroupInstDecls :: [TyClGroup pass] -> [LInstDecl pass]
- tyClGroupKindSigs :: [TyClGroup pass] -> [LStandaloneKindSig pass]
- tyClGroupRoleDecls :: [TyClGroup pass] -> [LRoleAnnotDecl pass]
- tyClGroupTyClDecls :: [TyClGroup pass] -> [LTyClDecl pass]
- isComprehensionContext :: HsStmtContext id -> Bool
- isDoComprehensionContext :: HsDoFlavour -> Bool
- isInfixMatch :: Match id body -> Bool
- isMonadCompContext :: HsStmtContext id -> Bool
- isMonadDoCompContext :: HsDoFlavour -> Bool
- isMonadDoStmtContext :: HsDoFlavour -> Bool
- isMonadStmtContext :: HsStmtContext id -> Bool
- isPatSynCtxt :: HsMatchContext p -> Bool
- qualifiedDoModuleName_maybe :: HsStmtContext p -> Maybe ModuleName
- dataConCantHappen :: DataConCantHappen -> a
- noExtField :: NoExtField
- negateOverLitVal :: OverLitVal -> OverLitVal
- mkModuleNameFS :: FastString -> ModuleName
- moduleNameColons :: ModuleName -> String
- moduleNameFS :: ModuleName -> FastString
- moduleNameSlashes :: ModuleName -> String
- parseModuleName :: ReadP ModuleName
- stableModuleNameCmp :: ModuleName -> ModuleName -> Ordering
- hsConPatArgs :: UnXRec p => HsConPatDetails p -> [LPat p]
- hsRecFieldSel :: UnXRec p => HsRecField p arg -> XCFieldOcc p
- hsRecFields :: UnXRec p => HsRecFields p arg -> [XCFieldOcc p]
- hsRecFieldsArgs :: UnXRec p => HsRecFields p arg -> [arg]
- hsIPNameFS :: HsIPName -> FastString
- hsMult :: HsScaled pass a -> HsArrow pass
- hsPatSigType :: HsPatSigType pass -> LHsType pass
- hsQTvExplicit :: LHsQTyVars pass -> [LHsTyVarBndr () pass]
- hsScaledThing :: HsScaled pass a -> a
- isHsKindedTyVar :: HsTyVarBndr flag pass -> Bool
- isPromoted :: PromotionFlag -> Bool
- mapHsOuterImplicit :: (XHsOuterImplicit pass -> XHsOuterImplicit pass) -> HsOuterTyVarBndrs flag pass -> HsOuterTyVarBndrs flag pass
- noTypeArgs :: [Void]
- data Role
  - = Nominal
  - | Representational
  - | Phantom
- data HsWrapper
  - = WpHole
  - | WpCompose HsWrapper HsWrapper
  - | WpFun HsWrapper HsWrapper (Scaled TcTypeFRR)
  - | WpCast TcCoercionR
  - | WpEvLam EvVar
  - | WpEvApp EvTerm
  - | WpTyLam TyVar
  - | WpTyApp KindOrType
  - | WpLet TcEvBinds
  - | WpMultCoercion Coercion
- data TcEvBinds
  - = TcEvBinds EvBindsVar
  - | EvBinds (Bag EvBind)
- data CoercionHole
- data LeftOrRight
  - = CLeft
  - | CRight
- type TcCoercion = Coercion
- data EvBind = EvBind {
  - eb_lhs :: EvVar
  - eb_rhs :: EvTerm
  - eb_is_given :: Bool
  }
- data EvBindsVar
  - = EvBindsVar {
    - ebv_uniq :: Unique
    - ebv_binds :: IORef EvBindMap
    - ebv_tcvs :: IORef CoVarSet
    }
  - | CoEvBindsVar {
    - ebv_uniq :: Unique
    - ebv_tcvs :: IORef CoVarSet
    }
- data EvTerm
  - = EvExpr EvExpr
  - | EvTypeable Type EvTypeable
  - | EvFun {
    - et_tvs :: [TyVar]
    - et_given :: [EvVar]
    - et_binds :: TcEvBinds
    - et_body :: EvVar
    }
- data QuoteWrapper = QuoteWrapper EvVar Type
- data EvCallStack
  - = EvCsEmpty
  - | EvCsPushCall FastString RealSrcSpan EvExpr
- data EvTypeable
  - = EvTypeableTyCon TyCon [EvTerm]
  - | EvTypeableTyApp EvTerm EvTerm
  - | EvTypeableTrFun EvTerm EvTerm EvTerm
  - | EvTypeableTyLit EvTerm
- data HoleExprRef = HER (IORef EvTerm) TcType Unique
- newtype EvBindMap = EvBindMap {
  - ev_bind_varenv :: DVarEnv EvBind
  }
- type EvExpr = CoreExpr
- type TcCoercionN = CoercionN
- type TcCoercionP = CoercionP
- type TcCoercionR = CoercionR
- type TcMCoercion = MCoercion
- type TcMCoercionN = MCoercionN
- type TcMCoercionR = MCoercionR
- isEmptyTcEvBinds :: TcEvBinds -> Bool
- pickLR :: LeftOrRight -> (a, a) -> a
- hsWrapDictBinders :: HsWrapper -> Bag DictId
- idHsWrapper :: HsWrapper
- mkWpTyApps :: [Type] -> HsWrapper
- applyQuoteWrapper :: QuoteWrapper -> HsWrapper
- collectHsWrapBinders :: HsWrapper -> ([Var], HsWrapper)
- emptyEvBindMap :: EvBindMap
- emptyTcEvBinds :: TcEvBinds
- evBindMapBinds :: EvBindMap -> Bag EvBind
- evBindMapToVarSet :: EvBindMap -> VarSet
- evBindVar :: EvBind -> EvVar
- evCast :: EvExpr -> TcCoercion -> EvTerm
- evCoercion :: TcCoercion -> EvTerm
- evDFunApp :: DFunId -> [Type] -> [EvExpr] -> EvTerm
- evDataConApp :: DataCon -> [Type] -> [EvExpr] -> EvTerm
- evId :: EvId -> EvExpr
- evSelector :: Id -> [Type] -> [EvExpr] -> EvExpr
- evTermCoercion :: EvTerm -> TcCoercion
- evTermCoercion_maybe :: EvTerm -> Maybe TcCoercion
- evTypeable :: Type -> EvTypeable -> EvTerm
- evVarsOfTerm :: EvTerm -> VarSet
- extendEvBinds :: EvBindMap -> EvBind -> EvBindMap
- filterEvBindMap :: (EvBind -> Bool) -> EvBindMap -> EvBindMap
- findNeededEvVars :: EvBindMap -> VarSet -> VarSet
- foldEvBindMap :: (EvBind -> a -> a) -> a -> EvBindMap -> a
- isCoEvBindsVar :: EvBindsVar -> Bool
- isEmptyEvBindMap :: EvBindMap -> Bool
- isIdHsWrapper :: HsWrapper -> Bool
- lookupEvBind :: EvBindMap -> EvVar -> Maybe EvBind
- maybeSymCo :: SwapFlag -> TcCoercion -> TcCoercion
- mkEvCast :: EvExpr -> TcCoercion -> EvTerm
- mkEvScSelectors :: Class -> [TcType] -> [(TcPredType, EvExpr)]
- mkGivenEvBind :: EvVar -> EvTerm -> EvBind
- mkWantedEvBind :: EvVar -> EvTerm -> EvBind
- mkWpCastN :: TcCoercionN -> HsWrapper
- mkWpCastR :: TcCoercionR -> HsWrapper
- mkWpEta :: [Id] -> HsWrapper -> HsWrapper
- mkWpEvApps :: [EvTerm] -> HsWrapper
- mkWpEvLams :: [Var] -> HsWrapper
- mkWpEvVarApps :: [EvVar] -> HsWrapper
- mkWpFun :: HsWrapper -> HsWrapper -> Scaled TcTypeFRR -> TcType -> HsWrapper
- mkWpLet :: TcEvBinds -> HsWrapper
- mkWpTyLams :: [TyVar] -> HsWrapper
- nonDetStrictFoldEvBindMap :: (EvBind -> a -> a) -> a -> EvBindMap -> a
- pprHsWrapper :: HsWrapper -> (Bool -> SDoc) -> SDoc
- quoteWrapperTyVarTy :: QuoteWrapper -> Type
- unwrapIP :: Type -> CoercionR
- varSetMinusEvBindMap :: VarSet -> EvBindMap -> VarSet
- wrapIP :: Type -> CoercionR
- data Env gbl lcl = Env {
  - env_top :: !HscEnv
  - env_um :: !Char
  - env_gbl :: gbl
  - env_lcl :: lcl
  }
- data FrontendResult = FrontendTypecheck TcGblEnv
- data WhereFrom
  - = ImportByUser IsBootInterface
  - | ImportBySystem
  - | ImportByPlugin
- data TcGblEnv = TcGblEnv {
  - tcg_mod :: Module
  - tcg_semantic_mod :: Module
  - tcg_src :: HscSource
  - tcg_rdr_env :: GlobalRdrEnv
  - tcg_default :: Maybe [Type]
  - tcg_fix_env :: FixityEnv
  - tcg_field_env :: RecFieldEnv
  - tcg_type_env :: TypeEnv
  - tcg_type_env_var :: KnotVars (IORef TypeEnv)
  - tcg_inst_env :: !InstEnv
  - tcg_fam_inst_env :: !FamInstEnv
  - tcg_ann_env :: AnnEnv
  - tcg_exports :: [AvailInfo]
  - tcg_imports :: ImportAvails
  - tcg_dus :: DefUses
  - tcg_used_gres :: TcRef [GlobalRdrElt]
  - tcg_keep :: TcRef NameSet
  - tcg_th_used :: TcRef Bool
  - tcg_th_splice_used :: TcRef Bool
  - tcg_th_needed_deps :: TcRef ([Linkable], PkgsLoaded)
  - tcg_dfun_n :: TcRef OccSet
  - tcg_merged :: [(Module, Fingerprint)]
  - tcg_rn_exports :: Maybe [(LIE GhcRn, Avails)]
  - tcg_rn_imports :: [LImportDecl GhcRn]
  - tcg_rn_decls :: Maybe (HsGroup GhcRn)
  - tcg_dependent_files :: TcRef [FilePath]
  - tcg_th_topdecls :: TcRef [LHsDecl GhcPs]
  - tcg_th_foreign_files :: TcRef [(ForeignSrcLang, FilePath)]
  - tcg_th_topnames :: TcRef NameSet
  - tcg_th_modfinalizers :: TcRef [(TcLclEnv, ThModFinalizers)]
  - tcg_th_coreplugins :: TcRef [String]
  - tcg_th_state :: TcRef (Map TypeRep Dynamic)
  - tcg_th_remote_state :: TcRef (Maybe (ForeignRef (IORef QState)))
  - tcg_th_docs :: TcRef THDocs
  - tcg_ev_binds :: Bag EvBind
  - tcg_tr_module :: Maybe Id
  - tcg_binds :: LHsBinds GhcTc
  - tcg_sigs :: NameSet
  - tcg_imp_specs :: [LTcSpecPrag]
  - tcg_warns :: Warnings GhcRn
  - tcg_anns :: [Annotation]
  - tcg_tcs :: [TyCon]
  - tcg_ksigs :: NameSet
  - tcg_insts :: [ClsInst]
  - tcg_fam_insts :: [FamInst]
  - tcg_rules :: [LRuleDecl GhcTc]
  - tcg_fords :: [LForeignDecl GhcTc]
  - tcg_patsyns :: [PatSyn]
  - tcg_doc_hdr :: Maybe (LHsDoc GhcRn)
  - tcg_hpc :: !AnyHpcUsage
  - tcg_self_boot :: SelfBootInfo
  - tcg_main :: Maybe Name
  - tcg_safe_infer :: TcRef Bool
  - tcg_safe_infer_reasons :: TcRef (Messages TcRnMessage)
  - tcg_tc_plugin_solvers :: [TcPluginSolver]
  - tcg_tc_plugin_rewriters :: UniqFM TyCon [TcPluginRewriter]
  - tcg_defaulting_plugins :: [FillDefaulting]
  - tcg_hf_plugins :: [HoleFitPlugin]
  - tcg_top_loc :: RealSrcSpan
  - tcg_static_wc :: TcRef WantedConstraints
  - tcg_complete_matches :: !CompleteMatches
  - tcg_cc_st :: TcRef CostCentreState
  - tcg_next_wrapper_num :: TcRef (ModuleEnv Int)
  }
- data ForeignSrcLang
  - = LangC
  - | LangCxx
  - | LangObjc
  - | LangObjcxx
  - | LangAsm
  - | LangJs
  - | RawObject
- data DocLoc
  - = DeclDoc Name
  - | ArgDoc Name Int
  - | InstDoc Name
  - | ModuleDoc
- data TcRnMessage
- type RnM = TcRn
- type TcM = TcRn
- data IOEnv env a
- data TcLclEnv = TcLclEnv {
  - tcl_loc :: RealSrcSpan
  - tcl_ctxt :: [ErrCtxt]
  - tcl_in_gen_code :: Bool
  - tcl_tclvl :: TcLevel
  - tcl_th_ctxt :: ThStage
  - tcl_th_bndrs :: ThBindEnv
  - tcl_arrow_ctxt :: ArrowCtxt
  - tcl_rdr :: LocalRdrEnv
  - tcl_env :: TcTypeEnv
  - tcl_usage :: TcRef UsageEnv
  - tcl_bndrs :: TcBinderStack
  - tcl_lie :: TcRef WantedConstraints
  - tcl_errs :: TcRef (Messages TcRnMessage)
  }
- type TcRn = TcRnIf TcGblEnv TcLclEnv
- data ImportAvails = ImportAvails {
  - imp_mods :: ImportedMods
  - imp_direct_dep_mods :: InstalledModuleEnv ModuleNameWithIsBoot
  - imp_dep_direct_pkgs :: Set UnitId
  - imp_trust_own_pkg :: Bool
  - imp_trust_pkgs :: Set UnitId
  - imp_boot_mods :: InstalledModuleEnv ModuleNameWithIsBoot
  - imp_sig_mods :: [ModuleName]
  - imp_orphs :: [Module]
  - imp_finsts :: [Module]
  }
- data DefaultingPlugin = DefaultingPlugin {
  - dePluginInit :: TcPluginM s
  - dePluginRun :: s -> FillDefaulting
  - dePluginStop :: s -> TcPluginM ()
  }
- type IfM lcl = TcRnIf IfGblEnv lcl
- data TcPlugin = TcPlugin {
  - tcPluginInit :: TcPluginM s
  - tcPluginSolve :: s -> TcPluginSolver
  - tcPluginRewrite :: s -> UniqFM TyCon TcPluginRewriter
  - tcPluginStop :: s -> TcPluginM ()
  }
- data IfGblEnv = IfGblEnv {
  - if_doc :: SDoc
  - if_rec_types :: KnotVars (IfG TypeEnv)
  }
- type THDocs = Map DocLoc (HsDoc GhcRn)
- type CompleteMatches = [CompleteMatch]
- data IfLclEnv = IfLclEnv {
  - if_mod :: !Module
  - if_boot :: IsBootInterface
  - if_loc :: SDoc
  - if_nsubst :: Maybe NameShape
  - if_implicits_env :: Maybe TypeEnv
  - if_tv_env :: FastStringEnv TyVar
  - if_id_env :: FastStringEnv Id
  }
- data CompleteMatch
- data IOEnvFailure = IOEnvFailure
- type IfL = IfM IfLclEnv
- type TcRnIf a b = IOEnv (Env a b)
- type IfG = IfM ()
- data NameShape = NameShape {
  - ns_mod_name :: ModuleName
  - ns_exports :: [AvailInfo]
  - ns_map :: OccEnv Name
  }
- data SelfBootInfo
  - = NoSelfBoot
  - | SelfBoot {
    - sb_mds :: ModDetails
    - sb_tcs :: NameSet
    }
- type TcRef a = IORef a
- type ThLevel = Int
- data ThStage
  - = Splice SpliceType
  - | RunSplice (TcRef [ForeignRef (Q ())])
  - | Comp
  - | Brack ThStage PendingStuff
- type TcPluginRewriter = RewriteEnv -> [Ct] -> [TcType] -> TcPluginM TcPluginRewriteResult
- data TcTyThing
  - = AGlobal TyThing
  - | ATcId {
    - tct_id :: TcId
    - tct_info :: IdBindingInfo
    }
  - | ATyVar Name TcTyVar
  - | ATcTyCon TyCon
  - | APromotionErr PromotionErr
- type ThBindEnv = NameEnv (TopLevelFlag, ThLevel)
- type TcPluginSolver = EvBindsVar -> [Ct] -> [Ct] -> TcPluginM TcPluginSolveResult
- data TcPluginM a
- data PromotionErr
  - = TyConPE
  - | ClassPE
  - | FamDataConPE
  - | ConstrainedDataConPE PredType
  - | PatSynPE
  - | RecDataConPE
  - | TermVariablePE
  - | NoDataKindsDC
- data TcBinder
  - = TcIdBndr TcId TopLevelFlag
  - | TcIdBndr_ExpType Name ExpType TopLevelFlag
  - | TcTvBndr Name TyVar
- data DefaultingProposal = DefaultingProposal {
  - deProposalTyVar :: TcTyVar
  - deProposalCandidates :: [Type]
  - deProposalCts :: [Ct]
  }
- data IdBindingInfo
  - = NotLetBound
  - | ClosedLet
  - | NonClosedLet RhsNames ClosedTypeId
- data TcIdSigInfo
  - = CompleteSig {
    - sig_bndr :: TcId
    - sig_ctxt :: UserTypeCtxt
    - sig_loc :: SrcSpan
    }
  - | PartialSig {
    - psig_name :: Name
    - psig_hs_ty :: LHsSigWcType GhcRn
    - sig_ctxt :: UserTypeCtxt
    - sig_loc :: SrcSpan
    }
- data TcIdSigInst = TISI {
  - sig_inst_sig :: TcIdSigInfo
  - sig_inst_skols :: [(Name, InvisTVBinder)]
  - sig_inst_theta :: TcThetaType
  - sig_inst_tau :: TcSigmaType
  - sig_inst_wcs :: [(Name, TcTyVar)]
  - sig_inst_wcx :: Maybe TcType
  }
- data TcPatSynInfo = TPSI {
  - patsig_name :: Name
  - patsig_implicit_bndrs :: [InvisTVBinder]
  - patsig_univ_bndrs :: [InvisTVBinder]
  - patsig_req :: TcThetaType
  - patsig_ex_bndrs :: [InvisTVBinder]
  - patsig_prov :: TcThetaType
  - patsig_body_ty :: TcSigmaType
  }
- data TcSigInfo
  - = TcIdSig TcIdSigInfo
  - | TcPatSynSig TcPatSynInfo
- data ArrowCtxt
  - = NoArrowCtxt
  - | ArrowCtxt LocalRdrEnv (TcRef WantedConstraints)
- type ClosedTypeId = Bool
- type DefaultingPluginResult = [DefaultingProposal]
- type ErrCtxt = (Bool, TidyEnv -> TcM (TidyEnv, SDoc))
- type FillDefaulting = WantedConstraints -> TcPluginM [DefaultingProposal]
- data IsGroupClosed = IsGroupClosed (NameEnv RhsNames) ClosedTypeId
- data PendingStuff
  - = RnPendingUntyped (TcRef [PendingRnSplice])
  - | RnPendingTyped
  - | TcPending (TcRef [PendingTcSplice]) (TcRef WantedConstraints) QuoteWrapper
- type RecFieldEnv = NameEnv [FieldLabel]
- data RewriteEnv = RE {
  - re_loc :: !CtLoc
  - re_flavour :: !CtFlavour
  - re_eq_rel :: !EqRel
  - re_rewriters :: !(TcRef RewriterSet)
  }
- type RhsNames = NameSet
- type RoleAnnotEnv = NameEnv (LRoleAnnotDecl GhcRn)
- data SpliceType
  - = Typed
  - | Untyped
- type TcBinderStack = [TcBinder]
- type TcId = Id
- type TcIdSet = IdSet
- data TcPluginRewriteResult
  - = TcPluginNoRewrite
  - | TcPluginRewriteTo {
    - tcPluginReduction :: !Reduction
    - tcRewriterNewWanteds :: [Ct]
    }
- data TcPluginSolveResult where
  - TcPluginSolveResult {
    - tcPluginInsolubleCts :: [Ct]
    - tcPluginSolvedCts :: [(EvTerm, Ct)]
    - tcPluginNewCts :: [Ct]
    }
  - pattern TcPluginContradiction :: [Ct] -> TcPluginSolveResult
  - pattern TcPluginOk :: [(EvTerm, Ct)] -> [Ct] -> TcPluginSolveResult
- type TcSigFun = Name -> Maybe TcSigInfo
- type TcTypeEnv = NameEnv TcTyThing
- data IsExtraConstraint
  - = YesExtraConstraint
  - | NoExtraConstraint
- newName :: OccName -> TcM Name
- mapAndUnzipM :: Applicative m => (a -> m (b, c)) -> [a] -> m ([b], [c])
- getEnv :: IOEnv env env
- setEnv :: env' -> IOEnv env' a -> IOEnv env a
- foldlM :: (Foldable t, Monad m) => (b -> a -> m b) -> b -> t a -> m b
- foldrM :: (Foldable t, Monad m) => (a -> b -> m b) -> b -> t a -> m b
- newMutVar :: a -> IOEnv env (IORef a)
- readMutVar :: IORef a -> IOEnv env a
- writeMutVar :: IORef a -> a -> IOEnv env ()
- newUnique :: TcRnIf gbl lcl Unique
- orM :: Monad m => m Bool -> m Bool -> m Bool
- partitionM :: Monad m => (a -> m Bool) -> [a] -> m ([a], [a])
- whenM :: Monad m => m Bool -> m () -> m ()
- unlessM :: Monad m => m Bool -> m () -> m ()
- keepAlive :: Name -> TcRn ()
- withException :: MonadIO m => SDocContext -> m (MaybeErr SDoc a) -> m a
- zipWith3M :: Monad m => (a -> b -> c -> m d) -> [a] -> [b] -> [c] -> m [d]
- zipWith4M :: Monad m => (a -> b -> c -> d -> m e) -> [a] -> [b] -> [c] -> [d] -> m [e]
- getImports :: TcRn ImportAvails
- finalSafeMode :: DynFlags -> TcGblEnv -> IO SafeHaskellMode
- fixSafeInstances :: SafeHaskellMode -> [ClsInst] -> [ClsInst]
- initIfaceTcRn :: IfG a -> TcRn a
- getGHCiMonad :: TcRn Name
- getNamePprCtx :: TcRn NamePprCtx
- addErr :: TcRnMessage -> TcRn ()
- emptyImportAvails :: ImportAvails
- plusImportAvails :: ImportAvails -> ImportAvails -> ImportAvails
- initIfaceCheck :: SDoc -> HscEnv -> IfG a -> IO a
- initIfaceLoadModule :: HscEnv -> Module -> IfG a -> IO a
- goptM :: GeneralFlag -> TcRnIf gbl lcl Bool
- woptM :: WarningFlag -> TcRnIf gbl lcl Bool
- failM :: IOEnv env a
- fixM :: (a -> IOEnv env a) -> IOEnv env a
- tryM :: IOEnv env r -> IOEnv env (Either IOEnvFailure r)
- updMutVar :: IORef a -> (a -> a) -> IOEnv env ()
- getCCIndexM :: (gbl -> TcRef CostCentreState) -> FastString -> TcRnIf gbl lcl CostCentreIndex
- getEnvs :: TcRnIf gbl lcl (gbl, lcl)
- getEps :: TcRnIf gbl lcl ExternalPackageState
- getGblEnv :: TcRnIf gbl lcl gbl
- getLclEnv :: TcRnIf gbl lcl lcl
- getTopEnv :: TcRnIf gbl lcl HscEnv
- initTc :: HscEnv -> HscSource -> Bool -> Module -> RealSrcSpan -> TcM r -> IO (Messages TcRnMessage, Maybe r)
- initTcRnIf :: Char -> HscEnv -> gbl -> lcl -> TcRnIf gbl lcl a -> IO a
- mkIfLclEnv :: Module -> SDoc -> IsBootInterface -> IfLclEnv
- newUniqueSupply :: TcRnIf gbl lcl UniqSupply
- readTcRef :: TcRef a -> TcRnIf gbl lcl a
- setEnvs :: (gbl', lcl') -> TcRnIf gbl' lcl' a -> TcRnIf gbl lcl a
- unsetGOptM :: GeneralFlag -> TcRnIf gbl lcl a -> TcRnIf gbl lcl a
- unsetWOptM :: WarningFlag -> TcRnIf gbl lcl a -> TcRnIf gbl lcl a
- updGblEnv :: (gbl -> gbl) -> TcRnIf gbl lcl a -> TcRnIf gbl lcl a
- updLclEnv :: (lcl -> lcl) -> TcRnIf gbl lcl a -> TcRnIf gbl lcl a
- whenGOptM :: GeneralFlag -> TcRnIf gbl lcl () -> TcRnIf gbl lcl ()
- writeTcRef :: TcRef a -> a -> TcRnIf gbl lcl ()
- xoptM :: Extension -> TcRnIf gbl lcl Bool
- failWithTc :: TcRnMessage -> TcM a
- getEpsAndHug :: TcRnIf gbl lcl (ExternalPackageState, HomeUnitGraph)
- getIfModule :: IfL Module
- initIfaceLcl :: Module -> SDoc -> IsBootInterface -> IfL a -> IfM lcl a
- updTopEnv :: (HscEnv -> HscEnv) -> TcRnIf gbl lcl a -> TcRnIf gbl lcl a
- updateEps_ :: (ExternalPackageState -> ExternalPackageState) -> TcRnIf gbl lcl ()
- initIfaceLoad :: HscEnv -> IfG a -> IO a
- mkModDeps :: Set (UnitId, ModuleNameWithIsBoot) -> InstalledModuleEnv ModuleNameWithIsBoot
- withoutDynamicNow :: TcRnIf gbl lcl a -> TcRnIf gbl lcl a
- failIfM :: SDoc -> IfL a
- forkM :: SDoc -> IfL a -> IfL a
- getGhcMode :: TcRnIf gbl lcl GhcMode
- initIfaceLclWithSubst :: Module -> SDoc -> IsBootInterface -> NameShape -> IfL a -> IfM lcl a
- setImplicitEnvM :: TypeEnv -> IfL a -> IfL a
- setLclEnv :: lcl' -> TcRnIf gbl lcl' a -> TcRnIf gbl lcl a
- traceIf :: SDoc -> TcRnIf m n ()
- extendFixityEnv :: [(Name, FixItem)] -> RnM a -> RnM a
- getFixityEnv :: TcRn FixityEnv
- traceRn :: String -> SDoc -> TcRn ()
- thLevel :: ThStage -> ThLevel
- addDiagnostic :: TcRnMessage -> TcRn ()
- addDiagnosticAt :: SrcSpan -> TcRnMessage -> TcRn ()
- addErrAt :: SrcSpan -> TcRnMessage -> TcRn ()
- addTcRnDiagnostic :: TcRnMessage -> TcM ()
- checkErr :: Bool -> TcRnMessage -> TcRn ()
- checkNoErrs :: TcM r -> TcM r
- getIsGHCi :: TcRn Bool
- getStage :: TcM ThStage
- mapAndReportM :: (a -> TcRn b) -> [a] -> TcRn [b]
- restoreEnvs :: (TcGblEnv, TcLclEnv) -> TcRn a -> TcRn a
- setSrcSpan :: SrcSpan -> TcRn a -> TcRn a
- setSrcSpanA :: SrcSpanAnn' ann -> TcRn a -> TcRn a
- tcIsHsBootOrSig :: TcRn Bool
- warnIf :: Bool -> TcRnMessage -> TcRn ()
- whenWOptM :: WarningFlag -> TcRnIf gbl lcl () -> TcRnIf gbl lcl ()
- addDetailedDiagnostic :: (ErrInfo -> TcRnMessage) -> TcM ()
- addErrCtxt :: SDoc -> TcM a -> TcM a
- checkTc :: Bool -> TcRnMessage -> TcM ()
- failWith :: TcRnMessage -> TcRn a
- getGlobalRdrEnv :: TcRn GlobalRdrEnv
- getLocalRdrEnv :: RnM LocalRdrEnv
- getSrcSpanM :: TcRn SrcSpan
- getStageAndBindLevel :: Name -> TcRn (Maybe (TopLevelFlag, ThLevel, ThStage))
- newTcRef :: a -> TcRnIf gbl lcl (TcRef a)
- recordThUse :: TcM ()
- setGblEnv :: gbl' -> TcRnIf gbl' lcl a -> TcRnIf gbl lcl a
- setStage :: ThStage -> TcM a -> TcRn a
- traceOptTcRn :: DumpFlag -> SDoc -> TcRn ()
- unsetXOptM :: Extension -> TcRnIf gbl lcl a -> TcRnIf gbl lcl a
- updTcRef :: TcRef a -> (a -> a) -> TcRnIf gbl lcl ()
- addErrs :: [(SrcSpan, TcRnMessage)] -> TcRn ()
- askNoErrs :: TcRn a -> TcRn (a, Bool)
- traceTc :: String -> SDoc -> TcRn ()
- lintGblEnv :: Logger -> DynFlags -> TcGblEnv -> TcM ()
- addDependentFiles :: [FilePath] -> TcRn ()
- addErrTc :: TcRnMessage -> TcM ()
- addTopEvBinds :: Bag EvBind -> TcM a -> TcM a
- captureConstraints :: TcM a -> TcM (a, WantedConstraints)
- discardWarnings :: TcRn a -> TcRn a
- dumpOptTcRn :: DumpFlag -> String -> DumpFormat -> SDoc -> TcRn ()
- dumpTcRn :: Bool -> DumpFlag -> String -> DumpFormat -> SDoc -> TcRn ()
- emitNamedTypeHole :: (Name, TcTyVar) -> TcM ()
- failIfErrsM :: TcRn ()
- getInteractivePrintName :: TcRn Name
- initTcInteractive :: HscEnv -> TcM a -> IO (Messages TcRnMessage, Maybe a)
- pushTcLevelM :: TcM a -> TcM (TcLevel, a)
- pushTcLevelM_ :: TcM a -> TcM a
- recordUnsafeInfer :: Messages TcRnMessage -> TcM ()
- restoreLclEnv :: TcLclEnv -> TcRnIf gbl TcLclEnv a -> TcRnIf gbl TcLclEnv a
- setXOptM :: Extension -> TcRnIf gbl lcl a -> TcRnIf gbl lcl a
- tryTcDiscardingErrs :: TcM r -> TcM r -> TcM r
- updEnvs :: ((gbl, lcl) -> (gbl, lcl)) -> TcRnIf gbl lcl a -> TcRnIf gbl lcl a
- peCategory :: PromotionErr -> String
- pprPECategory :: PromotionErr -> SDoc
- bootExports :: SelfBootInfo -> NameSet
- emptyRoleAnnotEnv :: RoleAnnotEnv
- getLclEnvLoc :: TcLclEnv -> RealSrcSpan
- getLclEnvTcLevel :: TcLclEnv -> TcLevel
- getPlatform :: TcRnIf a b Platform
- getRoleAnnots :: [Name] -> RoleAnnotEnv -> [LRoleAnnotDecl GhcRn]
- hasCompleteSig :: TcSigFun -> Name -> Bool
- impLevel :: ThLevel
- isPartialSig :: TcIdSigInst -> Bool
- lclEnvInGeneratedCode :: TcLclEnv -> Bool
- lookupRoleAnnot :: RoleAnnotEnv -> Name -> Maybe (LRoleAnnotDecl GhcRn)
- mkRoleAnnotEnv :: [LRoleAnnotDecl GhcRn] -> RoleAnnotEnv
- outerLevel :: ThLevel
- pprTcTyThingCategory :: TcTyThing -> SDoc
- pushErrCtxt :: CtOrigin -> ErrCtxt -> CtLoc -> CtLoc
- pushErrCtxtSameOrigin :: ErrCtxt -> CtLoc -> CtLoc
- removeBindingShadowing :: HasOccName a => [a] -> [a]
- setLclEnvLoc :: TcLclEnv -> RealSrcSpan -> TcLclEnv
- setLclEnvTcLevel :: TcLclEnv -> TcLevel -> TcLclEnv
- tcTyThingCategory :: TcTyThing -> String
- tcTyThingTyCon_maybe :: TcTyThing -> Maybe TyCon
- tcVisibleOrphanMods :: TcGblEnv -> ModuleSet
- topAnnStage :: ThStage
- topSpliceStage :: ThStage
- topStage :: ThStage
- unsafeTcPluginTcM :: TcM a -> TcPluginM a
- addLocMA :: (a -> TcM b) -> GenLocated (SrcSpanAnn' ann) a -> TcM b
- chooseUniqueOccTc :: (OccSet -> OccName) -> TcM OccName
- getDeclaredDefaultTys :: TcRn (Maybe [Type])
- getLclTypeEnv :: TcM TcTypeEnv
- tcCollectingUsage :: TcM a -> TcM (UsageEnv, a)
- tcEmitBindingUsage :: UsageEnv -> TcM ()
- atomicUpdMutVar :: IORef a -> (a -> (a, b)) -> IOEnv env b
- atomicUpdMutVar' :: IORef a -> (a -> (a, b)) -> IOEnv env b
- failWithM :: String -> IOEnv env a
- runIOEnv :: env -> IOEnv env a -> IO a
- tryAllM :: IOEnv env r -> IOEnv env (Either SomeException r)
- tryMostM :: IOEnv env r -> IOEnv env (Either SomeException r)
- uninterruptibleMaskM_ :: IOEnv env a -> IOEnv env a
- unsafeInterleaveM :: IOEnv env a -> IOEnv env a
- updEnv :: (env -> env') -> IOEnv env' a -> IOEnv env a
- updMutVarM :: IORef a -> (a -> IOEnv env a) -> IOEnv env ()
- filterOutM :: Applicative m => (a -> m Bool) -> [a] -> m [a]
- foldlM_ :: (Monad m, Foldable t) => (a -> b -> m a) -> a -> t b -> m ()
- mapAccumLM :: (Monad m, Traversable t) => (acc -> x -> m (acc, y)) -> acc -> t x -> m (acc, t y)
- mapAndUnzip3M :: Monad m => (a -> m (b, c, d)) -> [a] -> m ([b], [c], [d])
- mapAndUnzip4M :: Monad m => (a -> m (b, c, d, e)) -> [a] -> m ([b], [c], [d], [e])
- mapAndUnzip5M :: Monad m => (a -> m (b, c, d, e, f)) -> [a] -> m ([b], [c], [d], [e], [f])
- mapSndM :: (Applicative m, Traversable f) => (b -> m c) -> f (a, b) -> m (f (a, c))
- zipWith3M_ :: Monad m => (a -> b -> c -> m d) -> [a] -> [b] -> [c] -> m ()
- zipWithAndUnzipM :: Monad m => (a -> b -> m (c, d)) -> [a] -> [b] -> m ([c], [d])
- addDiagnosticTc :: TcRnMessage -> TcM ()
- addDiagnosticTcM :: (TidyEnv, TcRnMessage) -> TcM ()
- addErrCtxtM :: (TidyEnv -> TcM (TidyEnv, SDoc)) -> TcM a -> TcM a
- addErrTcM :: (TidyEnv, TcRnMessage) -> TcM ()
- addLandmarkErrCtxt :: SDoc -> TcM a -> TcM a
- addLandmarkErrCtxtM :: (TidyEnv -> TcM (TidyEnv, SDoc)) -> TcM a -> TcM a
- addLocM :: (a -> TcM b) -> Located a -> TcM b
- addMessages :: Messages TcRnMessage -> TcRn ()
- addModFinalizersWithLclEnv :: ThModFinalizers -> TcM ()
- addTcEvBind :: EvBindsVar -> EvBind -> TcM ()
- attemptM :: TcRn r -> TcRn (Maybe r)
- checkTcM :: Bool -> (TidyEnv, TcRnMessage) -> TcM ()
- cloneEvBindsVar :: EvBindsVar -> TcM EvBindsVar
- cloneLocalName :: Name -> TcM Name
- debugTc :: TcM () -> TcM ()
- diagnosticTc :: Bool -> TcRnMessage -> TcM ()
- diagnosticTcM :: Bool -> (TidyEnv, TcRnMessage) -> TcM ()
- discardConstraints :: TcM a -> TcM a
- discardErrs :: TcRn a -> TcRn a
- discardResult :: TcM a -> TcM ()
- doptM :: DumpFlag -> TcRnIf gbl lcl Bool
- emitAnonTypeHole :: IsExtraConstraint -> TcTyVar -> TcM ()
- emitConstraints :: WantedConstraints -> TcM ()
- emitDelayedErrors :: Bag DelayedError -> TcM ()
- emitHole :: Hole -> TcM ()
- emitHoles :: Bag Hole -> TcM ()
- emitImplication :: Implication -> TcM ()
- emitImplications :: Bag Implication -> TcM ()
- emitInsoluble :: Ct -> TcM ()
- emitNotConcreteError :: NotConcreteError -> TcM ()
- emitSimple :: Ct -> TcM ()
- emitSimples :: Cts -> TcM ()
- emitStaticConstraints :: WantedConstraints -> TcM ()
- escapeArrowScope :: TcM a -> TcM a
- failAt :: SrcSpan -> TcRnMessage -> TcRn a
- failIfTc :: Bool -> TcRnMessage -> TcM ()
- failIfTcM :: Bool -> (TidyEnv, TcRnMessage) -> TcM ()
- failWithTcM :: (TidyEnv, TcRnMessage) -> TcM a
- foldAndRecoverM :: (b -> a -> TcRn b) -> b -> [a] -> TcRn b
- getCCIndexTcM :: FastString -> TcM CostCentreIndex
- getConstraintVar :: TcM (TcRef WantedConstraints)
- getCtLocM :: CtOrigin -> Maybe TypeOrKind -> TcM CtLoc
- getEpsVar :: TcRnIf gbl lcl (TcRef ExternalPackageState)
- getErrCtxt :: TcM [ErrCtxt]
- getErrsVar :: TcRn (TcRef (Messages TcRnMessage))
- getHpt :: TcRnIf gbl lcl HomePackageTable
- getRdrEnvs :: TcRn (GlobalRdrEnv, LocalRdrEnv)
- getRecFieldEnv :: TcRn RecFieldEnv
- getTcEvBindsMap :: EvBindsVar -> TcM EvBindMap
- getTcEvTyCoVars :: EvBindsVar -> TcM TyCoVarSet
- getTcLevel :: TcM TcLevel
- ifErrsM :: TcRn r -> TcRn r -> TcRn r
- inGeneratedCode :: TcRn Bool
- initTcWithGbl :: HscEnv -> TcGblEnv -> RealSrcSpan -> TcM r -> IO (Messages TcRnMessage, Maybe r)
- isTouchableTcM :: TcTyVar -> TcM Bool
- mapAndRecoverM :: (a -> TcRn b) -> [a] -> TcRn [b]
- mkDetailedMessage :: ErrInfo -> TcRnMessage -> TcRnMessageDetailed
- mkErrInfo :: TidyEnv -> [ErrCtxt] -> TcM SDoc
- mkTcRnMessage :: SrcSpan -> TcRnMessage -> TcRn (MsgEnvelope TcRnMessage)
- newArrowScope :: TcM a -> TcM a
- newNameAt :: OccName -> SrcSpan -> TcM Name
- newNoTcEvBinds :: TcM EvBindsVar
- newSysLocalId :: FastString -> Mult -> TcType -> TcRnIf gbl lcl TcId
- newSysLocalIds :: FastString -> [Scaled TcType] -> TcRnIf gbl lcl [TcId]
- newSysName :: OccName -> TcRnIf gbl lcl Name
- newTcEvBinds :: TcM EvBindsVar
- popErrCtxt :: TcM a -> TcM a
- printForUserTcRn :: SDoc -> TcRn ()
- pushLevelAndCaptureConstraints :: TcM a -> TcM (TcLevel, WantedConstraints, a)
- recordThNeededRuntimeDeps :: [Linkable] -> PkgsLoaded -> TcM ()
- recordThSpliceUse :: TcM ()
- recoverM :: TcRn r -> TcRn r -> TcRn r
- reportDiagnostic :: MsgEnvelope TcRnMessage -> TcRn ()
- reportDiagnostics :: [MsgEnvelope TcRnMessage] -> TcM ()
- setConstraintVar :: TcRef WantedConstraints -> TcM a -> TcM a
- setCtLocM :: CtLoc -> TcM a -> TcM a
- setErrCtxt :: [ErrCtxt] -> TcM a -> TcM a
- setErrsVar :: TcRef (Messages TcRnMessage) -> TcRn a -> TcRn a
- setLclTypeEnv :: TcLclEnv -> TcM a -> TcM a
- setLocalRdrEnv :: LocalRdrEnv -> RnM a -> RnM a
- setTcEvBindsMap :: EvBindsVar -> EvBindMap -> TcM ()
- setTcLevel :: TcLevel -> TcM a -> TcM a
- tcIsHsig :: TcRn Bool
- tcScalingUsage :: Mult -> TcM a -> TcM a
- tcSelfBootInfo :: TcRn SelfBootInfo
- traceOptIf :: DumpFlag -> SDoc -> TcRnIf m n ()
- traceTcConstraints :: String -> TcM ()
- tryCaptureConstraints :: TcM a -> TcM (Maybe a, WantedConstraints)
- tryTc :: TcRn a -> TcRn (Maybe a, Messages TcRnMessage)
- unlessXOptM :: Extension -> TcRnIf gbl lcl () -> TcRnIf gbl lcl ()
- updTopFlags :: (DynFlags -> DynFlags) -> TcRnIf gbl lcl a -> TcRnIf gbl lcl a
- updateEps :: (ExternalPackageState -> (ExternalPackageState, a)) -> TcRnIf gbl lcl a
- whenDOptM :: DumpFlag -> TcRnIf gbl lcl () -> TcRnIf gbl lcl ()
- whenNoErrs :: TcM () -> TcM ()
- whenXOptM :: Extension -> TcRnIf gbl lcl () -> TcRnIf gbl lcl ()
- wrapLocAM :: (a -> TcM b) -> LocatedAn an a -> TcM (Located b)
- wrapLocFstM :: (a -> TcM (b, c)) -> Located a -> TcM (Located b, c)
- wrapLocFstMA :: (a -> TcM (b, c)) -> GenLocated (SrcSpanAnn' ann) a -> TcM (GenLocated (SrcSpanAnn' ann) b, c)
- wrapLocM :: (a -> TcM b) -> Located a -> TcM (Located b)
- wrapLocMA :: (a -> TcM b) -> GenLocated (SrcSpanAnn' ann) a -> TcRn (GenLocated (SrcSpanAnn' ann) b)
- wrapLocMA_ :: (a -> TcM ()) -> LocatedA a -> TcM ()
- wrapLocM_ :: (a -> TcM ()) -> Located a -> TcM ()
- wrapLocSndM :: (a -> TcM (b, c)) -> Located a -> TcM (b, Located c)
- wrapLocSndMA :: (a -> TcM (b, c)) -> GenLocated (SrcSpanAnn' ann) a -> TcM (b, GenLocated (SrcSpanAnn' ann) c)
- data Name
- data OccName
- data NameSpace
- class NamedThing a where
  - getOccName :: a -> OccName
  - getName :: a -> Name
- data BuiltInSyntax
  - = BuiltInSyntax
  - | UserSyntax
- type TidyOccEnv = UniqFM FastString Int
- type OccSet = UniqSet OccName
- data OccEnv a
- class HasOccName name where
  - occName :: name -> OccName
- type FastStringEnv a = UniqFM FastString a
- mkVarOccFS :: FastString -> OccName
- nameModule :: HasDebugCallStack => Name -> Module
- nameModule_maybe :: Name -> Maybe Module
- nameOccName :: Name -> OccName
- nameSrcSpan :: Name -> SrcSpan
- dataName :: NameSpace
- isDataConNameSpace :: NameSpace -> Bool
- isTcClsNameSpace :: NameSpace -> Bool
- isTvNameSpace :: NameSpace -> Bool
- isVarNameSpace :: NameSpace -> Bool
- mkOccName :: NameSpace -> String -> OccName
- occNameString :: OccName -> String
- tcClsName :: NameSpace
- tvName :: NameSpace
- nonDetOccEnvElts :: OccEnv a -> [a]
- isSystemName :: Name -> Bool
- isExternalName :: Name -> Bool
- parenSymOcc :: OccName -> SDoc -> SDoc
- isBuiltInSyntax :: Name -> Bool
- mkExternalName :: Unique -> Module -> OccName -> SrcSpan -> Name
- mkInternalName :: Unique -> OccName -> SrcSpan -> Name
- mkSystemVarName :: Unique -> FastString -> Name
- clsName :: NameSpace
- mkOccNameFS :: NameSpace -> FastString -> OccName
- tcName :: NameSpace
- mkWiredInName :: Module -> OccName -> Unique -> TyThing -> BuiltInSyntax -> Name
- nameUnique :: Name -> Unique
- mkDataConWorkerOcc :: OccName -> OccName
- mkDataOccFS :: FastString -> OccName
- mkSuperDictSelOcc :: Int -> OccName -> OccName
- mkTcOccFS :: FastString -> OccName
- mkTyVarOccFS :: FastString -> OccName
- getOccString :: NamedThing a => a -> String
- tidyNameOcc :: Name -> OccName -> Name
- mkSystemName :: Unique -> OccName -> Name
- pprInfixName :: (Outputable a, NamedThing a) => a -> SDoc
- pprPrefixName :: NamedThing a => a -> SDoc
- elemOccSet :: OccName -> OccSet -> Bool
- mkOccSet :: [OccName] -> OccSet
- getSrcSpan :: NamedThing a => a -> SrcSpan
- initTidyOccEnv :: [OccName] -> TidyOccEnv
- isInternalName :: Name -> Bool
- nameIsLocalOrFrom :: Module -> Name -> Bool
- pprDefinedAt :: Name -> SDoc
- stableNameCmp :: Name -> Name -> Ordering
- isHoleName :: Name -> Bool
- isWiredInName :: Name -> Bool
- isTcOcc :: OccName -> Bool
- mkTyConRepOcc :: OccName -> OccName
- mkSysTvName :: Unique -> FastString -> Name
- isDefaultMethodOcc :: OccName -> Bool
- lookupOccEnv :: OccEnv a -> OccName -> Maybe a
- mkDefaultMethodOcc :: OccName -> OccName
- mkOccEnv :: [(OccName, a)] -> OccEnv a
- nameNameSpace :: Name -> NameSpace
- wiredInNameTyThing_maybe :: Name -> Maybe TyThing
- pprNameSpace :: NameSpace -> SDoc
- getOccFS :: NamedThing a => a -> FastString
- emptyOccEnv :: OccEnv a
- extendOccEnv :: OccEnv a -> OccName -> a -> OccEnv a
- extendOccEnvList :: OccEnv a -> [(OccName, a)] -> OccEnv a
- extendOccEnv_Acc :: (a -> b -> b) -> (a -> b) -> OccEnv b -> OccName -> a -> OccEnv b
- mkOccEnv_C :: (a -> a -> a) -> [(OccName, a)] -> OccEnv a
- isSymOcc :: OccName -> Bool
- mkClassDataConOcc :: OccName -> OccName
- mkDataConWrapperOcc :: OccName -> OccName
- mkNewTyCoOcc :: OccName -> OccName
- isWiredIn :: NamedThing thing => thing -> Bool
- localiseName :: Name -> Name
- tidyOccName :: TidyOccEnv -> OccName -> (TidyOccEnv, OccName)
- plusOccEnv_C :: (a -> a -> a) -> OccEnv a -> OccEnv a -> OccEnv a
- lookupFsEnv :: FastStringEnv a -> FastString -> Maybe a
- emptyFsEnv :: FastStringEnv a
- isDataConName :: Name -> Bool
- nameSrcLoc :: Name -> SrcLoc
- pprNameUnqualified :: Name -> SDoc
- isDataOcc :: OccName -> Bool
- occSetToEnv :: OccSet -> OccEnv OccName
- srcDataName :: NameSpace
- isValNameSpace :: NameSpace -> Bool
- nameIsHomePackage :: Module -> Name -> Bool
- nameIsFromExternalPackage :: HomeUnit -> Name -> Bool
- isDerivedOccName :: OccName -> Bool
- emptyOccSet :: OccSet
- extendOccSet :: OccSet -> OccName -> OccSet
- mkDFunOcc :: String -> Bool -> OccSet -> OccName
- mkInstTyCoOcc :: OccName -> OccName
- mkInstTyTcOcc :: String -> OccSet -> OccName
- mkDerivedInternalName :: (OccName -> OccName) -> Unique -> Name -> Name
- mkWorkerOcc :: OccName -> OccName
- extendFsEnv :: FastStringEnv a -> FastString -> a -> FastStringEnv a
- mkFsEnv :: [(FastString, a)] -> FastStringEnv a
- alterOccEnv :: (Maybe elt -> Maybe elt) -> OccEnv elt -> OccName -> OccEnv elt
- avoidClashesOccEnv :: TidyOccEnv -> [OccName] -> TidyOccEnv
- delFromOccEnv :: OccEnv a -> OccName -> OccEnv a
- delListFromOccEnv :: OccEnv a -> [OccName] -> OccEnv a
- delTidyOccEnvList :: TidyOccEnv -> [FastString] -> TidyOccEnv
- demoteOccName :: OccName -> Maybe OccName
- elemOccEnv :: OccName -> OccEnv a -> Bool
- emptyTidyOccEnv :: TidyOccEnv
- extendOccEnv_C :: (a -> a -> a) -> OccEnv a -> OccName -> a -> OccEnv a
- extendOccSetList :: OccSet -> [OccName] -> OccSet
- filterOccEnv :: (elt -> Bool) -> OccEnv elt -> OccEnv elt
- filterOccSet :: (OccName -> Bool) -> OccSet -> OccSet
- foldOccEnv :: (a -> b -> b) -> b -> OccEnv a -> b
- intersectOccSet :: OccSet -> OccSet -> OccSet
- isDataSymOcc :: OccName -> Bool
- isEmptyOccSet :: OccSet -> Bool
- isTvOcc :: OccName -> Bool
- isTypeableBindOcc :: OccName -> Bool
- isValOcc :: OccName -> Bool
- isVarOcc :: OccName -> Bool
- mapOccEnv :: (a -> b) -> OccEnv a -> OccEnv b
- minusOccEnv :: OccEnv a -> OccEnv b -> OccEnv a
- minusOccEnv_C :: (a -> b -> Maybe a) -> OccEnv a -> OccEnv b -> OccEnv a
- minusOccSet :: OccSet -> OccSet -> OccSet
- mkBuilderOcc :: OccName -> OccName
- mkClassOpAuxOcc :: OccName -> OccName
- mkClsOcc :: String -> OccName
- mkClsOccFS :: FastString -> OccName
- mkCon2TagOcc :: OccName -> OccName
- mkDataCOcc :: OccName -> OccName
- mkDataOcc :: String -> OccName
- mkDataTOcc :: OccName -> OccName
- mkDictOcc :: OccName -> OccName
- mkEqPredCoOcc :: OccName -> OccName
- mkForeignExportOcc :: OccName -> OccName
- mkGen1R :: OccName -> OccName
- mkGenR :: OccName -> OccName
- mkIPOcc :: OccName -> OccName
- mkLocalOcc :: Unique -> OccName -> OccName
- mkMatcherOcc :: OccName -> OccName
- mkMaxTagOcc :: OccName -> OccName
- mkMethodOcc :: OccName -> OccName
- mkRecFldSelOcc :: FastString -> OccName
- mkRepEqOcc :: OccName -> OccName
- mkSpecOcc :: OccName -> OccName
- mkSuperDictAuxOcc :: Int -> OccName -> OccName
- mkTag2ConOcc :: OccName -> OccName
- mkTcOcc :: String -> OccName
- mkTyVarOcc :: String -> OccName
- mkVarOcc :: String -> OccName
- plusOccEnv :: OccEnv a -> OccEnv a -> OccEnv a
- pprNameSpaceBrief :: IsLine doc => NameSpace -> doc
- pprNonVarNameSpace :: NameSpace -> SDoc
- pprOccEnv :: (a -> SDoc) -> OccEnv a -> SDoc
- pprOccName :: IsLine doc => OccName -> doc
- promoteOccName :: OccName -> Maybe OccName
- setOccNameSpace :: NameSpace -> OccName -> OccName
- startsWithUnderscore :: OccName -> Bool
- unionManyOccSets :: [OccSet] -> OccSet
- unionOccSets :: OccSet -> OccSet -> OccSet
- unitOccEnv :: OccName -> a -> OccEnv a
- unitOccSet :: OccName -> OccSet
- pprModulePrefix :: IsLine doc => PprStyle -> Module -> OccName -> doc
- pprName :: IsLine doc => Name -> doc
- getSrcLoc :: NamedThing a => a -> SrcLoc
- isDynLinkName :: Platform -> Module -> Name -> Bool
- isTyConName :: Name -> Bool
- isTyVarName :: Name -> Bool
- isValName :: Name -> Bool
- isVarName :: Name -> Bool
- mkClonedInternalName :: Unique -> Name -> Name
- mkFCallName :: Unique -> FastString -> Name
- mkSystemNameAt :: Unique -> OccName -> SrcSpan -> Name
- nameIsExternalOrFrom :: Module -> Name -> Bool
- nameIsHomePackageImport :: Module -> Name -> Bool
- namePun_maybe :: Name -> Maybe FastString
- nameStableString :: Name -> String
- pprFullName :: Module -> Name -> SDoc
- pprNameDefnLoc :: Name -> SDoc
- pprTickyName :: Module -> Name -> SDoc
- setNameLoc :: Name -> SrcSpan -> Name
- setNameUnique :: Name -> Unique -> Name
- data ImpDeclSpec = ImpDeclSpec {
  - is_mod :: ModuleName
  - is_as :: ModuleName
  - is_qual :: Bool
  - is_dloc :: SrcSpan
  }
- data ImportSpec = ImpSpec {
  - is_decl :: ImpDeclSpec
  - is_item :: ImpItemSpec
  }
- data RdrName
  - = Unqual OccName
  - | Qual ModuleName OccName
  - | Orig Module OccName
  - | Exact Name
- data Parent
  - = NoParent
  - | ParentIs {
    - par_is :: Name
    }
- type GlobalRdrEnv = OccEnv [GlobalRdrElt]
- data GlobalRdrElt
- data GreName
  - = NormalGreName Name
  - | FieldGreName FieldLabel
- data LocalRdrEnv
- data ImpItemSpec
  - = ImpAll
  - | ImpSome {
    - is_explicit :: Bool
    - is_iloc :: SrcSpan
    }
- isQual :: RdrName -> Bool
- globalRdrEnvElts :: GlobalRdrEnv -> [GlobalRdrElt]
- greMangledName :: GlobalRdrElt -> Name
- gresFromAvails :: Maybe ImportSpec -> [AvailInfo] -> [GlobalRdrElt]
- mkGlobalRdrEnv :: [GlobalRdrElt] -> GlobalRdrEnv
- mkOrig :: Module -> OccName -> RdrName
- mkUnqual :: NameSpace -> FastString -> RdrName
- nameRdrName :: Name -> RdrName
- getRdrName :: NamedThing thing => thing -> RdrName
- mkQual :: NameSpace -> (FastString, FastString) -> RdrName
- mkRdrUnqual :: OccName -> RdrName
- rdrNameOcc :: RdrName -> OccName
- bestImport :: [ImportSpec] -> ImportSpec
- emptyGlobalRdrEnv :: GlobalRdrEnv
- extendGlobalRdrEnv :: GlobalRdrEnv -> GlobalRdrElt -> GlobalRdrEnv
- greOccName :: GlobalRdrElt -> OccName
- greParent_maybe :: GlobalRdrElt -> Maybe Name
- gresFromAvail :: (Name -> Maybe ImportSpec) -> AvailInfo -> [GlobalRdrElt]
- gresToAvailInfo :: [GlobalRdrElt] -> [AvailInfo]
- isDuplicateRecFldGRE :: GlobalRdrElt -> Bool
- isExact :: RdrName -> Bool
- isLocalGRE :: GlobalRdrElt -> Bool
- isNoFieldSelectorGRE :: GlobalRdrElt -> Bool
- isRdrDataCon :: RdrName -> Bool
- isRdrTc :: RdrName -> Bool
- isRecFldGRE :: GlobalRdrElt -> Bool
- localGREsFromAvail :: AvailInfo -> [GlobalRdrElt]
- lookupGlobalRdrEnv :: GlobalRdrEnv -> OccName -> [GlobalRdrElt]
- minusLocalRdrEnv :: LocalRdrEnv -> OccEnv a -> LocalRdrEnv
- plusGlobalRdrEnv :: GlobalRdrEnv -> GlobalRdrEnv -> GlobalRdrEnv
- pprGlobalRdrEnv :: Bool -> GlobalRdrEnv -> SDoc
- shadowNames :: GlobalRdrEnv -> OccEnv a -> GlobalRdrEnv
- localRdrEnvElts :: LocalRdrEnv -> [Name]
- lookupGRE_Name :: GlobalRdrEnv -> Name -> Maybe GlobalRdrElt
- unQualOK :: GlobalRdrElt -> Bool
- extendLocalRdrEnvList :: LocalRdrEnv -> [Name] -> LocalRdrEnv
- emptyLocalRdrEnv :: LocalRdrEnv
- greNameSrcSpan :: GreName -> SrcSpan
- availFromGRE :: GlobalRdrElt -> AvailInfo
- demoteRdrName :: RdrName -> Maybe RdrName
- elemLocalRdrEnv :: RdrName -> LocalRdrEnv -> Bool
- extendLocalRdrEnv :: LocalRdrEnv -> Name -> LocalRdrEnv
- getGRE_NameQualifier_maybes :: GlobalRdrEnv -> Name -> [Maybe [ModuleName]]
- greDefinitionModule :: GlobalRdrElt -> Maybe Module
- greDefinitionSrcSpan :: GlobalRdrElt -> SrcSpan
- greFieldLabel :: GlobalRdrElt -> Maybe FieldLabel
- grePrintableName :: GlobalRdrElt -> Name
- greQualModName :: GlobalRdrElt -> ModuleName
- greRdrNames :: GlobalRdrElt -> [RdrName]
- greSrcSpan :: GlobalRdrElt -> SrcSpan
- importSpecLoc :: ImportSpec -> SrcSpan
- importSpecModule :: ImportSpec -> ModuleName
- inLocalRdrEnvScope :: Name -> LocalRdrEnv -> Bool
- isExact_maybe :: RdrName -> Maybe Name
- isExplicitItem :: ImpItemSpec -> Bool
- isFieldSelectorGRE :: GlobalRdrElt -> Bool
- isOrig :: RdrName -> Bool
- isOrig_maybe :: RdrName -> Maybe (Module, OccName)
- isQual_maybe :: RdrName -> Maybe (ModuleName, OccName)
- isRdrTyVar :: RdrName -> Bool
- isSrcRdrName :: RdrName -> Bool
- isUnqual :: RdrName -> Bool
- lookupGRE_FieldLabel :: GlobalRdrEnv -> FieldLabel -> Maybe GlobalRdrElt
- lookupGRE_GreName :: GlobalRdrEnv -> GreName -> Maybe GlobalRdrElt
- lookupGRE_Name_OccName :: GlobalRdrEnv -> Name -> OccName -> Maybe GlobalRdrElt
- lookupGRE_RdrName :: RdrName -> GlobalRdrEnv -> [GlobalRdrElt]
- lookupGRE_RdrName' :: RdrName -> GlobalRdrEnv -> [GlobalRdrElt]
- lookupLocalRdrEnv :: LocalRdrEnv -> RdrName -> Maybe Name
- lookupLocalRdrOcc :: LocalRdrEnv -> OccName -> Maybe Name
- mkRdrQual :: ModuleName -> OccName -> RdrName
- mkVarUnqual :: FastString -> RdrName
- opIsAt :: RdrName -> Bool
- pickGREs :: RdrName -> [GlobalRdrElt] -> [GlobalRdrElt]
- pickGREsModExp :: ModuleName -> [GlobalRdrElt] -> [(GlobalRdrElt, GlobalRdrElt)]
- pprNameProvenance :: GlobalRdrElt -> SDoc
- promoteRdrName :: RdrName -> Maybe RdrName
- qualSpecOK :: ModuleName -> ImportSpec -> Bool
- rdrNameSpace :: RdrName -> NameSpace
- transformGREs :: (GlobalRdrElt -> GlobalRdrElt) -> [OccName] -> GlobalRdrEnv -> GlobalRdrEnv
- unQualSpecOK :: ImportSpec -> Bool
- data Severity
  - = SevIgnore
  - | SevWarning
  - | SevError
- emptyMessages :: Messages e
- greNamePrintableName :: GreName -> Name
- data HscSource
  - = HsSrcFile
  - | HsBootFile
  - | HsigFile
- data Var
- setTyVarUnique :: TyVar -> Unique -> TyVar
- setVarUnique :: Var -> Unique -> Var
- type Module = GenModule Unit
- newtype ModuleName = ModuleName FastString
- type Unit = GenUnit UnitId
- data IsBootInterface
  - = NotBoot
  - | IsBoot
- data GenModule unit = Module !unit !ModuleName
- type ModuleSet = Set NDModule
- type InstalledModule = GenModule UnitId
- type Instantiations = GenInstantiations UnitId
- data GenUnit uid
  - = RealUnit !(Definite uid)
  - | VirtUnit !(GenInstantiatedUnit uid)
  - | HoleUnit
- data ModuleEnv elt
- newtype Definite unit = Definite {
  - unDefinite :: unit
  }
- data InstalledModuleEnv elt
- type ModuleNameWithIsBoot = GenWithIsBoot ModuleName
- class ContainsModule t where
  - extractModule :: t -> Module
- data GenWithIsBoot mod = GWIB {
  - gwib_mod :: mod
  - gwib_isBoot :: IsBootInterface
  }
- class HasModule (m :: Type -> Type) where
  - getModule :: m Module
- class IsUnitId u where
  - unitFS :: u -> FastString
- newtype UnitKey = UnitKey FastString
- type DModuleNameEnv elt = UniqDFM ModuleName elt
- type ModuleNameEnv elt = UniqFM ModuleName elt
- type DefUnitId = Definite UnitId
- data GenInstantiatedUnit unit = InstantiatedUnit {
  - instUnitFS :: !FastString
  - instUnitKey :: !Unique
  - instUnitInstanceOf :: !unit
  - instUnitInsts :: !(GenInstantiations unit)
  - instUnitHoles :: UniqDSet ModuleName
  }
- type GenInstantiations unit = [(ModuleName, GenModule (GenUnit unit))]
- type HomeUnitModule = GenModule UnitId
- type InstantiatedModule = GenModule InstantiatedUnit
- type InstantiatedUnit = GenInstantiatedUnit UnitId
- type ModuleWithIsBoot = GenWithIsBoot Module
- moduleNameString :: ModuleName -> String
- mkModule :: u -> ModuleName -> GenModule u
- stringToUnit :: String -> Unit
- unitString :: IsUnitId u => u -> String
- mkModuleName :: String -> ModuleName
- moduleUnitId :: Module -> UnitId
- mkModuleSet :: [Module] -> ModuleSet
- pprModule :: IsLine doc => Module -> doc
- mkModuleNameFS :: FastString -> ModuleName
- moduleNameColons :: ModuleName -> String
- moduleNameFS :: ModuleName -> FastString
- moduleNameSlashes :: ModuleName -> String
- parseModuleName :: ReadP ModuleName
- stableModuleNameCmp :: ModuleName -> ModuleName -> Ordering
- baseUnit :: Unit
- bignumUnit :: Unit
- interactiveUnit :: Unit
- mainUnit :: Unit
- primUnit :: Unit
- thisGhcUnit :: Unit
- elemModuleSet :: Module -> ModuleSet -> Bool
- isInteractiveModule :: Module -> Bool
- isHoleModule :: GenModule (GenUnit u) -> Bool
- mkModuleEnv :: [(Module, a)] -> ModuleEnv a
- moduleEnvToList :: ModuleEnv a -> [(Module, a)]
- mainUnitId :: UnitId
- stringToUnitId :: String -> UnitId
- mapModuleEnv :: (a -> b) -> ModuleEnv a -> ModuleEnv b
- emptyModuleEnv :: ModuleEnv a
- getModuleInstantiation :: Module -> (InstalledModule, Maybe InstantiatedModule)
- installedModuleEq :: InstalledModule -> Module -> Bool
- moduleIsDefinite :: Module -> Bool
- uninstantiateInstantiatedModule :: InstantiatedModule -> InstantiatedModule
- elemModuleEnv :: Module -> ModuleEnv a -> Bool
- extendInstalledModuleEnv :: InstalledModuleEnv a -> InstalledModule -> a -> InstalledModuleEnv a
- extendModuleEnv :: ModuleEnv a -> Module -> a -> ModuleEnv a
- lookupInstalledModuleEnv :: InstalledModuleEnv a -> InstalledModule -> Maybe a
- addBootSuffixLocn_maybe :: IsBootInterface -> ModLocation -> ModLocation
- moduleFreeHoles :: GenModule (GenUnit u) -> UniqDSet ModuleName
- primUnitId :: UnitId
- baseUnitId :: UnitId
- unitIdFS :: UnitId -> FastString
- emptyInstalledModuleEnv :: InstalledModuleEnv a
- emptyModuleSet :: ModuleSet
- extendModuleSetList :: ModuleSet -> [Module] -> ModuleSet
- mergeInstalledModuleEnv :: (elta -> eltb -> Maybe eltc) -> (InstalledModuleEnv elta -> InstalledModuleEnv eltc) -> (InstalledModuleEnv eltb -> InstalledModuleEnv eltc) -> InstalledModuleEnv elta -> InstalledModuleEnv eltb -> InstalledModuleEnv eltc
- moduleSetElts :: ModuleSet -> [Module]
- unitModuleEnv :: Module -> a -> ModuleEnv a
- lookupModuleEnv :: ModuleEnv a -> Module -> Maybe a
- installedModuleEnvElts :: InstalledModuleEnv a -> [(InstalledModule, a)]
- moduleEnvKeys :: ModuleEnv a -> [Module]
- plusInstalledModuleEnv :: (elt -> elt -> elt) -> InstalledModuleEnv elt -> InstalledModuleEnv elt -> InstalledModuleEnv elt
- plusModuleEnv_C :: (a -> a -> a) -> ModuleEnv a -> ModuleEnv a -> ModuleEnv a
- lookupWithDefaultModuleEnv :: ModuleEnv a -> a -> Module -> a
- moduleStableString :: Module -> String
- stableModuleCmp :: Module -> Module -> Ordering
- pprUnit :: IsLine doc => Unit -> doc
- extendModuleEnvWith :: (a -> a -> a) -> ModuleEnv a -> Module -> a -> ModuleEnv a
- mkHoleModule :: ModuleName -> GenModule (GenUnit u)
- mapGenUnit :: IsUnitId v => (u -> v) -> GenUnit u -> GenUnit v
- mkVirtUnit :: IsUnitId u => u -> [(ModuleName, GenModule (GenUnit u))] -> GenUnit u
- delInstalledModuleEnv :: InstalledModuleEnv a -> InstalledModule -> InstalledModuleEnv a
- delModuleEnv :: ModuleEnv a -> Module -> ModuleEnv a
- delModuleEnvList :: ModuleEnv a -> [Module] -> ModuleEnv a
- delModuleSet :: ModuleSet -> Module -> ModuleSet
- extendModuleEnvList :: ModuleEnv a -> [(Module, a)] -> ModuleEnv a
- extendModuleEnvList_C :: (a -> a -> a) -> ModuleEnv a -> [(Module, a)] -> ModuleEnv a
- extendModuleSet :: ModuleSet -> Module -> ModuleSet
- filterInstalledModuleEnv :: (InstalledModule -> a -> Bool) -> InstalledModuleEnv a -> InstalledModuleEnv a
- filterModuleEnv :: (Module -> a -> Bool) -> ModuleEnv a -> ModuleEnv a
- intersectModuleSet :: ModuleSet -> ModuleSet -> ModuleSet
- isEmptyModuleEnv :: ModuleEnv a -> Bool
- isEmptyModuleSet :: ModuleSet -> Bool
- mapMaybeModuleEnv :: (Module -> a -> Maybe b) -> ModuleEnv a -> ModuleEnv b
- minusModuleSet :: ModuleSet -> ModuleSet -> ModuleSet
- moduleEnvElts :: ModuleEnv a -> [a]
- partitionModuleEnv :: (a -> Bool) -> ModuleEnv a -> (ModuleEnv a, ModuleEnv a)
- plusModuleEnv :: ModuleEnv a -> ModuleEnv a -> ModuleEnv a
- unionManyModuleSets :: [ModuleSet] -> ModuleSet
- unionModuleSet :: ModuleSet -> ModuleSet -> ModuleSet
- unitModuleSet :: Module -> ModuleSet
- addBootSuffix :: FilePath -> FilePath
- addBootSuffixLocn :: ModLocation -> ModLocation
- addBootSuffix_maybe :: IsBootInterface -> FilePath -> FilePath
- removeBootSuffix :: FilePath -> FilePath
- bignumUnitId :: UnitId
- fsToUnit :: FastString -> Unit
- interactiveUnitId :: UnitId
- isHoleUnit :: GenUnit u -> Bool
- mapInstantiations :: IsUnitId v => (u -> v) -> GenInstantiations u -> GenInstantiations v
- mkInstantiatedUnit :: IsUnitId u => u -> GenInstantiations u -> GenInstantiatedUnit u
- mkInstantiatedUnitHash :: IsUnitId u => u -> [(ModuleName, GenModule (GenUnit u))] -> FastString
- pprInstantiatedModule :: InstantiatedModule -> SDoc
- rtsUnit :: Unit
- rtsUnitId :: UnitId
- stableUnitCmp :: Unit -> Unit -> Ordering
- thUnit :: Unit
- thUnitId :: UnitId
- thisGhcUnitId :: UnitId
- unitFreeModuleHoles :: GenUnit u -> UniqDSet ModuleName
- unitIdString :: UnitId -> String
- unitIsDefinite :: Unit -> Bool
- virtualUnitId :: InstantiatedUnit -> UnitId
- wiredInUnitIds :: [UnitId]
- getUnitInstantiations :: Unit -> (UnitId, Maybe InstantiatedUnit)
- uninstantiateInstantiatedUnit :: InstantiatedUnit -> InstantiatedUnit
- data HsModule p
  - = HsModule {
    - hsmodExt :: XCModule p
    - hsmodName :: Maybe (XRec p ModuleName)
    - hsmodExports :: Maybe (XRec p [LIE p])
    - hsmodImports :: [LImportDecl p]
    - hsmodDecls :: [LHsDecl p]
    }
  - | XModule !(XXModule p)
- data SrcSpanAnn' a
- getOptions :: ParserOpts -> StringBuffer -> FilePath -> (Messages PsMessage, [Located String])
- checkProcessArgsResult :: MonadIO m => [Located String] -> m ()
- getOptionsFromFile :: ParserOpts -> FilePath -> IO (Messages PsMessage, [Located String])
- mkPrelImports :: ModuleName -> SrcSpan -> Bool -> [LImportDecl GhcPs] -> [LImportDecl GhcPs]
- toArgs :: RealSrcLoc -> String -> Either String [Located String]
- data Token
  - = ITas
  - | ITcase
  - | ITclass
  - | ITdata
  - | ITdefault
  - | ITderiving
  - | ITdo (Maybe FastString)
  - | ITelse
  - | IThiding
  - | ITforeign
  - | ITif
  - | ITimport
  - | ITin
  - | ITinfix
  - | ITinfixl
  - | ITinfixr
  - | ITinstance
  - | ITlet
  - | ITmodule
  - | ITnewtype
  - | ITof
  - | ITqualified
  - | ITthen
  - | ITtype
  - | ITwhere
  - | ITforall IsUnicodeSyntax
  - | ITexport
  - | ITlabel
  - | ITdynamic
  - | ITsafe
  - | ITinterruptible
  - | ITunsafe
  - | ITstdcallconv
  - | ITccallconv
  - | ITcapiconv
  - | ITprimcallconv
  - | ITjavascriptcallconv
  - | ITmdo (Maybe FastString)
  - | ITfamily
  - | ITrole
  - | ITgroup
  - | ITby
  - | ITusing
  - | ITpattern
  - | ITstatic
  - | ITstock
  - | ITanyclass
  - | ITvia
  - | ITunit
  - | ITsignature
  - | ITdependency
  - | ITrequires
  - | ITinline_prag SourceText InlineSpec RuleMatchInfo
  - | ITopaque_prag SourceText
  - | ITspec_prag SourceText
  - | ITspec_inline_prag SourceText Bool
  - | ITsource_prag SourceText
  - | ITrules_prag SourceText
  - | ITwarning_prag SourceText
  - | ITdeprecated_prag SourceText
  - | ITline_prag SourceText
  - | ITcolumn_prag SourceText
  - | ITscc_prag SourceText
  - | ITunpack_prag SourceText
  - | ITnounpack_prag SourceText
  - | ITann_prag SourceText
  - | ITcomplete_prag SourceText
  - | ITclose_prag
  - | IToptions_prag String
  - | ITinclude_prag String
  - | ITlanguage_prag
  - | ITminimal_prag SourceText
  - | IToverlappable_prag SourceText
  - | IToverlapping_prag SourceText
  - | IToverlaps_prag SourceText
  - | ITincoherent_prag SourceText
  - | ITctype SourceText
  - | ITcomment_line_prag
  - | ITdotdot
  - | ITcolon
  - | ITdcolon IsUnicodeSyntax
  - | ITequal
  - | ITlam
  - | ITlcase
  - | ITlcases
  - | ITvbar
  - | ITlarrow IsUnicodeSyntax
  - | ITrarrow IsUnicodeSyntax
  - | ITdarrow IsUnicodeSyntax
  - | ITlolly
  - | ITminus
  - | ITprefixminus
  - | ITbang
  - | ITtilde
  - | ITat
  - | ITtypeApp
  - | ITpercent
  - | ITstar IsUnicodeSyntax
  - | ITdot
  - | ITproj Bool
  - | ITbiglam
  - | ITocurly
  - | ITccurly
  - | ITvocurly
  - | ITvccurly
  - | ITobrack
  - | ITopabrack
  - | ITcpabrack
  - | ITcbrack
  - | IToparen
  - | ITcparen
  - | IToubxparen
  - | ITcubxparen
  - | ITsemi
  - | ITcomma
  - | ITunderscore
  - | ITbackquote
  - | ITsimpleQuote
  - | ITvarid FastString
  - | ITconid FastString
  - | ITvarsym FastString
  - | ITconsym FastString
  - | ITqvarid (FastString, FastString)
  - | ITqconid (FastString, FastString)
  - | ITqvarsym (FastString, FastString)
  - | ITqconsym (FastString, FastString)
  - | ITdupipvarid FastString
  - | ITlabelvarid SourceText FastString
  - | ITchar SourceText Char
  - | ITstring SourceText FastString
  - | ITinteger IntegralLit
  - | ITrational FractionalLit
  - | ITprimchar SourceText Char
  - | ITprimstring SourceText ByteString
  - | ITprimint SourceText Integer
  - | ITprimword SourceText Integer
  - | ITprimfloat FractionalLit
  - | ITprimdouble FractionalLit
  - | ITopenExpQuote HasE IsUnicodeSyntax
  - | ITopenPatQuote
  - | ITopenDecQuote
  - | ITopenTypQuote
  - | ITcloseQuote IsUnicodeSyntax
  - | ITopenTExpQuote HasE
  - | ITcloseTExpQuote
  - | ITdollar
  - | ITdollardollar
  - | ITtyQuote
  - | ITquasiQuote (FastString, FastString, PsSpan)
  - | ITqQuasiQuote (FastString, FastString, FastString, PsSpan)
  - | ITproc
  - | ITrec
  - | IToparenbar IsUnicodeSyntax
  - | ITcparenbar IsUnicodeSyntax
  - | ITlarrowtail IsUnicodeSyntax
  - | ITrarrowtail IsUnicodeSyntax
  - | ITLarrowtail IsUnicodeSyntax
  - | ITRarrowtail IsUnicodeSyntax
  - | ITunknown String
  - | ITeof
  - | ITdocComment HsDocString PsSpan
  - | ITdocOptions String PsSpan
  - | ITlineComment String PsSpan
  - | ITblockComment String PsSpan
- newtype P a = P {
  - unP :: PState -> ParseResult a
  }
- class Monad m => MonadP (m :: Type -> Type) where
  - addError :: MsgEnvelope PsMessage -> m ()
  - addWarning :: MsgEnvelope PsMessage -> m ()
  - addFatalError :: MsgEnvelope PsMessage -> m a
  - getBit :: ExtBits -> m Bool
  - allocateCommentsP :: RealSrcSpan -> m EpAnnComments
  - allocatePriorCommentsP :: RealSrcSpan -> m EpAnnComments
  - allocateFinalCommentsP :: RealSrcSpan -> m EpAnnComments
- data ParseResult a :: TYPE ('SumRep '['TupleRep '[LiftedRep, LiftedRep], LiftedRep]) where
  - pattern PFailed :: PState -> ParseResult a
  - pattern POk :: PState -> a -> ParseResult a
- data PState = PState {
  - buffer :: StringBuffer
  - options :: ParserOpts
  - warnings :: Messages PsMessage
  - errors :: Messages PsMessage
  - tab_first :: Maybe RealSrcSpan
  - tab_count :: !Word
  - last_tk :: Maybe (PsLocated Token)
  - prev_loc :: PsSpan
  - prev_loc2 :: PsSpan
  - last_loc :: PsSpan
  - last_len :: !Int
  - loc :: PsLoc
  - context :: [LayoutContext]
  - lex_state :: [Int]
  - srcfiles :: [FastString]
  - alr_pending_implicit_tokens :: [PsLocated Token]
  - alr_next_token :: Maybe (PsLocated Token)
  - alr_last_loc :: PsSpan
  - alr_context :: [ALRContext]
  - alr_expecting_ocurly :: Maybe ALRLayout
  - alr_justClosedExplicitLetBlock :: Bool
  - eof_pos :: Maybe (Pair RealSrcSpan RealSrcSpan)
  - header_comments :: Maybe [LEpaComment]
  - comment_q :: [LEpaComment]
  - hdk_comments :: OrdList (PsLocated HdkComment)
  }
- data HdkComment
  - = HdkCommentNext HsDocString
  - | HdkCommentPrev HsDocString
  - | HdkCommentNamed String HsDocString
  - | HdkCommentSection Int HsDocString
- data ParserOpts = ParserOpts {
  - pExtsBitmap :: !ExtsBitmap
  - pDiagOpts :: !DiagOpts
  - pSupportedExts :: [String]
  }
- data ExtBits
  - = FfiBit
  - | InterruptibleFfiBit
  - | CApiFfiBit
  - | ArrowsBit
  - | ThBit
  - | ThQuotesBit
  - | IpBit
  - | OverloadedLabelsBit
  - | ExplicitForallBit
  - | BangPatBit
  - | PatternSynonymsBit
  - | HaddockBit
  - | MagicHashBit
  - | RecursiveDoBit
  - | QualifiedDoBit
  - | UnicodeSyntaxBit
  - | UnboxedParensBit
  - | DatatypeContextsBit
  - | MonadComprehensionsBit
  - | TransformComprehensionsBit
  - | QqBit
  - | RawTokenStreamBit
  - | AlternativeLayoutRuleBit
  - | ALRTransitionalBit
  - | RelaxedLayoutBit
  - | NondecreasingIndentationBit
  - | SafeHaskellBit
  - | TraditionalRecordSyntaxBit
  - | ExplicitNamespacesBit
  - | LambdaCaseBit
  - | BinaryLiteralsBit
  - | NegativeLiteralsBit
  - | HexFloatLiteralsBit
  - | StaticPointersBit
  - | NumericUnderscoresBit
  - | StarIsTypeBit
  - | BlockArgumentsBit
  - | NPlusKPatternsBit
  - | DoAndIfThenElseBit
  - | MultiWayIfBit
  - | GadtSyntaxBit
  - | ImportQualifiedPostBit
  - | LinearTypesBit
  - | NoLexicalNegationBit
  - | OverloadedRecordDotBit
  - | OverloadedRecordUpdateBit
  - | InRulePragBit
  - | InNestedCommentBit
  - | UsePosPragsBit
- getPsErrorMessages :: PState -> Messages PsMessage
- lexTokenStream :: ParserOpts -> StringBuffer -> RealSrcLoc -> ParseResult [Located Token]
- getCommentsFor :: MonadP m => SrcSpan -> m EpAnnComments
- getEofPos :: P (Maybe (Pair RealSrcSpan RealSrcSpan))
- getFinalCommentsFor :: MonadP m => SrcSpan -> m EpAnnComments
- getPriorCommentsFor :: MonadP m => SrcSpan -> m EpAnnComments
- getRealSrcLoc :: P RealSrcLoc
- lexer :: Bool -> (Located Token -> P a) -> P a
- popContext :: P ()
- pushModuleContext :: P ()
- srcParseFail :: P a
- disableHaddock :: ParserOpts -> ParserOpts
- initPragState :: ParserOpts -> StringBuffer -> RealSrcLoc -> PState
- activeContext :: P Bool
- addPsMessage :: SrcSpan -> PsMessage -> P ()
- adjustChar :: Char -> Word8
- allocateComments :: RealSrcSpan -> [LEpaComment] -> ([LEpaComment], [LEpaComment])
- allocateFinalComments :: RealSrcSpan -> [LEpaComment] -> Maybe [LEpaComment] -> (Maybe [LEpaComment], [LEpaComment], [LEpaComment])
- allocatePriorComments :: RealSrcSpan -> [LEpaComment] -> Maybe [LEpaComment] -> (Maybe [LEpaComment], [LEpaComment], [LEpaComment])
- commentToAnnotation :: RealLocated Token -> LEpaComment
- failLocMsgP :: RealSrcLoc -> RealSrcLoc -> (SrcSpan -> MsgEnvelope PsMessage) -> P a
- failMsgP :: (SrcSpan -> MsgEnvelope PsMessage) -> P a
- getLexState :: P Int
- getPState :: P PState
- lexerDbg :: Bool -> (Located Token -> P a) -> P a
- mkParensEpAnn :: RealSrcSpan -> (AddEpAnn, AddEpAnn)
- mkParserOpts :: EnumSet Extension -> DiagOpts -> [String] -> Bool -> Bool -> Bool -> Bool -> ParserOpts
- nextIsEOF :: P Bool
- popLexState :: P Int
- pushLexState :: Int -> P ()
- setLastToken :: PsSpan -> Int -> P ()
- setSrcLoc :: RealSrcLoc -> P ()
- warnopt :: WarningFlag -> ParserOpts -> Bool
- xset :: ExtBits -> ExtsBitmap -> ExtsBitmap
- xtest :: ExtBits -> ExtsBitmap -> Bool
- xunset :: ExtBits -> ExtsBitmap -> ExtsBitmap
- data CompileReason
  - = MustCompile
  - | RecompBecause !RecompReason
- hsc_type_env_vars :: HscEnv -> KnotVars (IORef TypeEnv)
- hscUpdateHUG :: (HomeUnitGraph -> HomeUnitGraph) -> HscEnv -> HscEnv
- hscUpdateHPT :: (HomePackageTable -> HomePackageTable) -> HscEnv -> HscEnv
- hsc_HUG :: HscEnv -> HomeUnitGraph
- data GhcMessage where
  - GhcPsMessage :: PsMessage -> GhcMessage
  - GhcTcRnMessage :: TcRnMessage -> GhcMessage
  - GhcDsMessage :: DsMessage -> GhcMessage
  - GhcDriverMessage :: DriverMessage -> GhcMessage
  - GhcUnknownMessage :: UnknownDiagnostic -> GhcMessage
- getKey :: Unique -> Int
- class (Typeable e, Show e) => Exception e where
  - toException :: e -> SomeException
  - fromException :: SomeException -> Maybe e
  - displayException :: e -> String
- data GhcException
  - = Signal Int
  - | UsageError String
  - | CmdLineError String
  - | Panic String
  - | PprPanic String SDoc
  - | Sorry String
  - | PprSorry String SDoc
  - | InstallationError String
  - | ProgramError String
  - | PprProgramError String SDoc
- try :: Exception e => IO a -> IO (Either e a)
- throwTo :: Exception e => ThreadId -> e -> IO ()
- showException :: Exception e => e -> String
- panic :: HasCallStack => String -> a
- panicDoc :: String -> SDoc -> a
- pprPanic :: HasCallStack => String -> SDoc -> a
- handleGhcException :: ExceptionMonad m => (GhcException -> m a) -> m a -> m a
- showGhcException :: SDocContext -> GhcException -> ShowS
- throwGhcExceptionIO :: GhcException -> IO a
- withSignalHandlers :: ExceptionMonad m => m a -> m a
- assertPpr :: HasCallStack => Bool -> SDoc -> a -> a
- assertPprMaybe :: HasCallStack => Maybe SDoc -> a -> a
- massertPpr :: (HasCallStack, Applicative m) => Bool -> SDoc -> m ()
- callStackDoc :: HasCallStack => SDoc
- throwGhcException :: GhcException -> a
- cmdLineError :: String -> a
- pgmError :: HasCallStack => String -> a
- tryMost :: IO a -> IO (Either SomeException a)
- sorry :: HasCallStack => String -> a
- assertPanic :: String -> Int -> a
- cmdLineErrorIO :: String -> IO a
- safeShowException :: Exception e => e -> IO String
- assertPprM :: (HasCallStack, Monad m) => m Bool -> SDoc -> m ()
- assertPprPanic :: HasCallStack => SDoc -> a
- pgmErrorDoc :: String -> SDoc -> a
- prettyCallStackDoc :: CallStack -> SDoc
- showGhcExceptionUnsafe :: GhcException -> ShowS
- sorryDoc :: String -> SDoc -> a
- data Extension
  - = OverlappingInstances
  - | UndecidableInstances
  - | IncoherentInstances
  - | UndecidableSuperClasses
  - | MonomorphismRestriction
  - | MonoLocalBinds
  - | DeepSubsumption
  - | RelaxedPolyRec
  - | ExtendedDefaultRules
  - | ForeignFunctionInterface
  - | UnliftedFFITypes
  - | InterruptibleFFI
  - | CApiFFI
  - | GHCForeignImportPrim
  - | JavaScriptFFI
  - | ParallelArrays
  - | Arrows
  - | TemplateHaskell
  - | TemplateHaskellQuotes
  - | QualifiedDo
  - | QuasiQuotes
  - | ImplicitParams
  - | ImplicitPrelude
  - | ScopedTypeVariables
  - | AllowAmbiguousTypes
  - | UnboxedTuples
  - | UnboxedSums
  - | UnliftedNewtypes
  - | UnliftedDatatypes
  - | BangPatterns
  - | TypeFamilies
  - | TypeFamilyDependencies
  - | TypeInType
  - | OverloadedStrings
  - | OverloadedLists
  - | NumDecimals
  - | DisambiguateRecordFields
  - | RecordWildCards
  - | NamedFieldPuns
  - | ViewPatterns
  - | GADTs
  - | GADTSyntax
  - | NPlusKPatterns
  - | DoAndIfThenElse
  - | BlockArguments
  - | RebindableSyntax
  - | ConstraintKinds
  - | PolyKinds
  - | DataKinds
  - | TypeData
  - | InstanceSigs
  - | ApplicativeDo
  - | LinearTypes
  - | StandaloneDeriving
  - | DeriveDataTypeable
  - | AutoDeriveTypeable
  - | DeriveFunctor
  - | DeriveTraversable
  - | DeriveFoldable
  - | DeriveGeneric
  - | DefaultSignatures
  - | DeriveAnyClass
  - | DeriveLift
  - | DerivingStrategies
  - | DerivingVia
  - | TypeSynonymInstances
  - | FlexibleContexts
  - | FlexibleInstances
  - | ConstrainedClassMethods
  - | MultiParamTypeClasses
  - | NullaryTypeClasses
  - | FunctionalDependencies
  - | UnicodeSyntax
  - | ExistentialQuantification
  - | MagicHash
  - | EmptyDataDecls
  - | KindSignatures
  - | RoleAnnotations
  - | ParallelListComp
  - | TransformListComp
  - | MonadComprehensions
  - | GeneralizedNewtypeDeriving
  - | RecursiveDo
  - | PostfixOperators
  - | TupleSections
  - | PatternGuards
  - | LiberalTypeSynonyms
  - | RankNTypes
  - | ImpredicativeTypes
  - | TypeOperators
  - | ExplicitNamespaces
  - | PackageImports
  - | ExplicitForAll
  - | AlternativeLayoutRule
  - | AlternativeLayoutRuleTransitional
  - | DatatypeContexts
  - | NondecreasingIndentation
  - | RelaxedLayout
  - | TraditionalRecordSyntax
  - | LambdaCase
  - | MultiWayIf
  - | BinaryLiterals
  - | NegativeLiterals
  - | HexFloatLiterals
  - | DuplicateRecordFields
  - | OverloadedLabels
  - | EmptyCase
  - | PatternSynonyms
  - | PartialTypeSignatures
  - | NamedWildCards
  - | StaticPointers
  - | TypeApplications
  - | Strict
  - | StrictData
  - | EmptyDataDeriving
  - | NumericUnderscores
  - | QuantifiedConstraints
  - | StarIsType
  - | ImportQualifiedPost
  - | CUSKs
  - | StandaloneKindSignatures
  - | LexicalNegation
  - | FieldSelectors
  - | OverloadedRecordDot
  - | OverloadedRecordUpdate
- data UniqFM key ele
- mkCgInteractiveGuts :: CgGuts -> CgInteractiveGuts
- justBytecode :: Linkable -> HomeModLinkable
- justObjects :: Linkable -> HomeModLinkable
- emptyHomeModInfoLinkable :: HomeModLinkable
- homeModInfoByteCode :: HomeModInfo -> Maybe Linkable
- homeModInfoObject :: HomeModInfo -> Maybe Linkable
- groupOrigin :: MatchGroup p body -> XMG p body

# Session

data DynFlags #

extensions :: DynFlags -> [OnOff Extension] #

extensionFlags :: DynFlags -> EnumSet Extension #

targetPlatform :: DynFlags -> Platform #

packageFlags :: DynFlags -> [PackageFlag] #

generalFlags :: DynFlags -> EnumSet GeneralFlag #

warningFlags :: DynFlags -> EnumSet WarningFlag #

topDir :: DynFlags -> FilePath #

hiDir :: DynFlags -> Maybe String #

tmpDir :: DynFlags -> TempDir #

importPaths :: DynFlags -> [FilePath] #

useColor :: DynFlags -> OverridingBool #

canUseColor :: DynFlags -> Bool #

useUnicode :: DynFlags -> Bool #

objectDir :: DynFlags -> Maybe String #

flagsForCompletion :: Bool -> [String] #

setImportPaths :: [FilePath] -> DynFlags -> DynFlags #

outputFile :: DynFlags -> Maybe String #

pluginModNames :: DynFlags -> [ModuleName] #

refLevelHoleFits :: DynFlags -> Maybe Int #

maxRefHoleFits :: DynFlags -> Maybe Int #

maxValidHoleFits :: DynFlags -> Maybe Int #

setOutputFile :: Maybe String -> DynFlags -> DynFlags #

lookupType :: HscEnv -> Name -> IO (Maybe TyThing) #

needWiredInHomeIface :: TyThing -> Bool #

loadWiredInHomeIface :: Name -> IfM lcl () #

readIface :: DynFlags -> NameCache -> Module -> FilePath -> IO (MaybeErr SDoc ModIface) #

loadSysInterface :: SDoc -> Module -> IfM lcl ModIface #

importDecl :: Name -> IfM lcl (MaybeErr SDoc TyThing) #

type CommandLineOption = String #

sPgm_F :: Settings -> String #

settings :: DynFlags -> Settings #

gopt :: GeneralFlag -> DynFlags -> Bool #

gopt_set :: DynFlags -> GeneralFlag -> DynFlags #

gopt_unset :: DynFlags -> GeneralFlag -> DynFlags #

wopt :: WarningFlag -> DynFlags -> Bool #

wopt_set :: DynFlags -> WarningFlag -> DynFlags #

xFlags :: [FlagSpec Extension] #

xopt :: Extension -> DynFlags -> Bool #

xopt_unset :: DynFlags -> Extension -> DynFlags #

xopt_set :: DynFlags -> Extension -> DynFlags #

data FlagSpec flag #

Constructors

FlagSpec |
Fields flagSpecName :: String flagSpecFlag :: flag flagSpecAction :: TurnOnFlag -> DynP () flagSpecGhcMode :: GhcFlagMode

data WarningFlag #

Constructors

Opt_WarnDuplicateExports |
Opt_WarnDuplicateConstraints |
Opt_WarnRedundantConstraints |
Opt_WarnHiShadows |
Opt_WarnImplicitPrelude |
Opt_WarnIncompletePatterns |
Opt_WarnIncompleteUniPatterns |
Opt_WarnIncompletePatternsRecUpd |
Opt_WarnOverflowedLiterals |
Opt_WarnEmptyEnumerations |
Opt_WarnMissingFields |
Opt_WarnMissingImportList |
Opt_WarnMissingMethods |
Opt_WarnMissingSignatures |
Opt_WarnMissingLocalSignatures |
Opt_WarnNameShadowing |
Opt_WarnOverlappingPatterns |
Opt_WarnTypeDefaults |
Opt_WarnMonomorphism |
Opt_WarnUnusedTopBinds |
Opt_WarnUnusedLocalBinds |
Opt_WarnUnusedPatternBinds |
Opt_WarnUnusedImports |
Opt_WarnUnusedMatches |
Opt_WarnUnusedTypePatterns |
Opt_WarnUnusedForalls |
Opt_WarnUnusedRecordWildcards |
Opt_WarnRedundantBangPatterns |
Opt_WarnRedundantRecordWildcards |
Opt_WarnWarningsDeprecations |
Opt_WarnDeprecatedFlags |
Opt_WarnMissingMonadFailInstances |
Opt_WarnSemigroup |
Opt_WarnDodgyExports |
Opt_WarnDodgyImports |
Opt_WarnOrphans |
Opt_WarnAutoOrphans |
Opt_WarnIdentities |
Opt_WarnTabs |
Opt_WarnUnrecognisedPragmas |
Opt_WarnMisplacedPragmas |
Opt_WarnDodgyForeignImports |
Opt_WarnUnusedDoBind |
Opt_WarnWrongDoBind |
Opt_WarnAlternativeLayoutRuleTransitional |
Opt_WarnUnsafe |
Opt_WarnSafe |
Opt_WarnTrustworthySafe |
Opt_WarnMissedSpecs |
Opt_WarnAllMissedSpecs |
Opt_WarnUnsupportedCallingConventions |
Opt_WarnUnsupportedLlvmVersion |
Opt_WarnMissedExtraSharedLib |
Opt_WarnInlineRuleShadowing |
Opt_WarnTypedHoles |
Opt_WarnPartialTypeSignatures |
Opt_WarnMissingExportedSignatures |
Opt_WarnUntickedPromotedConstructors |
Opt_WarnDerivingTypeable |
Opt_WarnDeferredTypeErrors |
Opt_WarnDeferredOutOfScopeVariables |
Opt_WarnNonCanonicalMonadInstances |
Opt_WarnNonCanonicalMonadFailInstances |
Opt_WarnNonCanonicalMonoidInstances |
Opt_WarnMissingPatternSynonymSignatures |
Opt_WarnUnrecognisedWarningFlags |
Opt_WarnSimplifiableClassConstraints |
Opt_WarnCPPUndef |
Opt_WarnUnbangedStrictPatterns |
Opt_WarnMissingHomeModules |
Opt_WarnPartialFields |
Opt_WarnMissingExportList |
Opt_WarnInaccessibleCode |
Opt_WarnStarIsType |
Opt_WarnStarBinder |
Opt_WarnImplicitKindVars |
Opt_WarnSpaceAfterBang |
Opt_WarnMissingDerivingStrategies |
Opt_WarnPrepositiveQualifiedModule |
Opt_WarnUnusedPackages |
Opt_WarnInferredSafeImports |
Opt_WarnMissingSafeHaskellMode |
Opt_WarnCompatUnqualifiedImports |
Opt_WarnDerivingDefaults |
Opt_WarnInvalidHaddock |
Opt_WarnOperatorWhitespaceExtConflict |
Opt_WarnOperatorWhitespace |
Opt_WarnAmbiguousFields |
Opt_WarnImplicitLift |
Opt_WarnMissingKindSignatures |
Opt_WarnMissingExportedPatternSynonymSignatures |
Opt_WarnRedundantStrictnessFlags |
Opt_WarnForallIdentifier |
Opt_WarnUnicodeBidirectionalFormatCharacters |
Opt_WarnGADTMonoLocalBinds |
Opt_WarnTypeEqualityOutOfScope |
Opt_WarnTypeEqualityRequiresOperators |
Opt_WarnLoopySuperclassSolve |

#### Instances

Instances details

Enum WarningFlag |
Instance details Defined in GHC.Driver.Flags Methods succ :: WarningFlag -> WarningFlag pred :: WarningFlag -> WarningFlag toEnum :: Int -> WarningFlag fromEnum :: WarningFlag -> Int enumFrom :: WarningFlag -> [WarningFlag] enumFromThen :: WarningFlag -> WarningFlag -> [WarningFlag] enumFromTo :: WarningFlag -> WarningFlag -> [WarningFlag] enumFromThenTo :: WarningFlag -> WarningFlag -> WarningFlag -> [WarningFlag]
Show WarningFlag |
Instance details Defined in GHC.Driver.Flags Methods showsPrec :: Int -> WarningFlag -> ShowS # show :: WarningFlag -> String # showList :: [WarningFlag] -> ShowS #
Eq WarningFlag |
Instance details Defined in GHC.Driver.Flags Methods (==) :: WarningFlag -> WarningFlag -> Bool # (/=) :: WarningFlag -> WarningFlag -> Bool #
Ord WarningFlag |
Instance details Defined in GHC.Driver.Flags Methods compare :: WarningFlag -> WarningFlag -> Ordering (<) :: WarningFlag -> WarningFlag -> Bool (<=) :: WarningFlag -> WarningFlag -> Bool (>) :: WarningFlag -> WarningFlag -> Bool (>=) :: WarningFlag -> WarningFlag -> Bool max :: WarningFlag -> WarningFlag -> WarningFlag min :: WarningFlag -> WarningFlag -> WarningFlag

data GeneralFlag #

Constructors

Opt_DumpToFile |
Opt_DumpWithWays |
Opt_D_dump_minimal_imports |
Opt_DoCoreLinting |
Opt_DoLinearCoreLinting |
Opt_DoStgLinting |
Opt_DoCmmLinting |
Opt_DoAsmLinting |
Opt_DoAnnotationLinting |
Opt_DoBoundsChecking |
Opt_NoLlvmMangler |
Opt_FastLlvm |
Opt_NoTypeableBinds |
Opt_DistinctConstructorTables |
Opt_InfoTableMap |
Opt_InfoTableMapWithFallback |
Opt_InfoTableMapWithStack |
Opt_WarnIsError |
Opt_ShowWarnGroups |
Opt_HideSourcePaths |
Opt_PrintExplicitForalls |
Opt_PrintExplicitKinds |
Opt_PrintExplicitCoercions |
Opt_PrintExplicitRuntimeReps |
Opt_PrintEqualityRelations |
Opt_PrintAxiomIncomps |
Opt_PrintUnicodeSyntax |
Opt_PrintExpandedSynonyms |
Opt_PrintPotentialInstances |
Opt_PrintRedundantPromotionTicks |
Opt_PrintTypecheckerElaboration |
Opt_CallArity |
Opt_Exitification |
Opt_Strictness |
Opt_LateDmdAnal |
Opt_KillAbsence |
Opt_KillOneShot |
Opt_FullLaziness |
Opt_FloatIn |
Opt_LocalFloatOut |
Opt_LocalFloatOutTopLevel |
Opt_LateSpecialise |
Opt_Specialise |
Opt_SpecialiseAggressively |
Opt_CrossModuleSpecialise |
Opt_PolymorphicSpecialisation |
Opt_InlineGenerics |
Opt_InlineGenericsAggressively |
Opt_StaticArgumentTransformation |
Opt_CSE |
Opt_StgCSE |
Opt_StgLiftLams |
Opt_LiberateCase |
Opt_SpecConstr |
Opt_SpecConstrKeen |
Opt_DoLambdaEtaExpansion |
Opt_IgnoreAsserts |
Opt_DoEtaReduction |
Opt_CaseMerge |
Opt_CaseFolding |
Opt_UnboxStrictFields |
Opt_UnboxSmallStrictFields |
Opt_DictsCheap |
Opt_EnableRewriteRules |
Opt_EnableThSpliceWarnings |
Opt_RegsGraph |
Opt_RegsIterative |
Opt_PedanticBottoms |
Opt_LlvmTBAA |
Opt_LlvmFillUndefWithGarbage |
Opt_IrrefutableTuples |
Opt_CmmSink |
Opt_CmmStaticPred |
Opt_CmmElimCommonBlocks |
Opt_CmmControlFlow |
Opt_AsmShortcutting |
Opt_OmitYields |
Opt_FunToThunk |
Opt_DictsStrict |
Opt_DmdTxDictSel |
Opt_Loopification |
Opt_CfgBlocklayout |
Opt_WeightlessBlocklayout |
Opt_CprAnal |
Opt_WorkerWrapper |
Opt_WorkerWrapperUnlift |
Opt_SolveConstantDicts |
Opt_AlignmentSanitisation |
Opt_CatchNonexhaustiveCases |
Opt_NumConstantFolding |
Opt_CoreConstantFolding |
Opt_FastPAPCalls |
Opt_DoTagInferenceChecks |
Opt_SimplPreInlining |
Opt_IgnoreInterfacePragmas |
Opt_OmitInterfacePragmas |
Opt_ExposeAllUnfoldings |
Opt_WriteInterface |
Opt_WriteHie |
Opt_AutoSccsOnIndividualCafs |
Opt_ProfCountEntries |
Opt_ProfLateInlineCcs |
Opt_ProfLateCcs |
Opt_ProfManualCcs |
Opt_Pp |
Opt_ForceRecomp |
Opt_IgnoreOptimChanges |
Opt_IgnoreHpcChanges |
Opt_ExcessPrecision |
Opt_EagerBlackHoling |
Opt_NoHsMain |
Opt_SplitSections |
Opt_StgStats |
Opt_HideAllPackages |
Opt_HideAllPluginPackages |
Opt_PrintBindResult |
Opt_Haddock |
Opt_HaddockOptions |
Opt_BreakOnException |
Opt_BreakOnError |
Opt_PrintEvldWithShow |
Opt_PrintBindContents |
Opt_GenManifest |
Opt_EmbedManifest |
Opt_SharedImplib |
Opt_BuildingCabalPackage |
Opt_IgnoreDotGhci |
Opt_GhciSandbox |
Opt_GhciHistory |
Opt_GhciLeakCheck |
Opt_ValidateHie |
Opt_LocalGhciHistory |
Opt_NoIt |
Opt_HelpfulErrors |
Opt_DeferTypeErrors |
Opt_DeferTypedHoles |
Opt_DeferOutOfScopeVariables |
Opt_PIC |
Opt_PIE |
Opt_PICExecutable |
Opt_ExternalDynamicRefs |
Opt_Ticky |
Opt_Ticky_Allocd |
Opt_Ticky_LNE |
Opt_Ticky_Dyn_Thunk |
Opt_Ticky_Tag |
Opt_Ticky_AP |
Opt_CmmThreadSanitizer |
Opt_RPath |
Opt_RelativeDynlibPaths |
Opt_CompactUnwind |
Opt_Hpc |
Opt_FamAppCache |
Opt_ExternalInterpreter |
Opt_OptimalApplicativeDo |
Opt_VersionMacros |
Opt_WholeArchiveHsLibs |
Opt_SingleLibFolder |
Opt_ExposeInternalSymbols |
Opt_KeepCAFs |
Opt_KeepGoing |
Opt_ByteCode |
Opt_ByteCodeAndObjectCode |
Opt_LinkRts |
Opt_ErrorSpans |
Opt_DeferDiagnostics |
Opt_DiagnosticsShowCaret |
Opt_PprCaseAsLet |
Opt_PprShowTicks |
Opt_ShowHoleConstraints |
Opt_ShowValidHoleFits |
Opt_SortValidHoleFits |
Opt_SortBySizeHoleFits |
Opt_SortBySubsumHoleFits |
Opt_AbstractRefHoleFits |
Opt_UnclutterValidHoleFits |
Opt_ShowTypeAppOfHoleFits |
Opt_ShowTypeAppVarsOfHoleFits |
Opt_ShowDocsOfHoleFits |
Opt_ShowTypeOfHoleFits |
Opt_ShowProvOfHoleFits |
Opt_ShowMatchesOfHoleFits |
Opt_ShowLoadedModules |
Opt_HexWordLiterals |
Opt_SuppressCoercions |
Opt_SuppressCoercionTypes |
Opt_SuppressVarKinds |
Opt_SuppressModulePrefixes |
Opt_SuppressTypeApplications |
Opt_SuppressIdInfo |
Opt_SuppressUnfoldings |
Opt_SuppressTypeSignatures |
Opt_SuppressUniques |
Opt_SuppressStgExts |
Opt_SuppressStgReps |
Opt_SuppressTicks |
Opt_SuppressTimestamps |
Opt_SuppressCoreSizes |
Opt_ShowErrorContext |
Opt_AutoLinkPackages |
Opt_ImplicitImportQualified |
Opt_KeepHscppFiles |
Opt_KeepHiDiffs |
Opt_KeepHcFiles |
Opt_KeepSFiles |
Opt_KeepTmpFiles |
Opt_KeepRawTokenStream |
Opt_KeepLlvmFiles |
Opt_KeepHiFiles |
Opt_KeepOFiles |
Opt_BuildDynamicToo |
Opt_WriteIfSimplifiedCore |
Opt_UseBytecodeRatherThanObjects |
Opt_DistrustAllPackages |
Opt_PackageTrust |
Opt_PluginTrustworthy |
Opt_G_NoStateHack |
Opt_G_NoOptCoercion |

#### Instances

Instances details

Enum GeneralFlag |
Instance details Defined in GHC.Driver.Flags Methods succ :: GeneralFlag -> GeneralFlag pred :: GeneralFlag -> GeneralFlag toEnum :: Int -> GeneralFlag fromEnum :: GeneralFlag -> Int enumFrom :: GeneralFlag -> [GeneralFlag] enumFromThen :: GeneralFlag -> GeneralFlag -> [GeneralFlag] enumFromTo :: GeneralFlag -> GeneralFlag -> [GeneralFlag] enumFromThenTo :: GeneralFlag -> GeneralFlag -> GeneralFlag -> [GeneralFlag]
Show GeneralFlag |
Instance details Defined in GHC.Driver.Flags Methods showsPrec :: Int -> GeneralFlag -> ShowS # show :: GeneralFlag -> String # showList :: [GeneralFlag] -> ShowS #
Eq GeneralFlag |
Instance details Defined in GHC.Driver.Flags Methods (==) :: GeneralFlag -> GeneralFlag -> Bool # (/=) :: GeneralFlag -> GeneralFlag -> Bool #

data PackageFlag #

#### Instances

Instances details

Show PackageFlag # |
Instance details Defined in Development.IDE.GHC.Orphans Methods showsPrec :: Int -> PackageFlag -> ShowS # show :: PackageFlag -> String # showList :: [PackageFlag] -> ShowS #
Outputable PackageFlag |
Instance details Defined in GHC.Driver.Session Methods ppr :: PackageFlag -> SDoc #
Eq PackageFlag |
Instance details Defined in GHC.Driver.Session Methods (==) :: PackageFlag -> PackageFlag -> Bool # (/=) :: PackageFlag -> PackageFlag -> Bool #

data PackageArg #

Constructors

PackageArg String |
UnitIdArg Unit |

#### Instances

Instances details

Show PackageArg |
Instance details Defined in GHC.Driver.Session Methods showsPrec :: Int -> PackageArg -> ShowS # show :: PackageArg -> String # showList :: [PackageArg] -> ShowS #
Outputable PackageArg |
Instance details Defined in GHC.Driver.Session Methods ppr :: PackageArg -> SDoc #
Eq PackageArg |
Instance details Defined in GHC.Driver.Session Methods (==) :: PackageArg -> PackageArg -> Bool # (/=) :: PackageArg -> PackageArg -> Bool #

data ModRenaming #

Constructors

ModRenaming |
Fields modRenamingWithImplicit :: Bool modRenamings :: [(ModuleName, ModuleName)]

#### Instances

Instances details

Outputable ModRenaming |
Instance details Defined in GHC.Driver.Session Methods ppr :: ModRenaming -> SDoc #
Eq ModRenaming |
Instance details Defined in GHC.Driver.Session Methods (==) :: ModRenaming -> ModRenaming -> Bool # (/=) :: ModRenaming -> ModRenaming -> Bool #

pattern ExposePackage :: String -> PackageArg -> ModRenaming -> PackageFlag #

parseDynamicFlagsCmdLine :: MonadIO m => DynFlags -> [Located String] -> m (DynFlags, [Located String], [Warn]) #

parseDynamicFilePragma :: MonadIO m => DynFlags -> [Located String] -> m (DynFlags, [Located String], [Warn]) #

wWarningFlags :: [FlagSpec WarningFlag] #

updOptLevel :: Int -> DynFlags -> DynFlags #

setUnsafeGlobalDynFlags :: DynFlags -> IO () #

# Linear Haskell

scaledThing :: Scaled a -> a #

# Interface Files

type IfaceExport = AvailInfo #

data IfaceTyCon #

Constructors

IfaceTyCon |
Fields ifaceTyConName :: IfExtName ifaceTyConInfo :: IfaceTyConInfo

#### Instances

Instances details

NFData IfaceTyCon |
Instance details Defined in GHC.Iface.Type Methods rnf :: IfaceTyCon -> () #
Binary IfaceTyCon |
Instance details Defined in GHC.Iface.Type Methods put_ :: BinHandle -> IfaceTyCon -> IO () put :: BinHandle -> IfaceTyCon -> IO (Bin IfaceTyCon) get :: BinHandle -> IO IfaceTyCon
Outputable IfaceTyCon |
Instance details Defined in GHC.Iface.Type Methods ppr :: IfaceTyCon -> SDoc #
Eq IfaceTyCon |
Instance details Defined in GHC.Iface.Type Methods (==) :: IfaceTyCon -> IfaceTyCon -> Bool # (/=) :: IfaceTyCon -> IfaceTyCon -> Bool #

type ModIface = ModIface_ 'ModIfaceFinal #

data ModIface_ (phase :: ModIfacePhase) #

Constructors

ModIface |
Fields mi_module :: !Module mi_sig_of :: !(Maybe Module) mi_hsc_src :: !HscSource mi_deps :: Dependencies mi_usages :: [Usage] mi_exports :: ![IfaceExport] mi_used_th :: !Bool mi_fixities :: [(OccName, Fixity)] mi_warns :: Warnings GhcRn mi_anns :: [IfaceAnnotation] mi_decls :: [IfaceDeclExts phase] mi_extra_decls :: Maybe [IfaceBindingX IfaceMaybeRhs IfaceTopBndrInfo] mi_globals :: !(Maybe GlobalRdrEnv) mi_insts :: [IfaceClsInst] mi_fam_insts :: [IfaceFamInst] mi_rules :: [IfaceRule] mi_hpc :: !AnyHpcUsage mi_trust :: !IfaceTrustInfo mi_trust_pkg :: !Bool mi_complete_matches :: ![IfaceCompleteMatch] mi_docs :: !(Maybe Docs) mi_final_exts :: !(IfaceBackendExts phase) mi_ext_fields :: !ExtensibleFields mi_src_hash :: !Fingerprint

#### Instances

Instances details

Binary ModIface |
Instance details Defined in GHC.Unit.Module.ModIface Methods put_ :: BinHandle -> ModIface -> IO () put :: BinHandle -> ModIface -> IO (Bin ModIface) get :: BinHandle -> IO ModIface
(NFData (IfaceBackendExts phase), NFData (IfaceDeclExts phase)) => NFData (ModIface_ phase) |
Instance details Defined in GHC.Unit.Module.ModIface Methods rnf :: ModIface_ phase -> () #

data HscSource #

Constructors

HsSrcFile |
HsBootFile |
HsigFile |

#### Instances

Instances details

Show HscSource |
Instance details Defined in GHC.Types.SourceFile Methods showsPrec :: Int -> HscSource -> ShowS # show :: HscSource -> String # showList :: [HscSource] -> ShowS #
Binary HscSource |
Instance details Defined in GHC.Types.SourceFile Methods put_ :: BinHandle -> HscSource -> IO () put :: BinHandle -> HscSource -> IO (Bin HscSource) get :: BinHandle -> IO HscSource
Eq HscSource |
Instance details Defined in GHC.Types.SourceFile Methods (==) :: HscSource -> HscSource -> Bool # (/=) :: HscSource -> HscSource -> Bool #
Ord HscSource |
Instance details Defined in GHC.Types.SourceFile Methods compare :: HscSource -> HscSource -> Ordering (<) :: HscSource -> HscSource -> Bool (<=) :: HscSource -> HscSource -> Bool (>) :: HscSource -> HscSource -> Bool (>=) :: HscSource -> HscSource -> Bool max :: HscSource -> HscSource -> HscSource min :: HscSource -> HscSource -> HscSource

data WhereFrom #

Constructors

ImportByUser IsBootInterface |
ImportBySystem |
ImportByPlugin |

#### Instances

Instances details

Outputable WhereFrom |
Instance details Defined in GHC.Tc.Types Methods ppr :: WhereFrom -> SDoc #

loadInterface :: SDoc -> Module -> WhereFrom -> IfM lcl (MaybeErr SDoc ModIface) #

loadModuleInterface :: SDoc -> Module -> TcM ModIface #

data RecompileRequired #

Constructors

UpToDate |
NeedsRecompile !CompileReason |

#### Instances

Instances details

Monoid RecompileRequired |
Instance details Defined in GHC.Iface.Recomp Methods mempty :: RecompileRequired # mappend :: RecompileRequired -> RecompileRequired -> RecompileRequired # mconcat :: [RecompileRequired] -> RecompileRequired #
Semigroup RecompileRequired |
Instance details Defined in GHC.Iface.Recomp Methods (<>) :: RecompileRequired -> RecompileRequired -> RecompileRequired # sconcat :: NonEmpty RecompileRequired -> RecompileRequired # stimes :: Integral b => b -> RecompileRequired -> RecompileRequired #
Outputable RecompileRequired |
Instance details Defined in GHC.Iface.Recomp Methods ppr :: RecompileRequired -> SDoc #
Eq RecompileRequired |
Instance details Defined in GHC.Iface.Recomp Methods (==) :: RecompileRequired -> RecompileRequired -> Bool # (/=) :: RecompileRequired -> RecompileRequired -> Bool #

mkPartialIface :: HscEnv -> CoreProgram -> ModDetails -> ModSummary -> ModGuts -> PartialModIface #

mkFullIface :: HscEnv -> PartialModIface -> Maybe StgCgInfos -> Maybe CmmCgInfos -> IO ModIface #

checkOldIface :: HscEnv -> ModSummary -> Maybe ModIface -> IO (MaybeValidated ModIface) #

data IsBootInterface #

Constructors

NotBoot |
IsBoot |

#### Instances

Instances details

Data IsBootInterface |
Instance details Defined in Language.Haskell.Syntax.ImpExp Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> IsBootInterface -> c IsBootInterface gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c IsBootInterface toConstr :: IsBootInterface -> Constr dataTypeOf :: IsBootInterface -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c IsBootInterface) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c IsBootInterface) gmapT :: (forall b. Data b => b -> b) -> IsBootInterface -> IsBootInterface gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> IsBootInterface -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> IsBootInterface -> r gmapQ :: (forall d. Data d => d -> u) -> IsBootInterface -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> IsBootInterface -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> IsBootInterface -> m IsBootInterface gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> IsBootInterface -> m IsBootInterface gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> IsBootInterface -> m IsBootInterface
Show IsBootInterface |
Instance details Defined in Language.Haskell.Syntax.ImpExp Methods showsPrec :: Int -> IsBootInterface -> ShowS # show :: IsBootInterface -> String # showList :: [IsBootInterface] -> ShowS #
Eq IsBootInterface |
Instance details Defined in Language.Haskell.Syntax.ImpExp Methods (==) :: IsBootInterface -> IsBootInterface -> Bool # (/=) :: IsBootInterface -> IsBootInterface -> Bool #
Ord IsBootInterface |
Instance details Defined in Language.Haskell.Syntax.ImpExp Methods compare :: IsBootInterface -> IsBootInterface -> Ordering (<) :: IsBootInterface -> IsBootInterface -> Bool (<=) :: IsBootInterface -> IsBootInterface -> Bool (>) :: IsBootInterface -> IsBootInterface -> Bool (>=) :: IsBootInterface -> IsBootInterface -> Bool max :: IsBootInterface -> IsBootInterface -> IsBootInterface min :: IsBootInterface -> IsBootInterface -> IsBootInterface

# Fixity

data LexicalFixity #

Constructors

Prefix |
Infix |

#### Instances

Instances details

Data LexicalFixity |
Instance details Defined in GHC.Types.Fixity Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> LexicalFixity -> c LexicalFixity gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c LexicalFixity toConstr :: LexicalFixity -> Constr dataTypeOf :: LexicalFixity -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c LexicalFixity) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c LexicalFixity) gmapT :: (forall b. Data b => b -> b) -> LexicalFixity -> LexicalFixity gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> LexicalFixity -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> LexicalFixity -> r gmapQ :: (forall d. Data d => d -> u) -> LexicalFixity -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> LexicalFixity -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> LexicalFixity -> m LexicalFixity gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> LexicalFixity -> m LexicalFixity gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> LexicalFixity -> m LexicalFixity
Outputable LexicalFixity |
Instance details Defined in GHC.Types.Fixity Methods ppr :: LexicalFixity -> SDoc #
Eq LexicalFixity |
Instance details Defined in GHC.Types.Fixity Methods (==) :: LexicalFixity -> LexicalFixity -> Bool # (/=) :: LexicalFixity -> LexicalFixity -> Bool #

data Fixity #

Constructors

Fixity SourceText Int FixityDirection |

#### Instances

Instances details

Data Fixity |
Instance details Defined in GHC.Types.Fixity Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Fixity -> c Fixity gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Fixity toConstr :: Fixity -> Constr dataTypeOf :: Fixity -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Fixity) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Fixity) gmapT :: (forall b. Data b => b -> b) -> Fixity -> Fixity gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Fixity -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Fixity -> r gmapQ :: (forall d. Data d => d -> u) -> Fixity -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> Fixity -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> Fixity -> m Fixity gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Fixity -> m Fixity gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Fixity -> m Fixity
Binary Fixity |
Instance details Defined in GHC.Types.Fixity Methods put_ :: BinHandle -> Fixity -> IO () put :: BinHandle -> Fixity -> IO (Bin Fixity) get :: BinHandle -> IO Fixity
Outputable Fixity |
Instance details Defined in GHC.Types.Fixity Methods ppr :: Fixity -> SDoc #
Eq Fixity |
Instance details Defined in GHC.Types.Fixity Methods (==) :: Fixity -> Fixity -> Bool # (/=) :: Fixity -> Fixity -> Bool #

mi_fix :: ModIface -> OccName -> Fixity #

defaultFixity :: Fixity #

lookupFixityRn :: Name -> RnM Fixity #

# ModSummary

data ModSummary #

Constructors

ModSummary |
Fields ms_mod :: Module ms_hsc_src :: HscSource ms_location :: ModLocation ms_hs_hash :: Fingerprint ms_obj_date :: Maybe UTCTime ms_dyn_obj_date :: !(Maybe UTCTime) ms_iface_date :: Maybe UTCTime ms_hie_date :: Maybe UTCTime ms_srcimps :: [(PkgQual, Located ModuleName)] ms_textual_imps :: [(PkgQual, Located ModuleName)] ms_ghc_prim_import :: !Bool ms_parsed_mod :: Maybe HsParsedModule ms_hspp_file :: FilePath ms_hspp_opts :: DynFlags ms_hspp_buf :: Maybe StringBuffer

#### Instances

Instances details

Show ModSummary # |
Instance details Defined in Development.IDE.GHC.Orphans Methods showsPrec :: Int -> ModSummary -> ShowS # show :: ModSummary -> String # showList :: [ModSummary] -> ShowS #
NFData ModSummary # |
Instance details Defined in Development.IDE.GHC.Orphans Methods rnf :: ModSummary -> () #
Outputable ModSummary |
Instance details Defined in GHC.Unit.Module.ModSummary Methods ppr :: ModSummary -> SDoc #

# HomeModInfo

data HomeModInfo #

Constructors

HomeModInfo |
Fields hm_iface :: !ModIface hm_details :: ModDetails hm_linkable :: !HomeModLinkable

#### Instances

Instances details

Show HomeModInfo # |
Instance details Defined in Development.IDE.GHC.Orphans Methods showsPrec :: Int -> HomeModInfo -> ShowS # show :: HomeModInfo -> String # showList :: [HomeModInfo] -> ShowS #
NFData HomeModInfo # |
Instance details Defined in Development.IDE.GHC.Orphans Methods rnf :: HomeModInfo -> () #

# ModGuts

data ModGuts #

Constructors

ModGuts |
Fields mg_module :: !Module mg_hsc_src :: HscSource mg_loc :: SrcSpan mg_exports :: ![AvailInfo] mg_deps :: !Dependencies mg_usages :: ![Usage] mg_used_th :: !Bool mg_rdr_env :: !GlobalRdrEnv mg_fix_env :: !FixityEnv mg_tcs :: ![TyCon] mg_insts :: ![ClsInst] mg_fam_insts :: ![FamInst] mg_patsyns :: ![PatSyn] mg_rules :: ![CoreRule] mg_binds :: !CoreProgram mg_foreign :: !ForeignStubs mg_foreign_files :: ![(ForeignSrcLang, FilePath)] mg_warns :: !(Warnings GhcRn) mg_anns :: [Annotation] mg_complete_matches :: [CompleteMatch] mg_hpc_info :: !HpcInfo mg_modBreaks :: !(Maybe ModBreaks) mg_inst_env :: InstEnv mg_fam_inst_env :: FamInstEnv mg_boot_exports :: !NameSet mg_safe_haskell :: SafeHaskellMode mg_trust_pkg :: Bool mg_docs :: !(Maybe Docs)

#### Instances

Instances details

Show ModGuts # |
Instance details Defined in Development.IDE.GHC.Orphans Methods showsPrec :: Int -> ModGuts -> ShowS # show :: ModGuts -> String # showList :: [ModGuts] -> ShowS #
NFData ModGuts # |
Instance details Defined in Development.IDE.GHC.Orphans Methods rnf :: ModGuts -> () #

data CgGuts #

Constructors

CgGuts |
Fields cg_module :: !Module cg_tycons :: [TyCon] cg_binds :: CoreProgram cg_ccs :: [CostCentre] cg_foreign :: !ForeignStubs cg_foreign_files :: ![(ForeignSrcLang, FilePath)] cg_dep_pkgs :: !(Set UnitId) cg_hpc_info :: !HpcInfo cg_modBreaks :: !(Maybe ModBreaks) cg_spt_entries :: [SptEntry]

#### Instances

Instances details

Show CgGuts # |
Instance details Defined in Development.IDE.GHC.Orphans Methods showsPrec :: Int -> CgGuts -> ShowS # show :: CgGuts -> String # showList :: [CgGuts] -> ShowS #
NFData CgGuts # |
Instance details Defined in Development.IDE.GHC.Orphans Methods rnf :: CgGuts -> () #

# ModDetails

data ModDetails #

Constructors

ModDetails |
Fields md_exports :: [AvailInfo] md_types :: !TypeEnv md_insts :: InstEnv md_fam_insts :: ![FamInst] md_rules :: ![CoreRule] md_anns :: ![Annotation] md_complete_matches :: [CompleteMatch]

#### Instances

Instances details

Show ModDetails # |
Instance details Defined in Development.IDE.GHC.Orphans Methods showsPrec :: Int -> ModDetails -> ShowS # show :: ModDetails -> String # showList :: [ModDetails] -> ShowS #
NFData ModDetails # |
Instance details Defined in Development.IDE.GHC.Orphans Methods rnf :: ModDetails -> () #

# HsExpr,

# Var

data Type #

Constructors

TyVarTy Var |
AppTy Type Type |
TyConApp TyCon [KindOrType] |
ForAllTy !ForAllTyBinder Type |
LitTy TyLit |
CastTy Type KindCoercion |
CoercionTy Coercion |

#### Instances

Instances details

Data Type |
Instance details Defined in GHC.Core.TyCo.Rep Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Type -> c Type gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Type toConstr :: Type -> Constr dataTypeOf :: Type -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Type) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Type) gmapT :: (forall b. Data b => b -> b) -> Type -> Type gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Type -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Type -> r gmapQ :: (forall d. Data d => d -> u) -> Type -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> Type -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> Type -> m Type gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Type -> m Type gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Type -> m Type
NFData Type # |
Instance details Defined in Development.IDE.GHC.Orphans Methods rnf :: Type -> () #
Outputable Type |
Instance details Defined in GHC.Core.TyCo.Rep Methods ppr :: Type -> SDoc #
Eq (DeBruijn Type) |
Instance details Defined in GHC.Core.Map.Type Methods (==) :: DeBruijn Type -> DeBruijn Type -> Bool # (/=) :: DeBruijn Type -> DeBruijn Type -> Bool #

pattern FunTy :: Type -> Type -> Type #

pattern ConPatIn :: Located (ConLikeP GhcPs) -> HsConPatDetails GhcPs -> Pat GhcPs #

conPatDetails :: Pat p -> Maybe (HsConPatDetails p) #

mapConPatDetail :: (HsConPatDetails p -> Maybe (HsConPatDetails p)) -> Pat p -> Maybe (Pat p) #

mkVisFunTys :: [Scaled Type] -> Type -> Type #

# Specs

data ImpDeclSpec #

Constructors

ImpDeclSpec |
Fields is_mod :: ModuleName is_as :: ModuleName is_qual :: Bool is_dloc :: SrcSpan

#### Instances

Instances details

Data ImpDeclSpec |
Instance details Defined in GHC.Types.Name.Reader Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> ImpDeclSpec -> c ImpDeclSpec gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c ImpDeclSpec toConstr :: ImpDeclSpec -> Constr dataTypeOf :: ImpDeclSpec -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c ImpDeclSpec) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c ImpDeclSpec) gmapT :: (forall b. Data b => b -> b) -> ImpDeclSpec -> ImpDeclSpec gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> ImpDeclSpec -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> ImpDeclSpec -> r gmapQ :: (forall d. Data d => d -> u) -> ImpDeclSpec -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> ImpDeclSpec -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> ImpDeclSpec -> m ImpDeclSpec gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> ImpDeclSpec -> m ImpDeclSpec gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> ImpDeclSpec -> m ImpDeclSpec
Eq ImpDeclSpec |
Instance details Defined in GHC.Types.Name.Reader Methods (==) :: ImpDeclSpec -> ImpDeclSpec -> Bool # (/=) :: ImpDeclSpec -> ImpDeclSpec -> Bool #

data ImportSpec #

Constructors

ImpSpec |
Fields is_decl :: ImpDeclSpec is_item :: ImpItemSpec

#### Instances

Instances details

Data ImportSpec |
Instance details Defined in GHC.Types.Name.Reader Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> ImportSpec -> c ImportSpec gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c ImportSpec toConstr :: ImportSpec -> Constr dataTypeOf :: ImportSpec -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c ImportSpec) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c ImportSpec) gmapT :: (forall b. Data b => b -> b) -> ImportSpec -> ImportSpec gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> ImportSpec -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> ImportSpec -> r gmapQ :: (forall d. Data d => d -> u) -> ImportSpec -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> ImportSpec -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> ImportSpec -> m ImportSpec gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> ImportSpec -> m ImportSpec gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> ImportSpec -> m ImportSpec
Outputable ImportSpec |
Instance details Defined in GHC.Types.Name.Reader Methods ppr :: ImportSpec -> SDoc #
Eq ImportSpec |
Instance details Defined in GHC.Types.Name.Reader Methods (==) :: ImportSpec -> ImportSpec -> Bool # (/=) :: ImportSpec -> ImportSpec -> Bool #

# SourceText

data SourceText #

Constructors

SourceText String |
NoSourceText |

#### Instances

Instances details

Data SourceText |
Instance details Defined in GHC.Types.SourceText Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> SourceText -> c SourceText gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c SourceText toConstr :: SourceText -> Constr dataTypeOf :: SourceText -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c SourceText) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c SourceText) gmapT :: (forall b. Data b => b -> b) -> SourceText -> SourceText gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> SourceText -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> SourceText -> r gmapQ :: (forall d. Data d => d -> u) -> SourceText -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> SourceText -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> SourceText -> m SourceText gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> SourceText -> m SourceText gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> SourceText -> m SourceText
Show SourceText |
Instance details Defined in GHC.Types.SourceText Methods showsPrec :: Int -> SourceText -> ShowS # show :: SourceText -> String # showList :: [SourceText] -> ShowS #
Binary SourceText |
Instance details Defined in GHC.Types.SourceText Methods put_ :: BinHandle -> SourceText -> IO () put :: BinHandle -> SourceText -> IO (Bin SourceText) get :: BinHandle -> IO SourceText
Outputable SourceText |
Instance details Defined in GHC.Types.SourceText Methods ppr :: SourceText -> SDoc #
Eq SourceText |
Instance details Defined in GHC.Types.SourceText Methods (==) :: SourceText -> SourceText -> Bool # (/=) :: SourceText -> SourceText -> Bool #
type Anno (SourceText, RuleName) |
Instance details Defined in GHC.Hs.Decls type Anno (SourceText, RuleName) = SrcAnn NoEpAnns

# Name

tyThingParent_maybe :: TyThing -> Maybe TyThing #

# Ways

data Way #

#### Instances

Instances details

Read Way |
Instance details Defined in GHC.Platform.Ways Methods readsPrec :: Int -> ReadS Way # readList :: ReadS [Way] # readPrec :: ReadPrec Way # readListPrec :: ReadPrec [Way] #
Show Way |
Instance details Defined in GHC.Platform.Ways Methods showsPrec :: Int -> Way -> ShowS # show :: Way -> String # showList :: [Way] -> ShowS #
Eq Way |
Instance details Defined in GHC.Platform.Ways Methods (==) :: Way -> Way -> Bool # (/=) :: Way -> Way -> Bool #
Ord Way |
Instance details Defined in GHC.Platform.Ways Methods compare :: Way -> Way -> Ordering (<) :: Way -> Way -> Bool (<=) :: Way -> Way -> Bool (>) :: Way -> Way -> Bool (>=) :: Way -> Way -> Bool max :: Way -> Way -> Way min :: Way -> Way -> Way

wayGeneralFlags :: Platform -> Way -> [GeneralFlag] #

wayUnsetGeneralFlags :: Platform -> Way -> [GeneralFlag] #

# AvailInfo

data AvailInfo #

#### Instances

Instances details

Data AvailInfo |
Instance details Defined in GHC.Types.Avail Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> AvailInfo -> c AvailInfo gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c AvailInfo toConstr :: AvailInfo -> Constr dataTypeOf :: AvailInfo -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c AvailInfo) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c AvailInfo) gmapT :: (forall b. Data b => b -> b) -> AvailInfo -> AvailInfo gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> AvailInfo -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> AvailInfo -> r gmapQ :: (forall d. Data d => d -> u) -> AvailInfo -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> AvailInfo -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> AvailInfo -> m AvailInfo gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> AvailInfo -> m AvailInfo gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> AvailInfo -> m AvailInfo
NFData AvailInfo |
Instance details Defined in GHC.Types.Avail Methods rnf :: AvailInfo -> () #
Binary AvailInfo |
Instance details Defined in GHC.Types.Avail Methods put_ :: BinHandle -> AvailInfo -> IO () put :: BinHandle -> AvailInfo -> IO (Bin AvailInfo) get :: BinHandle -> IO AvailInfo
Outputable AvailInfo |
Instance details Defined in GHC.Types.Avail Methods ppr :: AvailInfo -> SDoc #
Eq AvailInfo |
Instance details Defined in GHC.Types.Avail Methods (==) :: AvailInfo -> AvailInfo -> Bool # (/=) :: AvailInfo -> AvailInfo -> Bool #

pattern AvailName :: Name -> AvailInfo #

pattern AvailFL :: FieldLabel -> AvailInfo #

pattern AvailTC :: Name -> [Name] -> [FieldLabel] -> AvailInfo #

availName :: AvailInfo -> Name #

availNames :: AvailInfo -> [Name] #

availNamesWithSelectors :: AvailInfo -> [Name] #

availsToNameSet :: [AvailInfo] -> NameSet #

# TcGblEnv

data TcGblEnv #

Constructors

TcGblEnv |
Fields tcg_mod :: Module tcg_semantic_mod :: Module tcg_src :: HscSource tcg_rdr_env :: GlobalRdrEnv tcg_default :: Maybe [Type] tcg_fix_env :: FixityEnv tcg_field_env :: RecFieldEnv tcg_type_env :: TypeEnv tcg_type_env_var :: KnotVars (IORef TypeEnv) tcg_inst_env :: !InstEnv tcg_fam_inst_env :: !FamInstEnv tcg_ann_env :: AnnEnv tcg_exports :: [AvailInfo] tcg_imports :: ImportAvails tcg_dus :: DefUses tcg_used_gres :: TcRef [GlobalRdrElt] tcg_keep :: TcRef NameSet tcg_th_used :: TcRef Bool tcg_th_splice_used :: TcRef Bool tcg_th_needed_deps :: TcRef ([Linkable], PkgsLoaded) tcg_dfun_n :: TcRef OccSet tcg_merged :: [(Module, Fingerprint)] tcg_rn_exports :: Maybe [(LIE GhcRn, Avails)] tcg_rn_imports :: [LImportDecl GhcRn] tcg_rn_decls :: Maybe (HsGroup GhcRn) tcg_dependent_files :: TcRef [FilePath] tcg_th_topdecls :: TcRef [LHsDecl GhcPs] tcg_th_foreign_files :: TcRef [(ForeignSrcLang, FilePath)] tcg_th_topnames :: TcRef NameSet tcg_th_modfinalizers :: TcRef [(TcLclEnv, ThModFinalizers)] tcg_th_coreplugins :: TcRef [String] tcg_th_state :: TcRef (Map TypeRep Dynamic) tcg_th_remote_state :: TcRef (Maybe (ForeignRef (IORef QState))) tcg_th_docs :: TcRef THDocs tcg_ev_binds :: Bag EvBind tcg_tr_module :: Maybe Id tcg_binds :: LHsBinds GhcTc tcg_sigs :: NameSet tcg_imp_specs :: [LTcSpecPrag] tcg_warns :: Warnings GhcRn tcg_anns :: [Annotation] tcg_tcs :: [TyCon] tcg_ksigs :: NameSet tcg_insts :: [ClsInst] tcg_fam_insts :: [FamInst] tcg_rules :: [LRuleDecl GhcTc] tcg_fords :: [LForeignDecl GhcTc] tcg_patsyns :: [PatSyn] tcg_doc_hdr :: Maybe (LHsDoc GhcRn) tcg_hpc :: !AnyHpcUsage tcg_self_boot :: SelfBootInfo tcg_main :: Maybe Name tcg_safe_infer :: TcRef Bool tcg_safe_infer_reasons :: TcRef (Messages TcRnMessage) tcg_tc_plugin_solvers :: [TcPluginSolver] tcg_tc_plugin_rewriters :: UniqFM TyCon [TcPluginRewriter] tcg_defaulting_plugins :: [FillDefaulting] tcg_hf_plugins :: [HoleFitPlugin] tcg_top_loc :: RealSrcSpan tcg_static_wc :: TcRef WantedConstraints tcg_complete_matches :: !CompleteMatches tcg_cc_st :: TcRef CostCentreState tcg_next_wrapper_num :: TcRef (ModuleEnv Int)

#### Instances

Instances details

ContainsModule TcGblEnv |
Instance details Defined in GHC.Tc.Types Methods extractModule :: TcGblEnv -> Module #

# Parsing and LExer types

data HsModule p #

Constructors

HsModule |
Fields hsmodExt :: XCModule p hsmodName :: Maybe (XRec p ModuleName) hsmodExports :: Maybe (XRec p [LIE p]) hsmodImports :: [LImportDecl p] hsmodDecls :: [LHsDecl p]
XModule !(XXModule p) |

#### Instances

Instances details

NFData (HsModule a) # |
Instance details Defined in Development.IDE.GHC.Orphans Methods rnf :: HsModule a -> () #

type ParsedSource = Located (HsModule GhcPs) #

type RenamedSource = (HsGroup GhcRn, [LImportDecl GhcRn], Maybe [(LIE GhcRn, Avails)], Maybe (LHsDoc GhcRn)) #

# Compilation Main

data HscEnv #

#### Instances

Instances details

ContainsDynFlags HscEnv |
Instance details Defined in GHC.Driver.Env.Types Methods extractDynFlags :: HscEnv -> DynFlags

runGhc :: Maybe FilePath -> Ghc a -> IO a #

unGhc :: Ghc a -> Session -> IO a #

data Session #

Constructors

Session !(IORef HscEnv) |

modifySession :: GhcMonad m => (HscEnv -> HscEnv) -> m () #

getSession :: GhcMonad m => m HscEnv #

setSessionDynFlags :: (HasCallStack, GhcMonad m) => DynFlags -> m () #

getSessionDynFlags :: GhcMonad m => m DynFlags #

class (Functor m, ExceptionMonad m, HasDynFlags m, HasLogger m) => GhcMonad (m :: Type -> Type) #

Minimal complete definition

getSession, setSession

#### Instances

Instances details

GhcMonad Ghc |
Instance details Defined in GHC.Driver.Monad Methods getSession :: Ghc HscEnv # setSession :: HscEnv -> Ghc ()
ExceptionMonad m => GhcMonad (GhcT m) |
Instance details Defined in GHC.Driver.Monad Methods getSession :: GhcT m HscEnv # setSession :: HscEnv -> GhcT m ()

data Ghc a #

#### Instances

Instances details

MonadFail Ghc |
Instance details Defined in GHC.Driver.Monad Methods fail :: String -> Ghc a #
MonadFix Ghc |
Instance details Defined in GHC.Driver.Monad Methods mfix :: (a -> Ghc a) -> Ghc a
MonadIO Ghc |
Instance details Defined in GHC.Driver.Monad Methods liftIO :: IO a -> Ghc a #
Applicative Ghc |
Instance details Defined in GHC.Driver.Monad Methods pure :: a -> Ghc a # (<*>) :: Ghc (a -> b) -> Ghc a -> Ghc b # liftA2 :: (a -> b -> c) -> Ghc a -> Ghc b -> Ghc c # (*>) :: Ghc a -> Ghc b -> Ghc b # (<*) :: Ghc a -> Ghc b -> Ghc a #
Functor Ghc |
Instance details Defined in GHC.Driver.Monad Methods fmap :: (a -> b) -> Ghc a -> Ghc b # (<$) :: a -> Ghc b -> Ghc a #
Monad Ghc |
Instance details Defined in GHC.Driver.Monad Methods (>>=) :: Ghc a -> (a -> Ghc b) -> Ghc b # (>>) :: Ghc a -> Ghc b -> Ghc b # return :: a -> Ghc a #
MonadCatch Ghc |
Instance details Defined in GHC.Driver.Monad Methods catch :: (HasCallStack, Exception e) => Ghc a -> (e -> Ghc a) -> Ghc a
MonadMask Ghc |
Instance details Defined in GHC.Driver.Monad Methods mask :: HasCallStack => ((forall a. Ghc a -> Ghc a) -> Ghc b) -> Ghc b # uninterruptibleMask :: HasCallStack => ((forall a. Ghc a -> Ghc a) -> Ghc b) -> Ghc b # generalBracket :: HasCallStack => Ghc a -> (a -> ExitCase b -> Ghc c) -> (a -> Ghc b) -> Ghc (b, c) #
MonadThrow Ghc |
Instance details Defined in GHC.Driver.Monad Methods throwM :: (HasCallStack, Exception e) => e -> Ghc a #
GhcMonad Ghc |
Instance details Defined in GHC.Driver.Monad Methods getSession :: Ghc HscEnv # setSession :: HscEnv -> Ghc ()
HasDynFlags Ghc |
Instance details Defined in GHC.Driver.Monad Methods getDynFlags :: Ghc DynFlags #
HasLogger Ghc |
Instance details Defined in GHC.Driver.Monad Methods getLogger :: Ghc Logger

runHsc :: HscEnv -> Hsc a -> IO a #

compileFile :: HscEnv -> StopPhase -> (FilePath, Maybe Phase) -> IO (Maybe FilePath) #

data Phase #

Constructors

Unlit HscSource |
Cpp HscSource |
HsPp HscSource |
Hsc HscSource |
Ccxx |
Cc |
Cobjc |
Cobjcxx |
HCc |
As Bool |
LlvmOpt |
LlvmLlc |
LlvmMangle |
CmmCpp |
Cmm |
MergeForeign |
Js |
StopLn |

#### Instances

Instances details

Show Phase |
Instance details Defined in GHC.Driver.Phases Methods showsPrec :: Int -> Phase -> ShowS # show :: Phase -> String # showList :: [Phase] -> ShowS #
Outputable Phase |
Instance details Defined in GHC.Driver.Phases Methods ppr :: Phase -> SDoc #
Eq Phase |
Instance details Defined in GHC.Driver.Phases Methods (==) :: Phase -> Phase -> Bool # (/=) :: Phase -> Phase -> Bool #

hscDesugar :: HscEnv -> ModSummary -> TcGblEnv -> IO ModGuts #

hscGenHardCode :: HscEnv -> CgGuts -> ModLocation -> FilePath -> IO (FilePath, Maybe FilePath, [(ForeignSrcLang, FilePath)], Maybe StgCgInfos, Maybe CmmCgInfos) #

hscInteractive :: HscEnv -> CgInteractiveGuts -> ModLocation -> IO (Maybe FilePath, CompiledByteCode, [SptEntry]) #

hscSimplify :: HscEnv -> [String] -> ModGuts -> IO ModGuts #

hscTypecheckRename :: HscEnv -> ModSummary -> HsParsedModule -> IO (TcGblEnv, RenamedStuff) #

makeSimpleDetails :: HscEnv -> TcGblEnv -> IO ModDetails #

# Typecheck utils

tcSplitForAllTyVars :: Type -> ([TyVar], Type) #

tcSplitForAllTyVarBinder_maybe :: Type -> Maybe (TyVarBinder, Type) #

typecheckIface :: ModIface -> IfG ModDetails #

mkIfaceTc :: HscEnv -> SafeHaskellMode -> ModDetails -> ModSummary -> Maybe CoreProgram -> TcGblEnv -> IO ModIface #

mkBootModDetailsTc :: HscEnv -> TcGblEnv -> IO ModDetails #

initTidyOpts :: HscEnv -> IO TidyOpts #

hscUpdateHPT :: (HomePackageTable -> HomePackageTable) -> HscEnv -> HscEnv #

driverNoStop :: StopPhase #

tidyProgram :: TidyOpts -> ModGuts -> IO (CgGuts, ModDetails) #

data ImportedModsVal #

Constructors

ImportedModsVal |
Fields imv_name :: ModuleName imv_span :: SrcSpan imv_is_safe :: IsSafeImport imv_is_hiding :: Bool imv_all_exports :: !GlobalRdrEnv imv_qualified :: Bool

importedByUser :: [ImportedBy] -> [ImportedModsVal] #

type TypecheckedSource = LHsBinds GhcTc #

# Source Locations

class HasSrcSpan a #

Minimal complete definition

getLoc

#### Instances

Instances details

HasSrcSpan SrcSpan # |
Instance details Defined in Development.IDE.GHC.Compat.Core Methods getLoc :: SrcSpan -> SrcSpan #
HasSrcSpan (SrcSpanAnn' ann) # |
Instance details Defined in Development.IDE.GHC.Compat.Core Methods getLoc :: SrcSpanAnn' ann -> SrcSpan #
HasSrcSpan (GenLocated (SrcSpanAnn' ann) a) # |
Instance details Defined in Development.IDE.GHC.Compat.Core Methods getLoc :: GenLocated (SrcSpanAnn' ann) a -> SrcSpan #
HasSrcSpan (GenLocated SrcSpan a) # |
Instance details Defined in Development.IDE.GHC.Compat.Core Methods getLoc :: GenLocated SrcSpan a -> SrcSpan #

type Located = GenLocated SrcSpan #

unLoc :: GenLocated l e -> e #

getLoc :: HasSrcSpan a => a -> SrcSpan #

getLocA :: GenLocated (SrcSpanAnn' a) e -> SrcSpan #

locA :: SrcSpanAnn' a -> SrcSpan #

noLocA :: a -> LocatedAn an a #

unLocA :: forall pass a. XRec (GhcPass pass) a -> a #

type LocatedAn a = LocatedAn a #

type LocatedA = LocatedA #

data AnnListItem #

Constructors

AnnListItem |
Fields lann_trailing :: [TrailingAnn]

#### Instances

Instances details

Data AnnListItem |
Instance details Defined in GHC.Parser.Annotation Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> AnnListItem -> c AnnListItem gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c AnnListItem toConstr :: AnnListItem -> Constr dataTypeOf :: AnnListItem -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c AnnListItem) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c AnnListItem) gmapT :: (forall b. Data b => b -> b) -> AnnListItem -> AnnListItem gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> AnnListItem -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> AnnListItem -> r gmapQ :: (forall d. Data d => d -> u) -> AnnListItem -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> AnnListItem -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> AnnListItem -> m AnnListItem gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> AnnListItem -> m AnnListItem gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> AnnListItem -> m AnnListItem
Monoid AnnListItem |
Instance details Defined in GHC.Parser.Annotation Methods mempty :: AnnListItem # mappend :: AnnListItem -> AnnListItem -> AnnListItem # mconcat :: [AnnListItem] -> AnnListItem #
Semigroup AnnListItem |
Instance details Defined in GHC.Parser.Annotation Methods (<>) :: AnnListItem -> AnnListItem -> AnnListItem # sconcat :: NonEmpty AnnListItem -> AnnListItem # stimes :: Integral b => b -> AnnListItem -> AnnListItem #
Outputable AnnListItem |
Instance details Defined in GHC.Parser.Annotation Methods ppr :: AnnListItem -> SDoc #
Eq AnnListItem |
Instance details Defined in GHC.Parser.Annotation Methods (==) :: AnnListItem -> AnnListItem -> Bool # (/=) :: AnnListItem -> AnnListItem -> Bool #
HasLoc (LocatedA a) |
Instance details Defined in GHC.Iface.Ext.Ast Methods loc :: LocatedA a -> SrcSpan
HiePass p => HasType (LocatedA (HsBind (GhcPass p))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods getTypeNode :: LocatedA (HsBind (GhcPass p)) -> HieM [HieAST Type]
HiePass p => HasType (LocatedA (HsExpr (GhcPass p))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods getTypeNode :: LocatedA (HsExpr (GhcPass p)) -> HieM [HieAST Type]
HiePass p => HasType (LocatedA (Pat (GhcPass p))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods getTypeNode :: LocatedA (Pat (GhcPass p)) -> HieM [HieAST Type]
HiePass p => ToHie (BindContext (LocatedA (HsBind (GhcPass p)))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: BindContext (LocatedA (HsBind (GhcPass p))) -> HieM [HieAST Type]
ToHie (Context (Located a)) => ToHie (Context (LocatedA a)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: Context (LocatedA a) -> HieM [HieAST Type]
ToHie (EvBindContext (LocatedA TcEvBinds)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: EvBindContext (LocatedA TcEvBinds) -> HieM [HieAST Type]
ToHie (IEContext (LocatedA (IE GhcRn))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: IEContext (LocatedA (IE GhcRn)) -> HieM [HieAST Type]
ToHie (IEContext (LocatedA (IEWrappedName GhcRn))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: IEContext (LocatedA (IEWrappedName GhcRn)) -> HieM [HieAST Type]
ToHie (IEContext (LocatedA ModuleName)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: IEContext (LocatedA ModuleName) -> HieM [HieAST Type]
HiePass p => ToHie (PScoped (LocatedA (Pat (GhcPass p)))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: PScoped (LocatedA (Pat (GhcPass p))) -> HieM [HieAST Type]
(ToHie (RFContext label), ToHie arg, HasLoc arg, Data arg, Data label) => ToHie (RContext (LocatedA (HsFieldBind label arg))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: RContext (LocatedA (HsFieldBind label arg)) -> HieM [HieAST Type]
HiePass p => ToHie (RScoped (LocatedA (IPBind (GhcPass p)))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: RScoped (LocatedA (IPBind (GhcPass p))) -> HieM [HieAST Type]
(ToHie (LocatedA (body (GhcPass p))), AnnoBody p body, HiePass p) => ToHie (RScoped (LocatedA (Stmt (GhcPass p) (LocatedA (body (GhcPass p)))))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: RScoped (LocatedA (Stmt (GhcPass p) (LocatedA (body (GhcPass p))))) -> HieM [HieAST Type]
HiePass p => ToHie (SigContext (LocatedA (Sig (GhcPass p)))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: SigContext (LocatedA (Sig (GhcPass p))) -> HieM [HieAST Type]
ToHie (TScoped (LocatedA (HsSigType GhcRn))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: TScoped (LocatedA (HsSigType GhcRn)) -> HieM [HieAST Type]
ToHie (TScoped (FamEqn GhcRn (LocatedA (HsType GhcRn)))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: TScoped (FamEqn GhcRn (LocatedA (HsType GhcRn))) -> HieM [HieAST Type]
ToHie (TScoped (HsWildCardBndrs GhcRn (LocatedA (HsSigType GhcRn)))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: TScoped (HsWildCardBndrs GhcRn (LocatedA (HsSigType GhcRn))) -> HieM [HieAST Type]
ToHie (TScoped (HsWildCardBndrs GhcRn (LocatedA (HsType GhcRn)))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: TScoped (HsWildCardBndrs GhcRn (LocatedA (HsType GhcRn))) -> HieM [HieAST Type]
Data flag => ToHie (TVScoped (LocatedA (HsTyVarBndr flag GhcRn))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: TVScoped (LocatedA (HsTyVarBndr flag GhcRn)) -> HieM [HieAST Type]
ToHie (LocatedA HsWrapper) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA HsWrapper -> HieM [HieAST Type]
ToHie (LocatedA (FixitySig GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (FixitySig GhcRn) -> HieM [HieAST Type]
ToHie (LocatedA (AnnDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (AnnDecl GhcRn) -> HieM [HieAST Type]
ToHie (LocatedA (ClsInstDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (ClsInstDecl GhcRn) -> HieM [HieAST Type]
ToHie (LocatedA (ConDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (ConDecl GhcRn) -> HieM [HieAST Type]
ToHie (LocatedA (DataFamInstDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (DataFamInstDecl GhcRn) -> HieM [HieAST Type]
ToHie (LocatedA (DefaultDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (DefaultDecl GhcRn) -> HieM [HieAST Type]
ToHie (LocatedA (DerivDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (DerivDecl GhcRn) -> HieM [HieAST Type]
ToHie (LocatedA (DocDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (DocDecl GhcRn) -> HieM [HieAST Type]
ToHie (LocatedA (FamilyDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (FamilyDecl GhcRn) -> HieM [HieAST Type]
ToHie (LocatedA (ForeignDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (ForeignDecl GhcRn) -> HieM [HieAST Type]
ToHie (LocatedA (FunDep GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (FunDep GhcRn) -> HieM [HieAST Type]
ToHie (LocatedA (InstDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (InstDecl GhcRn) -> HieM [HieAST Type]
ToHie (LocatedA (RoleAnnotDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (RoleAnnotDecl GhcRn) -> HieM [HieAST Type]
ToHie (LocatedA (RuleDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (RuleDecl GhcRn) -> HieM [HieAST Type]
ToHie (LocatedA (RuleDecls GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (RuleDecls GhcRn) -> HieM [HieAST Type]
ToHie (LocatedA (SpliceDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (SpliceDecl GhcRn) -> HieM [HieAST Type]
ToHie (LocatedA (StandaloneKindSig GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (StandaloneKindSig GhcRn) -> HieM [HieAST Type]
ToHie (LocatedA (TyClDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (TyClDecl GhcRn) -> HieM [HieAST Type]
ToHie (LocatedA (TyFamInstDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (TyFamInstDecl GhcRn) -> HieM [HieAST Type]
ToHie (LocatedA (WarnDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (WarnDecl GhcRn) -> HieM [HieAST Type]
ToHie (LocatedA (WarnDecls GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (WarnDecls GhcRn) -> HieM [HieAST Type]
HiePass p => ToHie (LocatedA (HsCmd (GhcPass p))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (HsCmd (GhcPass p)) -> HieM [HieAST Type]
HiePass p => ToHie (LocatedA (HsExpr (GhcPass p))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (HsExpr (GhcPass p)) -> HieM [HieAST Type]
HiePass p => ToHie (LocatedA (HsUntypedSplice (GhcPass p))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (HsUntypedSplice (GhcPass p)) -> HieM [HieAST Type]
(HiePass p, Data (body (GhcPass p)), AnnoBody p body, ToHie (LocatedA (body (GhcPass p)))) => ToHie (LocatedA (Match (GhcPass p) (LocatedA (body (GhcPass p))))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (Match (GhcPass p) (LocatedA (body (GhcPass p)))) -> HieM [HieAST Type]
ToHie (LocatedA (ImportDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (ImportDecl GhcRn) -> HieM [HieAST Type]
ToHie (LocatedA (ConDeclField GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (ConDeclField GhcRn) -> HieM [HieAST Type]
ToHie (LocatedA (HsType GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (HsType GhcRn) -> HieM [HieAST Type]
ToHie (LocatedC [LocatedA (HsType GhcRn)]) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedC [LocatedA (HsType GhcRn)] -> HieM [HieAST Type]
ToHie (LocatedL [LocatedA (ConDeclField GhcRn)]) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedL [LocatedA (ConDeclField GhcRn)] -> HieM [HieAST Type]
(ToHie (LocatedA (body (GhcPass p))), HiePass p, AnnoBody p body) => ToHie (LocatedAn NoEpAnns (GRHS (GhcPass p) (LocatedA (body (GhcPass p))))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedAn NoEpAnns (GRHS (GhcPass p) (LocatedA (body (GhcPass p)))) -> HieM [HieAST Type]
(ToHie (LocatedA (body (GhcPass p))), HiePass p, AnnoBody p body) => ToHie (GRHSs (GhcPass p) (LocatedA (body (GhcPass p)))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: GRHSs (GhcPass p) (LocatedA (body (GhcPass p))) -> HieM [HieAST Type]
(HiePass p, AnnoBody p body, ToHie (LocatedA (body (GhcPass p)))) => ToHie (MatchGroup (GhcPass p) (LocatedA (body (GhcPass p)))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: MatchGroup (GhcPass p) (LocatedA (body (GhcPass p))) -> HieM [HieAST Type]
type Anno (LocatedA (IE (GhcPass p))) |
Instance details Defined in GHC.Hs.ImpExp type Anno (LocatedA (IE (GhcPass p))) = SrcSpanAnnA
type Anno [LocatedA (Match (GhcPass p) (LocatedA (HsCmd (GhcPass p))))] |
Instance details Defined in GHC.Hs.Expr type Anno [LocatedA (Match (GhcPass p) (LocatedA (HsCmd (GhcPass p))))] = SrcSpanAnnL
type Anno [LocatedA (Match (GhcPass p) (LocatedA (HsExpr (GhcPass p))))] |
Instance details Defined in GHC.Hs.Expr type Anno [LocatedA (Match (GhcPass p) (LocatedA (HsExpr (GhcPass p))))] = SrcSpanAnnL
type Anno [LocatedA (Match GhcPs (LocatedA (PatBuilder GhcPs)))] |
Instance details Defined in GHC.Parser.PostProcess type Anno [LocatedA (Match GhcPs (LocatedA (PatBuilder GhcPs)))] = SrcSpanAnnL
type Anno [LocatedA (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (HsCmd (GhcPass pr))))] |
Instance details Defined in GHC.Hs.Expr type Anno [LocatedA (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (HsCmd (GhcPass pr))))] = SrcSpanAnnL
type Anno [LocatedA (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (HsCmd (GhcPass pr))))] |
Instance details Defined in GHC.Hs.Expr type Anno [LocatedA (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (HsCmd (GhcPass pr))))] = SrcSpanAnnL
type Anno [LocatedA (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (HsCmd (GhcPass pr))))] |
Instance details Defined in GHC.Hs.Expr type Anno [LocatedA (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (HsCmd (GhcPass pr))))] = SrcSpanAnnL
type Anno [LocatedA (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (HsExpr (GhcPass pr))))] |
Instance details Defined in GHC.Hs.Expr type Anno [LocatedA (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (HsExpr (GhcPass pr))))] = SrcSpanAnnL
type Anno [LocatedA (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (body (GhcPass pr))))] |
Instance details Defined in GHC.Hs.Expr type Anno [LocatedA (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (body (GhcPass pr))))] = SrcSpanAnnL
type Anno [LocatedA (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (body (GhcPass pr))))] |
Instance details Defined in GHC.Hs.Expr type Anno [LocatedA (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (body (GhcPass pr))))] = SrcSpanAnnL
type Anno [LocatedA (StmtLR GhcPs GhcPs (LocatedA (PatBuilder GhcPs)))] |
Instance details Defined in GHC.Parser.Types type Anno [LocatedA (StmtLR GhcPs GhcPs (LocatedA (PatBuilder GhcPs)))] = SrcSpanAnnL
type Anno [LocatedA (IE (GhcPass p))] |
Instance details Defined in GHC.Hs.ImpExp type Anno [LocatedA (IE (GhcPass p))] = SrcSpanAnnL
type Anno [LocatedA (ConDeclField (GhcPass _1))] |
Instance details Defined in GHC.Hs.Decls type Anno [LocatedA (ConDeclField (GhcPass _1))] = SrcSpanAnnL
type Anno [LocatedA (HsType (GhcPass p))] |
Instance details Defined in GHC.Hs.Type type Anno [LocatedA (HsType (GhcPass p))] = SrcSpanAnnC
type Anno (FamEqn p (LocatedA (HsType p))) |
Instance details Defined in GHC.Hs.Decls type Anno (FamEqn p (LocatedA (HsType p))) = SrcSpanAnnA
type Anno (GRHS (GhcPass p) (LocatedA (HsCmd (GhcPass p)))) |
Instance details Defined in GHC.Hs.Expr type Anno (GRHS (GhcPass p) (LocatedA (HsCmd (GhcPass p)))) = SrcAnn NoEpAnns
type Anno (GRHS (GhcPass p) (LocatedA (HsExpr (GhcPass p)))) |
Instance details Defined in GHC.Hs.Expr type Anno (GRHS (GhcPass p) (LocatedA (HsExpr (GhcPass p)))) = SrcAnn NoEpAnns
type Anno (GRHS GhcPs (LocatedA (PatBuilder GhcPs))) |
Instance details Defined in GHC.Parser.PostProcess type Anno (GRHS GhcPs (LocatedA (PatBuilder GhcPs))) = SrcAnn NoEpAnns
type Anno (Match (GhcPass p) (LocatedA (HsCmd (GhcPass p)))) |
Instance details Defined in GHC.Hs.Expr type Anno (Match (GhcPass p) (LocatedA (HsCmd (GhcPass p)))) = SrcSpanAnnA
type Anno (Match (GhcPass p) (LocatedA (HsExpr (GhcPass p)))) |
Instance details Defined in GHC.Hs.Expr type Anno (Match (GhcPass p) (LocatedA (HsExpr (GhcPass p)))) = SrcSpanAnnA
type Anno (Match GhcPs (LocatedA (PatBuilder GhcPs))) |
Instance details Defined in GHC.Parser.PostProcess type Anno (Match GhcPs (LocatedA (PatBuilder GhcPs))) = SrcSpanAnnA
type Anno (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (body (GhcPass pr)))) |
Instance details Defined in GHC.Hs.Expr type Anno (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (body (GhcPass pr)))) = SrcSpanAnnA
type Anno (StmtLR GhcPs GhcPs (LocatedA (PatBuilder GhcPs))) |
Instance details Defined in GHC.Parser.PostProcess type Anno (StmtLR GhcPs GhcPs (LocatedA (PatBuilder GhcPs))) = SrcSpanAnnA
type Anno (StmtLR GhcRn GhcRn (LocatedA (body GhcRn))) |
Instance details Defined in GHC.Hs.Expr type Anno (StmtLR GhcRn GhcRn (LocatedA (body GhcRn))) = SrcSpanAnnA

data NameAnn #

Constructors

NameAnn |
Fields nann_adornment :: NameAdornment nann_open :: EpaLocation nann_name :: EpaLocation nann_close :: EpaLocation nann_trailing :: [TrailingAnn]
NameAnnCommas |
Fields nann_adornment :: NameAdornment nann_open :: EpaLocation nann_commas :: [EpaLocation] nann_close :: EpaLocation nann_trailing :: [TrailingAnn]
NameAnnBars |
Fields nann_adornment :: NameAdornment nann_open :: EpaLocation nann_bars :: [EpaLocation] nann_close :: EpaLocation nann_trailing :: [TrailingAnn]
NameAnnOnly |
Fields nann_adornment :: NameAdornment nann_open :: EpaLocation nann_close :: EpaLocation nann_trailing :: [TrailingAnn]
NameAnnRArrow |
Fields nann_name :: EpaLocation nann_trailing :: [TrailingAnn]
NameAnnQuote |
Fields nann_quote :: EpaLocation nann_quoted :: SrcSpanAnnN nann_trailing :: [TrailingAnn]
NameAnnTrailing |
Fields nann_trailing :: [TrailingAnn]

#### Instances

Instances details

Data NameAnn |
Instance details Defined in GHC.Parser.Annotation Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> NameAnn -> c NameAnn gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c NameAnn toConstr :: NameAnn -> Constr dataTypeOf :: NameAnn -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c NameAnn) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c NameAnn) gmapT :: (forall b. Data b => b -> b) -> NameAnn -> NameAnn gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> NameAnn -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> NameAnn -> r gmapQ :: (forall d. Data d => d -> u) -> NameAnn -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> NameAnn -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> NameAnn -> m NameAnn gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> NameAnn -> m NameAnn gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> NameAnn -> m NameAnn
Monoid NameAnn |
Instance details Defined in GHC.Parser.Annotation Methods mempty :: NameAnn # mappend :: NameAnn -> NameAnn -> NameAnn # mconcat :: [NameAnn] -> NameAnn #
Semigroup NameAnn |
Instance details Defined in GHC.Parser.Annotation Methods (<>) :: NameAnn -> NameAnn -> NameAnn # sconcat :: NonEmpty NameAnn -> NameAnn # stimes :: Integral b => b -> NameAnn -> NameAnn #
Outputable NameAnn |
Instance details Defined in GHC.Parser.Annotation Methods ppr :: NameAnn -> SDoc #
Eq NameAnn |
Instance details Defined in GHC.Parser.Annotation Methods (==) :: NameAnn -> NameAnn -> Bool # (/=) :: NameAnn -> NameAnn -> Bool #
HasLoc (LocatedN a) |
Instance details Defined in GHC.Iface.Ext.Ast Methods loc :: LocatedN a -> SrcSpan
ToHie (LBooleanFormula (LocatedN Name)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LBooleanFormula (LocatedN Name) -> HieM [HieAST Type]
ToHie (Context (Located a)) => ToHie (Context (LocatedN a)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: Context (LocatedN a) -> HieM [HieAST Type]
type Anno (LocatedN Name) |
Instance details Defined in GHC.Hs.Binds type Anno (LocatedN Name) = SrcSpan
type Anno (LocatedN RdrName) |
Instance details Defined in GHC.Hs.Binds type Anno (LocatedN RdrName) = SrcSpan
type Anno (LocatedN Id) |
Instance details Defined in GHC.Hs.Binds type Anno (LocatedN Id) = SrcSpan
type Anno [LocatedN Name] |
Instance details Defined in GHC.Hs.Binds type Anno [LocatedN Name] = SrcSpan
type Anno [LocatedN RdrName] |
Instance details Defined in GHC.Hs.Binds type Anno [LocatedN RdrName] = SrcSpan
type Anno [LocatedN Id] |
Instance details Defined in GHC.Hs.Binds type Anno [LocatedN Id] = SrcSpan

type RealLocated = GenLocated RealSrcSpan #

data GenLocated l e #

Constructors

L l e |

#### Instances

Instances details

Bifunctor GenLocated # |
Instance details Defined in Development.IDE.GHC.Orphans Methods bimap :: (a -> b) -> (c -> d) -> GenLocated a c -> GenLocated b d # first :: (a -> b) -> GenLocated a c -> GenLocated b c # second :: (b -> c) -> GenLocated a b -> GenLocated a c #
Foldable (GenLocated l) |
Instance details Defined in GHC.Types.SrcLoc Methods fold :: Monoid m => GenLocated l m -> m foldMap :: Monoid m => (a -> m) -> GenLocated l a -> m foldMap' :: Monoid m => (a -> m) -> GenLocated l a -> m foldr :: (a -> b -> b) -> b -> GenLocated l a -> b foldr' :: (a -> b -> b) -> b -> GenLocated l a -> b foldl :: (b -> a -> b) -> b -> GenLocated l a -> b foldl' :: (b -> a -> b) -> b -> GenLocated l a -> b foldr1 :: (a -> a -> a) -> GenLocated l a -> a foldl1 :: (a -> a -> a) -> GenLocated l a -> a toList :: GenLocated l a -> [a] null :: GenLocated l a -> Bool length :: GenLocated l a -> Int elem :: Eq a => a -> GenLocated l a -> Bool maximum :: Ord a => GenLocated l a -> a minimum :: Ord a => GenLocated l a -> a sum :: Num a => GenLocated l a -> a product :: Num a => GenLocated l a -> a
Traversable (GenLocated l) |
Instance details Defined in GHC.Types.SrcLoc Methods traverse :: Applicative f => (a -> f b) -> GenLocated l a -> f (GenLocated l b) # sequenceA :: Applicative f => GenLocated l (f a) -> f (GenLocated l a) mapM :: Monad m => (a -> m b) -> GenLocated l a -> m (GenLocated l b) # sequence :: Monad m => GenLocated l (m a) -> m (GenLocated l a) #
Functor (GenLocated l) |
Instance details Defined in GHC.Types.SrcLoc Methods fmap :: (a -> b) -> GenLocated l a -> GenLocated l b # (<$) :: a -> GenLocated l b -> GenLocated l a #
HasLoc (LocatedA a) |
Instance details Defined in GHC.Iface.Ext.Ast Methods loc :: LocatedA a -> SrcSpan
HasLoc (LocatedN a) |
Instance details Defined in GHC.Iface.Ext.Ast Methods loc :: LocatedN a -> SrcSpan
HasLoc (Located a) |
Instance details Defined in GHC.Iface.Ext.Ast Methods loc :: Located a -> SrcSpan
HiePass p => HasType (LocatedA (HsBind (GhcPass p))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods getTypeNode :: LocatedA (HsBind (GhcPass p)) -> HieM [HieAST Type]
HiePass p => HasType (LocatedA (HsExpr (GhcPass p))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods getTypeNode :: LocatedA (HsExpr (GhcPass p)) -> HieM [HieAST Type]
HiePass p => HasType (LocatedA (Pat (GhcPass p))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods getTypeNode :: LocatedA (Pat (GhcPass p)) -> HieM [HieAST Type]
ToHie (LBooleanFormula (LocatedN Name)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LBooleanFormula (LocatedN Name) -> HieM [HieAST Type]
ToHie (LHsDoc GhcRn) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LHsDoc GhcRn -> HieM [HieAST Type]
HiePass p => ToHie (BindContext (LocatedA (HsBind (GhcPass p)))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: BindContext (LocatedA (HsBind (GhcPass p))) -> HieM [HieAST Type]
ToHie (Context (Located a)) => ToHie (Context (LocatedA a)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: Context (LocatedA a) -> HieM [HieAST Type]
ToHie (Context (Located a)) => ToHie (Context (LocatedN a)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: Context (LocatedN a) -> HieM [HieAST Type]
ToHie (Context (Located Name)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: Context (Located Name) -> HieM [HieAST Type]
ToHie (Context (Located Var)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: Context (Located Var) -> HieM [HieAST Type]
ToHie (Context (Located NoExtField)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: Context (Located NoExtField) -> HieM [HieAST Type]
ToHie (EvBindContext (LocatedA TcEvBinds)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: EvBindContext (LocatedA TcEvBinds) -> HieM [HieAST Type]
ToHie (IEContext (LocatedA (IE GhcRn))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: IEContext (LocatedA (IE GhcRn)) -> HieM [HieAST Type]
ToHie (IEContext (LocatedA (IEWrappedName GhcRn))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: IEContext (LocatedA (IEWrappedName GhcRn)) -> HieM [HieAST Type]
ToHie (IEContext (LocatedA ModuleName)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: IEContext (LocatedA ModuleName) -> HieM [HieAST Type]
ToHie (IEContext (Located FieldLabel)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: IEContext (Located FieldLabel) -> HieM [HieAST Type]
HiePass p => ToHie (PScoped (LocatedA (Pat (GhcPass p)))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: PScoped (LocatedA (Pat (GhcPass p))) -> HieM [HieAST Type]
(ToHie (RFContext label), ToHie arg, HasLoc arg, Data arg, Data label) => ToHie (RContext (LocatedA (HsFieldBind label arg))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: RContext (LocatedA (HsFieldBind label arg)) -> HieM [HieAST Type]
HiePass p => ToHie (RFContext (LocatedAn NoEpAnns (AmbiguousFieldOcc (GhcPass p)))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: RFContext (LocatedAn NoEpAnns (AmbiguousFieldOcc (GhcPass p))) -> HieM [HieAST Type]
HiePass p => ToHie (RFContext (LocatedAn NoEpAnns (FieldOcc (GhcPass p)))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: RFContext (LocatedAn NoEpAnns (FieldOcc (GhcPass p))) -> HieM [HieAST Type]
HiePass p => ToHie (RScoped (LocatedA (IPBind (GhcPass p)))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: RScoped (LocatedA (IPBind (GhcPass p))) -> HieM [HieAST Type]
(ToHie (LocatedA (body (GhcPass p))), AnnoBody p body, HiePass p) => ToHie (RScoped (LocatedA (Stmt (GhcPass p) (LocatedA (body (GhcPass p)))))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: RScoped (LocatedA (Stmt (GhcPass p) (LocatedA (body (GhcPass p))))) -> HieM [HieAST Type]
ToHie (RScoped (LocatedAn NoEpAnns (DerivStrategy GhcRn))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: RScoped (LocatedAn NoEpAnns (DerivStrategy GhcRn)) -> HieM [HieAST Type]
ToHie (RScoped (LocatedAn NoEpAnns (FamilyResultSig GhcRn))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: RScoped (LocatedAn NoEpAnns (FamilyResultSig GhcRn)) -> HieM [HieAST Type]
ToHie (RScoped (LocatedAn NoEpAnns (RuleBndr GhcRn))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: RScoped (LocatedAn NoEpAnns (RuleBndr GhcRn)) -> HieM [HieAST Type]
HiePass p => ToHie (SigContext (LocatedA (Sig (GhcPass p)))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: SigContext (LocatedA (Sig (GhcPass p))) -> HieM [HieAST Type]
ToHie (TScoped (LocatedA (HsSigType GhcRn))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: TScoped (LocatedA (HsSigType GhcRn)) -> HieM [HieAST Type]
ToHie (TScoped (FamEqn GhcRn (LocatedA (HsType GhcRn)))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: TScoped (FamEqn GhcRn (LocatedA (HsType GhcRn))) -> HieM [HieAST Type]
ToHie (TScoped (HsWildCardBndrs GhcRn (LocatedA (HsSigType GhcRn)))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: TScoped (HsWildCardBndrs GhcRn (LocatedA (HsSigType GhcRn))) -> HieM [HieAST Type]
ToHie (TScoped (HsWildCardBndrs GhcRn (LocatedA (HsType GhcRn)))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: TScoped (HsWildCardBndrs GhcRn (LocatedA (HsType GhcRn))) -> HieM [HieAST Type]
Data flag => ToHie (TVScoped (LocatedA (HsTyVarBndr flag GhcRn))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: TVScoped (LocatedA (HsTyVarBndr flag GhcRn)) -> HieM [HieAST Type]
ToHie (LocatedA HsWrapper) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA HsWrapper -> HieM [HieAST Type]
ToHie (LocatedA (FixitySig GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (FixitySig GhcRn) -> HieM [HieAST Type]
ToHie (LocatedA (AnnDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (AnnDecl GhcRn) -> HieM [HieAST Type]
ToHie (LocatedA (ClsInstDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (ClsInstDecl GhcRn) -> HieM [HieAST Type]
ToHie (LocatedA (ConDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (ConDecl GhcRn) -> HieM [HieAST Type]
ToHie (LocatedA (DataFamInstDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (DataFamInstDecl GhcRn) -> HieM [HieAST Type]
ToHie (LocatedA (DefaultDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (DefaultDecl GhcRn) -> HieM [HieAST Type]
ToHie (LocatedA (DerivDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (DerivDecl GhcRn) -> HieM [HieAST Type]
ToHie (LocatedA (DocDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (DocDecl GhcRn) -> HieM [HieAST Type]
ToHie (LocatedA (FamilyDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (FamilyDecl GhcRn) -> HieM [HieAST Type]
ToHie (LocatedA (ForeignDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (ForeignDecl GhcRn) -> HieM [HieAST Type]
ToHie (LocatedA (FunDep GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (FunDep GhcRn) -> HieM [HieAST Type]
ToHie (LocatedA (InstDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (InstDecl GhcRn) -> HieM [HieAST Type]
ToHie (LocatedA (RoleAnnotDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (RoleAnnotDecl GhcRn) -> HieM [HieAST Type]
ToHie (LocatedA (RuleDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (RuleDecl GhcRn) -> HieM [HieAST Type]
ToHie (LocatedA (RuleDecls GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (RuleDecls GhcRn) -> HieM [HieAST Type]
ToHie (LocatedA (SpliceDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (SpliceDecl GhcRn) -> HieM [HieAST Type]
ToHie (LocatedA (StandaloneKindSig GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (StandaloneKindSig GhcRn) -> HieM [HieAST Type]
ToHie (LocatedA (TyClDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (TyClDecl GhcRn) -> HieM [HieAST Type]
ToHie (LocatedA (TyFamInstDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (TyFamInstDecl GhcRn) -> HieM [HieAST Type]
ToHie (LocatedA (WarnDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (WarnDecl GhcRn) -> HieM [HieAST Type]
ToHie (LocatedA (WarnDecls GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (WarnDecls GhcRn) -> HieM [HieAST Type]
HiePass p => ToHie (LocatedA (HsCmd (GhcPass p))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (HsCmd (GhcPass p)) -> HieM [HieAST Type]
HiePass p => ToHie (LocatedA (HsExpr (GhcPass p))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (HsExpr (GhcPass p)) -> HieM [HieAST Type]
HiePass p => ToHie (LocatedA (HsUntypedSplice (GhcPass p))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (HsUntypedSplice (GhcPass p)) -> HieM [HieAST Type]
(HiePass p, Data (body (GhcPass p)), AnnoBody p body, ToHie (LocatedA (body (GhcPass p)))) => ToHie (LocatedA (Match (GhcPass p) (LocatedA (body (GhcPass p))))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (Match (GhcPass p) (LocatedA (body (GhcPass p)))) -> HieM [HieAST Type]
ToHie (LocatedA (ImportDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (ImportDecl GhcRn) -> HieM [HieAST Type]
ToHie (LocatedA (ConDeclField GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (ConDeclField GhcRn) -> HieM [HieAST Type]
ToHie (LocatedA (HsType GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (HsType GhcRn) -> HieM [HieAST Type]
ToHie (LocatedC (DerivClauseTys GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedC (DerivClauseTys GhcRn) -> HieM [HieAST Type]
ToHie (LocatedC [LocatedA (HsType GhcRn)]) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedC [LocatedA (HsType GhcRn)] -> HieM [HieAST Type]
ToHie (LocatedL [LocatedA (ConDeclField GhcRn)]) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedL [LocatedA (ConDeclField GhcRn)] -> HieM [HieAST Type]
ToHie (LocatedP OverlapMode) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedP OverlapMode -> HieM [HieAST Type]
HiePass p => ToHie (Located (PatSynBind (GhcPass p) (GhcPass p))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: Located (PatSynBind (GhcPass p) (GhcPass p)) -> HieM [HieAST Type]
ToHie (Located [LocatedAn NoEpAnns (HsDerivingClause GhcRn)]) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: Located [LocatedAn NoEpAnns (HsDerivingClause GhcRn)] -> HieM [HieAST Type]
NamedThing e => NamedThing (Located e) |
Instance details Defined in GHC.Types.Name Methods getOccName :: Located e -> OccName # getName :: Located e -> Name #
Outputable e => Outputable (Located e) |
Instance details Defined in GHC.Types.SrcLoc Methods ppr :: Located e -> SDoc #
(Data l, Data e) => Data (GenLocated l e) |
Instance details Defined in GHC.Types.SrcLoc Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> GenLocated l e -> c (GenLocated l e) gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (GenLocated l e) toConstr :: GenLocated l e -> Constr dataTypeOf :: GenLocated l e -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (GenLocated l e)) dataCast2 :: Typeable t => (forall d e0. (Data d, Data e0) => c (t d e0)) -> Maybe (c (GenLocated l e)) gmapT :: (forall b. Data b => b -> b) -> GenLocated l e -> GenLocated l e gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> GenLocated l e -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> GenLocated l e -> r gmapQ :: (forall d. Data d => d -> u) -> GenLocated l e -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> GenLocated l e -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> GenLocated l e -> m (GenLocated l e) gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> GenLocated l e -> m (GenLocated l e) gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> GenLocated l e -> m (GenLocated l e)
(Show l, Show e) => Show (GenLocated l e) |
Instance details Defined in GHC.Types.SrcLoc Methods showsPrec :: Int -> GenLocated l e -> ShowS # show :: GenLocated l e -> String # showList :: [GenLocated l e] -> ShowS #
(NFData l, NFData e) => NFData (GenLocated l e) |
Instance details Defined in GHC.Types.SrcLoc Methods rnf :: GenLocated l e -> () #
ToHie (LocatedAn NoEpAnns (HsDerivingClause GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedAn NoEpAnns (HsDerivingClause GhcRn) -> HieM [HieAST Type]
ToHie (LocatedAn NoEpAnns (InjectivityAnn GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedAn NoEpAnns (InjectivityAnn GhcRn) -> HieM [HieAST Type]
(ToHie (LocatedA (body (GhcPass p))), HiePass p, AnnoBody p body) => ToHie (LocatedAn NoEpAnns (GRHS (GhcPass p) (LocatedA (body (GhcPass p))))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedAn NoEpAnns (GRHS (GhcPass p) (LocatedA (body (GhcPass p)))) -> HieM [HieAST Type]
HiePass p => ToHie (LocatedAn NoEpAnns (HsCmdTop (GhcPass p))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedAn NoEpAnns (HsCmdTop (GhcPass p)) -> HieM [HieAST Type]
ToHie (LocatedAn NoEpAnns HsIPName) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedAn NoEpAnns HsIPName -> HieM [HieAST Type]
(ToHie (LocatedA (body (GhcPass p))), HiePass p, AnnoBody p body) => ToHie (GRHSs (GhcPass p) (LocatedA (body (GhcPass p)))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: GRHSs (GhcPass p) (LocatedA (body (GhcPass p))) -> HieM [HieAST Type]
(HiePass p, AnnoBody p body, ToHie (LocatedA (body (GhcPass p)))) => ToHie (MatchGroup (GhcPass p) (LocatedA (body (GhcPass p)))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: MatchGroup (GhcPass p) (LocatedA (body (GhcPass p))) -> HieM [HieAST Type]
NamedThing (Located a) => NamedThing (LocatedAn an a) |
Instance details Defined in GHC.Parser.Annotation Methods getOccName :: LocatedAn an a -> OccName # getName :: LocatedAn an a -> Name #
Outputable (GenLocated Anchor EpaComment) |
Instance details Defined in GHC.Parser.Annotation Methods ppr :: GenLocated Anchor EpaComment -> SDoc #
(Outputable a, Outputable e) => Outputable (GenLocated (SrcSpanAnn' a) e) |
Instance details Defined in GHC.Parser.Annotation Methods ppr :: GenLocated (SrcSpanAnn' a) e -> SDoc #
Outputable a => Outputable (GenLocated TokenLocation a) |
Instance details Defined in GHC.Parser.Annotation Methods ppr :: GenLocated TokenLocation a -> SDoc #
Outputable e => Outputable (GenLocated RealSrcSpan e) |
Instance details Defined in GHC.Types.SrcLoc Methods ppr :: GenLocated RealSrcSpan e -> SDoc #
(Outputable a, OutputableBndr e) => OutputableBndr (GenLocated (SrcSpanAnn' a) e) |
Instance details Defined in GHC.Parser.Annotation Methods pprBndr :: BindingSite -> GenLocated (SrcSpanAnn' a) e -> SDoc pprPrefixOcc :: GenLocated (SrcSpanAnn' a) e -> SDoc pprInfixOcc :: GenLocated (SrcSpanAnn' a) e -> SDoc bndrIsJoin_maybe :: GenLocated (SrcSpanAnn' a) e -> Maybe Int
(Eq l, Eq e) => Eq (GenLocated l e) |
Instance details Defined in GHC.Types.SrcLoc Methods (==) :: GenLocated l e -> GenLocated l e -> Bool # (/=) :: GenLocated l e -> GenLocated l e -> Bool #
(Ord l, Ord e) => Ord (GenLocated l e) |
Instance details Defined in GHC.Types.SrcLoc Methods compare :: GenLocated l e -> GenLocated l e -> Ordering (<) :: GenLocated l e -> GenLocated l e -> Bool (<=) :: GenLocated l e -> GenLocated l e -> Bool (>) :: GenLocated l e -> GenLocated l e -> Bool (>=) :: GenLocated l e -> GenLocated l e -> Bool max :: GenLocated l e -> GenLocated l e -> GenLocated l e min :: GenLocated l e -> GenLocated l e -> GenLocated l e
HasSrcSpan (GenLocated (SrcSpanAnn' ann) a) # |
Instance details Defined in Development.IDE.GHC.Compat.Core Methods getLoc :: GenLocated (SrcSpanAnn' ann) a -> SrcSpan #
HasSrcSpan (GenLocated SrcSpan a) # |
Instance details Defined in Development.IDE.GHC.Compat.Core Methods getLoc :: GenLocated SrcSpan a -> SrcSpan #
type Anno (LocatedA (IE (GhcPass p))) |
Instance details Defined in GHC.Hs.ImpExp type Anno (LocatedA (IE (GhcPass p))) = SrcSpanAnnA
type Anno (LocatedN Name) |
Instance details Defined in GHC.Hs.Binds type Anno (LocatedN Name) = SrcSpan
type Anno (LocatedN RdrName) |
Instance details Defined in GHC.Hs.Binds type Anno (LocatedN RdrName) = SrcSpan
type Anno (LocatedN Id) |
Instance details Defined in GHC.Hs.Binds type Anno (LocatedN Id) = SrcSpan
type Anno [LocatedA (Match (GhcPass p) (LocatedA (HsCmd (GhcPass p))))] |
Instance details Defined in GHC.Hs.Expr type Anno [LocatedA (Match (GhcPass p) (LocatedA (HsCmd (GhcPass p))))] = SrcSpanAnnL
type Anno [LocatedA (Match (GhcPass p) (LocatedA (HsExpr (GhcPass p))))] |
Instance details Defined in GHC.Hs.Expr type Anno [LocatedA (Match (GhcPass p) (LocatedA (HsExpr (GhcPass p))))] = SrcSpanAnnL
type Anno [LocatedA (Match GhcPs (LocatedA (PatBuilder GhcPs)))] |
Instance details Defined in GHC.Parser.PostProcess type Anno [LocatedA (Match GhcPs (LocatedA (PatBuilder GhcPs)))] = SrcSpanAnnL
type Anno [LocatedA (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (HsCmd (GhcPass pr))))] |
Instance details Defined in GHC.Hs.Expr type Anno [LocatedA (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (HsCmd (GhcPass pr))))] = SrcSpanAnnL
type Anno [LocatedA (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (HsCmd (GhcPass pr))))] |
Instance details Defined in GHC.Hs.Expr type Anno [LocatedA (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (HsCmd (GhcPass pr))))] = SrcSpanAnnL
type Anno [LocatedA (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (HsCmd (GhcPass pr))))] |
Instance details Defined in GHC.Hs.Expr type Anno [LocatedA (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (HsCmd (GhcPass pr))))] = SrcSpanAnnL
type Anno [LocatedA (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (HsExpr (GhcPass pr))))] |
Instance details Defined in GHC.Hs.Expr type Anno [LocatedA (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (HsExpr (GhcPass pr))))] = SrcSpanAnnL
type Anno [LocatedA (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (body (GhcPass pr))))] |
Instance details Defined in GHC.Hs.Expr type Anno [LocatedA (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (body (GhcPass pr))))] = SrcSpanAnnL
type Anno [LocatedA (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (body (GhcPass pr))))] |
Instance details Defined in GHC.Hs.Expr type Anno [LocatedA (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (body (GhcPass pr))))] = SrcSpanAnnL
type Anno [LocatedA (StmtLR GhcPs GhcPs (LocatedA (PatBuilder GhcPs)))] |
Instance details Defined in GHC.Parser.Types type Anno [LocatedA (StmtLR GhcPs GhcPs (LocatedA (PatBuilder GhcPs)))] = SrcSpanAnnL
type Anno [LocatedA (IE (GhcPass p))] |
Instance details Defined in GHC.Hs.ImpExp type Anno [LocatedA (IE (GhcPass p))] = SrcSpanAnnL
type Anno [LocatedA (ConDeclField (GhcPass _1))] |
Instance details Defined in GHC.Hs.Decls type Anno [LocatedA (ConDeclField (GhcPass _1))] = SrcSpanAnnL
type Anno [LocatedA (HsType (GhcPass p))] |
Instance details Defined in GHC.Hs.Type type Anno [LocatedA (HsType (GhcPass p))] = SrcSpanAnnC
type Anno [LocatedN Name] |
Instance details Defined in GHC.Hs.Binds type Anno [LocatedN Name] = SrcSpan
type Anno [LocatedN RdrName] |
Instance details Defined in GHC.Hs.Binds type Anno [LocatedN RdrName] = SrcSpan
type Anno [LocatedN Id] |
Instance details Defined in GHC.Hs.Binds type Anno [LocatedN Id] = SrcSpan
type Anno (FamEqn p (LocatedA (HsType p))) |
Instance details Defined in GHC.Hs.Decls type Anno (FamEqn p (LocatedA (HsType p))) = SrcSpanAnnA
type Anno (GRHS (GhcPass p) (LocatedA (HsCmd (GhcPass p)))) |
Instance details Defined in GHC.Hs.Expr type Anno (GRHS (GhcPass p) (LocatedA (HsCmd (GhcPass p)))) = SrcAnn NoEpAnns
type Anno (GRHS (GhcPass p) (LocatedA (HsExpr (GhcPass p)))) |
Instance details Defined in GHC.Hs.Expr type Anno (GRHS (GhcPass p) (LocatedA (HsExpr (GhcPass p)))) = SrcAnn NoEpAnns
type Anno (GRHS GhcPs (LocatedA (PatBuilder GhcPs))) |
Instance details Defined in GHC.Parser.PostProcess type Anno (GRHS GhcPs (LocatedA (PatBuilder GhcPs))) = SrcAnn NoEpAnns
type Anno (Match (GhcPass p) (LocatedA (HsCmd (GhcPass p)))) |
Instance details Defined in GHC.Hs.Expr type Anno (Match (GhcPass p) (LocatedA (HsCmd (GhcPass p)))) = SrcSpanAnnA
type Anno (Match (GhcPass p) (LocatedA (HsExpr (GhcPass p)))) |
Instance details Defined in GHC.Hs.Expr type Anno (Match (GhcPass p) (LocatedA (HsExpr (GhcPass p)))) = SrcSpanAnnA
type Anno (Match GhcPs (LocatedA (PatBuilder GhcPs))) |
Instance details Defined in GHC.Parser.PostProcess type Anno (Match GhcPs (LocatedA (PatBuilder GhcPs))) = SrcSpanAnnA
type Anno (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (body (GhcPass pr)))) |
Instance details Defined in GHC.Hs.Expr type Anno (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (body (GhcPass pr)))) = SrcSpanAnnA
type Anno (StmtLR GhcPs GhcPs (LocatedA (PatBuilder GhcPs))) |
Instance details Defined in GHC.Parser.PostProcess type Anno (StmtLR GhcPs GhcPs (LocatedA (PatBuilder GhcPs))) = SrcSpanAnnA
type Anno (StmtLR GhcRn GhcRn (LocatedA (body GhcRn))) |
Instance details Defined in GHC.Hs.Expr type Anno (StmtLR GhcRn GhcRn (LocatedA (body GhcRn))) = SrcSpanAnnA

data SrcSpan #

Constructors

UnhelpfulSpan !UnhelpfulSpanReason |

#### Instances

Instances details

Data SrcSpan |
Instance details Defined in GHC.Types.SrcLoc Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> SrcSpan -> c SrcSpan gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c SrcSpan toConstr :: SrcSpan -> Constr dataTypeOf :: SrcSpan -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c SrcSpan) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c SrcSpan) gmapT :: (forall b. Data b => b -> b) -> SrcSpan -> SrcSpan gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> SrcSpan -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> SrcSpan -> r gmapQ :: (forall d. Data d => d -> u) -> SrcSpan -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> SrcSpan -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> SrcSpan -> m SrcSpan gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> SrcSpan -> m SrcSpan gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> SrcSpan -> m SrcSpan
Show SrcSpan |
Instance details Defined in GHC.Types.SrcLoc Methods showsPrec :: Int -> SrcSpan -> ShowS # show :: SrcSpan -> String # showList :: [SrcSpan] -> ShowS #
NFData SrcSpan |
Instance details Defined in GHC.Types.SrcLoc Methods rnf :: SrcSpan -> () #
ToJson SrcSpan |
Instance details Defined in GHC.Types.SrcLoc Methods json :: SrcSpan -> JsonDoc
Outputable SrcSpan |
Instance details Defined in GHC.Types.SrcLoc Methods ppr :: SrcSpan -> SDoc #
Eq SrcSpan |
Instance details Defined in GHC.Types.SrcLoc Methods (==) :: SrcSpan -> SrcSpan -> Bool # (/=) :: SrcSpan -> SrcSpan -> Bool #
Ord SrcSpan |
Instance details Defined in Development.IDE.GHC.Orphans Methods compare :: SrcSpan -> SrcSpan -> Ordering (<) :: SrcSpan -> SrcSpan -> Bool (<=) :: SrcSpan -> SrcSpan -> Bool (>) :: SrcSpan -> SrcSpan -> Bool (>=) :: SrcSpan -> SrcSpan -> Bool max :: SrcSpan -> SrcSpan -> SrcSpan min :: SrcSpan -> SrcSpan -> SrcSpan
HasSrcSpan SrcSpan # |
Instance details Defined in Development.IDE.GHC.Compat.Core Methods getLoc :: SrcSpan -> SrcSpan #
HasLoc (Located a) |
Instance details Defined in GHC.Iface.Ext.Ast Methods loc :: Located a -> SrcSpan
ToHie (LHsDoc GhcRn) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LHsDoc GhcRn -> HieM [HieAST Type]
ToHie (Context (Located Name)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: Context (Located Name) -> HieM [HieAST Type]
ToHie (Context (Located Var)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: Context (Located Var) -> HieM [HieAST Type]
ToHie (Context (Located NoExtField)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: Context (Located NoExtField) -> HieM [HieAST Type]
ToHie (IEContext (Located FieldLabel)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: IEContext (Located FieldLabel) -> HieM [HieAST Type]
HiePass p => ToHie (Located (PatSynBind (GhcPass p) (GhcPass p))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: Located (PatSynBind (GhcPass p) (GhcPass p)) -> HieM [HieAST Type]
ToHie (Located [LocatedAn NoEpAnns (HsDerivingClause GhcRn)]) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: Located [LocatedAn NoEpAnns (HsDerivingClause GhcRn)] -> HieM [HieAST Type]
NamedThing e => NamedThing (Located e) |
Instance details Defined in GHC.Types.Name Methods getOccName :: Located e -> OccName # getName :: Located e -> Name #
Outputable e => Outputable (Located e) |
Instance details Defined in GHC.Types.SrcLoc Methods ppr :: Located e -> SDoc #
HasSrcSpan (GenLocated SrcSpan a) # |
Instance details Defined in Development.IDE.GHC.Compat.Core Methods getLoc :: GenLocated SrcSpan a -> SrcSpan #

data RealSrcSpan #

#### Instances

Instances details

FromJSON RealSrcSpan # |
Instance details Defined in Development.IDE.GHC.Orphans Methods parseJSON :: Value -> Parser RealSrcSpan # parseJSONList :: Value -> Parser [RealSrcSpan] # omittedField :: Maybe RealSrcSpan #
ToJSON RealSrcSpan # |
Instance details Defined in Development.IDE.GHC.Orphans Methods toJSON :: RealSrcSpan -> Value # toEncoding :: RealSrcSpan -> Encoding # toJSONList :: [RealSrcSpan] -> Value # toEncodingList :: [RealSrcSpan] -> Encoding # omitField :: RealSrcSpan -> Bool #
Data RealSrcSpan |
Instance details Defined in GHC.Types.SrcLoc Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> RealSrcSpan -> c RealSrcSpan gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c RealSrcSpan toConstr :: RealSrcSpan -> Constr dataTypeOf :: RealSrcSpan -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c RealSrcSpan) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c RealSrcSpan) gmapT :: (forall b. Data b => b -> b) -> RealSrcSpan -> RealSrcSpan gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> RealSrcSpan -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> RealSrcSpan -> r gmapQ :: (forall d. Data d => d -> u) -> RealSrcSpan -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> RealSrcSpan -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> RealSrcSpan -> m RealSrcSpan gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> RealSrcSpan -> m RealSrcSpan gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> RealSrcSpan -> m RealSrcSpan
Show RealSrcSpan |
Instance details Defined in GHC.Types.SrcLoc Methods showsPrec :: Int -> RealSrcSpan -> ShowS # show :: RealSrcSpan -> String # showList :: [RealSrcSpan] -> ShowS #
NFData RealSrcSpan # |
Instance details Defined in Development.IDE.GHC.Orphans Methods rnf :: RealSrcSpan -> () #
ToJson RealSrcSpan |
Instance details Defined in GHC.Types.SrcLoc Methods json :: RealSrcSpan -> JsonDoc
Outputable RealSrcSpan |
Instance details Defined in GHC.Types.SrcLoc Methods ppr :: RealSrcSpan -> SDoc #
Eq RealSrcSpan |
Instance details Defined in GHC.Types.SrcLoc Methods (==) :: RealSrcSpan -> RealSrcSpan -> Bool # (/=) :: RealSrcSpan -> RealSrcSpan -> Bool #
Ord RealSrcSpan |
Instance details Defined in GHC.Types.SrcLoc Methods compare :: RealSrcSpan -> RealSrcSpan -> Ordering (<) :: RealSrcSpan -> RealSrcSpan -> Bool (<=) :: RealSrcSpan -> RealSrcSpan -> Bool (>) :: RealSrcSpan -> RealSrcSpan -> Bool (>=) :: RealSrcSpan -> RealSrcSpan -> Bool max :: RealSrcSpan -> RealSrcSpan -> RealSrcSpan min :: RealSrcSpan -> RealSrcSpan -> RealSrcSpan
MapAge RealSrcSpan # |
Instance details Defined in Development.IDE.Core.UseStale Methods mapAgeFrom :: forall (from :: Age) (to :: Age). PositionMap from to -> Tracked to RealSrcSpan -> Maybe (Tracked from RealSrcSpan) # mapAgeTo :: forall (from :: Age) (to :: Age). PositionMap from to -> Tracked from RealSrcSpan -> Maybe (Tracked to RealSrcSpan) #
Outputable e => Outputable (GenLocated RealSrcSpan e) |
Instance details Defined in GHC.Types.SrcLoc Methods ppr :: GenLocated RealSrcSpan e -> SDoc #

pattern RealSrcSpan :: RealSrcSpan -> Maybe BufSpan -> SrcSpan #

data RealSrcLoc #

#### Instances

Instances details

Show RealSrcLoc |
Instance details Defined in GHC.Types.SrcLoc Methods showsPrec :: Int -> RealSrcLoc -> ShowS # show :: RealSrcLoc -> String # showList :: [RealSrcLoc] -> ShowS #
Outputable RealSrcLoc |
Instance details Defined in GHC.Types.SrcLoc Methods ppr :: RealSrcLoc -> SDoc #
Eq RealSrcLoc |
Instance details Defined in GHC.Types.SrcLoc Methods (==) :: RealSrcLoc -> RealSrcLoc -> Bool # (/=) :: RealSrcLoc -> RealSrcLoc -> Bool #
Ord RealSrcLoc |
Instance details Defined in GHC.Types.SrcLoc Methods compare :: RealSrcLoc -> RealSrcLoc -> Ordering (<) :: RealSrcLoc -> RealSrcLoc -> Bool (<=) :: RealSrcLoc -> RealSrcLoc -> Bool (>) :: RealSrcLoc -> RealSrcLoc -> Bool (>=) :: RealSrcLoc -> RealSrcLoc -> Bool max :: RealSrcLoc -> RealSrcLoc -> RealSrcLoc min :: RealSrcLoc -> RealSrcLoc -> RealSrcLoc

pattern RealSrcLoc :: RealSrcLoc -> Maybe BufPos -> SrcLoc #

data SrcLoc #

Constructors

UnhelpfulLoc !FastString |

#### Instances

Instances details

Show SrcLoc |
Instance details Defined in GHC.Types.SrcLoc Methods showsPrec :: Int -> SrcLoc -> ShowS # show :: SrcLoc -> String # showList :: [SrcLoc] -> ShowS #
Outputable SrcLoc |
Instance details Defined in GHC.Types.SrcLoc Methods ppr :: SrcLoc -> SDoc #
Eq SrcLoc |
Instance details Defined in GHC.Types.SrcLoc Methods (==) :: SrcLoc -> SrcLoc -> Bool # (/=) :: SrcLoc -> SrcLoc -> Bool #

data BufSpan #

#### Instances

Instances details

Data BufSpan |
Instance details Defined in GHC.Types.SrcLoc Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> BufSpan -> c BufSpan gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c BufSpan toConstr :: BufSpan -> Constr dataTypeOf :: BufSpan -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c BufSpan) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c BufSpan) gmapT :: (forall b. Data b => b -> b) -> BufSpan -> BufSpan gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> BufSpan -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> BufSpan -> r gmapQ :: (forall d. Data d => d -> u) -> BufSpan -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> BufSpan -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> BufSpan -> m BufSpan gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> BufSpan -> m BufSpan gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> BufSpan -> m BufSpan
Semigroup BufSpan |
Instance details Defined in GHC.Types.SrcLoc Methods (<>) :: BufSpan -> BufSpan -> BufSpan # sconcat :: NonEmpty BufSpan -> BufSpan # stimes :: Integral b => b -> BufSpan -> BufSpan #
Show BufSpan |
Instance details Defined in GHC.Types.SrcLoc Methods showsPrec :: Int -> BufSpan -> ShowS # show :: BufSpan -> String # showList :: [BufSpan] -> ShowS #
Eq BufSpan |
Instance details Defined in GHC.Types.SrcLoc Methods (==) :: BufSpan -> BufSpan -> Bool # (/=) :: BufSpan -> BufSpan -> Bool #
Ord BufSpan |
Instance details Defined in GHC.Types.SrcLoc Methods compare :: BufSpan -> BufSpan -> Ordering (<) :: BufSpan -> BufSpan -> Bool (<=) :: BufSpan -> BufSpan -> Bool (>) :: BufSpan -> BufSpan -> Bool (>=) :: BufSpan -> BufSpan -> Bool max :: BufSpan -> BufSpan -> BufSpan min :: BufSpan -> BufSpan -> BufSpan

data SrcSpanAnn' a #

#### Instances

Instances details

Functor SrcSpanAnn' # |
Instance details Defined in Development.IDE.GHC.Orphans Methods fmap :: (a -> b) -> SrcSpanAnn' a -> SrcSpanAnn' b # (<$) :: a -> SrcSpanAnn' b -> SrcSpanAnn' a #
Data a => Data (SrcSpanAnn' a) |
Instance details Defined in GHC.Parser.Annotation Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> SrcSpanAnn' a -> c (SrcSpanAnn' a) gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (SrcSpanAnn' a) toConstr :: SrcSpanAnn' a -> Constr dataTypeOf :: SrcSpanAnn' a -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (SrcSpanAnn' a)) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (SrcSpanAnn' a)) gmapT :: (forall b. Data b => b -> b) -> SrcSpanAnn' a -> SrcSpanAnn' a gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> SrcSpanAnn' a -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> SrcSpanAnn' a -> r gmapQ :: (forall d. Data d => d -> u) -> SrcSpanAnn' a -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> SrcSpanAnn' a -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> SrcSpanAnn' a -> m (SrcSpanAnn' a) gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> SrcSpanAnn' a -> m (SrcSpanAnn' a) gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> SrcSpanAnn' a -> m (SrcSpanAnn' a)
Semigroup an => Semigroup (SrcSpanAnn' an) |
Instance details Defined in GHC.Parser.Annotation Methods (<>) :: SrcSpanAnn' an -> SrcSpanAnn' an -> SrcSpanAnn' an # sconcat :: NonEmpty (SrcSpanAnn' an) -> SrcSpanAnn' an # stimes :: Integral b => b -> SrcSpanAnn' an -> SrcSpanAnn' an #
NFData (SrcSpanAnn' a) # |
Instance details Defined in Development.IDE.GHC.Orphans Methods rnf :: SrcSpanAnn' a -> () #
HasLoc (LocatedA a) |
Instance details Defined in GHC.Iface.Ext.Ast Methods loc :: LocatedA a -> SrcSpan
HasLoc (LocatedN a) |
Instance details Defined in GHC.Iface.Ext.Ast Methods loc :: LocatedN a -> SrcSpan
HiePass p => HasType (LocatedA (HsBind (GhcPass p))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods getTypeNode :: LocatedA (HsBind (GhcPass p)) -> HieM [HieAST Type]
HiePass p => HasType (LocatedA (HsExpr (GhcPass p))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods getTypeNode :: LocatedA (HsExpr (GhcPass p)) -> HieM [HieAST Type]
HiePass p => HasType (LocatedA (Pat (GhcPass p))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods getTypeNode :: LocatedA (Pat (GhcPass p)) -> HieM [HieAST Type]
ToHie (LBooleanFormula (LocatedN Name)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LBooleanFormula (LocatedN Name) -> HieM [HieAST Type]
HiePass p => ToHie (BindContext (LocatedA (HsBind (GhcPass p)))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: BindContext (LocatedA (HsBind (GhcPass p))) -> HieM [HieAST Type]
ToHie (Context (Located a)) => ToHie (Context (LocatedA a)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: Context (LocatedA a) -> HieM [HieAST Type]
ToHie (Context (Located a)) => ToHie (Context (LocatedN a)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: Context (LocatedN a) -> HieM [HieAST Type]
ToHie (EvBindContext (LocatedA TcEvBinds)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: EvBindContext (LocatedA TcEvBinds) -> HieM [HieAST Type]
ToHie (IEContext (LocatedA (IE GhcRn))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: IEContext (LocatedA (IE GhcRn)) -> HieM [HieAST Type]
ToHie (IEContext (LocatedA (IEWrappedName GhcRn))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: IEContext (LocatedA (IEWrappedName GhcRn)) -> HieM [HieAST Type]
ToHie (IEContext (LocatedA ModuleName)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: IEContext (LocatedA ModuleName) -> HieM [HieAST Type]
HiePass p => ToHie (PScoped (LocatedA (Pat (GhcPass p)))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: PScoped (LocatedA (Pat (GhcPass p))) -> HieM [HieAST Type]
(ToHie (RFContext label), ToHie arg, HasLoc arg, Data arg, Data label) => ToHie (RContext (LocatedA (HsFieldBind label arg))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: RContext (LocatedA (HsFieldBind label arg)) -> HieM [HieAST Type]
HiePass p => ToHie (RFContext (LocatedAn NoEpAnns (AmbiguousFieldOcc (GhcPass p)))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: RFContext (LocatedAn NoEpAnns (AmbiguousFieldOcc (GhcPass p))) -> HieM [HieAST Type]
HiePass p => ToHie (RFContext (LocatedAn NoEpAnns (FieldOcc (GhcPass p)))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: RFContext (LocatedAn NoEpAnns (FieldOcc (GhcPass p))) -> HieM [HieAST Type]
HiePass p => ToHie (RScoped (LocatedA (IPBind (GhcPass p)))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: RScoped (LocatedA (IPBind (GhcPass p))) -> HieM [HieAST Type]
(ToHie (LocatedA (body (GhcPass p))), AnnoBody p body, HiePass p) => ToHie (RScoped (LocatedA (Stmt (GhcPass p) (LocatedA (body (GhcPass p)))))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: RScoped (LocatedA (Stmt (GhcPass p) (LocatedA (body (GhcPass p))))) -> HieM [HieAST Type]
ToHie (RScoped (LocatedAn NoEpAnns (DerivStrategy GhcRn))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: RScoped (LocatedAn NoEpAnns (DerivStrategy GhcRn)) -> HieM [HieAST Type]
ToHie (RScoped (LocatedAn NoEpAnns (FamilyResultSig GhcRn))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: RScoped (LocatedAn NoEpAnns (FamilyResultSig GhcRn)) -> HieM [HieAST Type]
ToHie (RScoped (LocatedAn NoEpAnns (RuleBndr GhcRn))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: RScoped (LocatedAn NoEpAnns (RuleBndr GhcRn)) -> HieM [HieAST Type]
HiePass p => ToHie (SigContext (LocatedA (Sig (GhcPass p)))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: SigContext (LocatedA (Sig (GhcPass p))) -> HieM [HieAST Type]
ToHie (TScoped (LocatedA (HsSigType GhcRn))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: TScoped (LocatedA (HsSigType GhcRn)) -> HieM [HieAST Type]
ToHie (TScoped (FamEqn GhcRn (LocatedA (HsType GhcRn)))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: TScoped (FamEqn GhcRn (LocatedA (HsType GhcRn))) -> HieM [HieAST Type]
ToHie (TScoped (HsWildCardBndrs GhcRn (LocatedA (HsSigType GhcRn)))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: TScoped (HsWildCardBndrs GhcRn (LocatedA (HsSigType GhcRn))) -> HieM [HieAST Type]
ToHie (TScoped (HsWildCardBndrs GhcRn (LocatedA (HsType GhcRn)))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: TScoped (HsWildCardBndrs GhcRn (LocatedA (HsType GhcRn))) -> HieM [HieAST Type]
Data flag => ToHie (TVScoped (LocatedA (HsTyVarBndr flag GhcRn))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: TVScoped (LocatedA (HsTyVarBndr flag GhcRn)) -> HieM [HieAST Type]
ToHie (LocatedA HsWrapper) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA HsWrapper -> HieM [HieAST Type]
ToHie (LocatedA (FixitySig GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (FixitySig GhcRn) -> HieM [HieAST Type]
ToHie (LocatedA (AnnDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (AnnDecl GhcRn) -> HieM [HieAST Type]
ToHie (LocatedA (ClsInstDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (ClsInstDecl GhcRn) -> HieM [HieAST Type]
ToHie (LocatedA (ConDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (ConDecl GhcRn) -> HieM [HieAST Type]
ToHie (LocatedA (DataFamInstDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (DataFamInstDecl GhcRn) -> HieM [HieAST Type]
ToHie (LocatedA (DefaultDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (DefaultDecl GhcRn) -> HieM [HieAST Type]
ToHie (LocatedA (DerivDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (DerivDecl GhcRn) -> HieM [HieAST Type]
ToHie (LocatedA (DocDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (DocDecl GhcRn) -> HieM [HieAST Type]
ToHie (LocatedA (FamilyDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (FamilyDecl GhcRn) -> HieM [HieAST Type]
ToHie (LocatedA (ForeignDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (ForeignDecl GhcRn) -> HieM [HieAST Type]
ToHie (LocatedA (FunDep GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (FunDep GhcRn) -> HieM [HieAST Type]
ToHie (LocatedA (InstDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (InstDecl GhcRn) -> HieM [HieAST Type]
ToHie (LocatedA (RoleAnnotDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (RoleAnnotDecl GhcRn) -> HieM [HieAST Type]
ToHie (LocatedA (RuleDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (RuleDecl GhcRn) -> HieM [HieAST Type]
ToHie (LocatedA (RuleDecls GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (RuleDecls GhcRn) -> HieM [HieAST Type]
ToHie (LocatedA (SpliceDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (SpliceDecl GhcRn) -> HieM [HieAST Type]
ToHie (LocatedA (StandaloneKindSig GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (StandaloneKindSig GhcRn) -> HieM [HieAST Type]
ToHie (LocatedA (TyClDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (TyClDecl GhcRn) -> HieM [HieAST Type]
ToHie (LocatedA (TyFamInstDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (TyFamInstDecl GhcRn) -> HieM [HieAST Type]
ToHie (LocatedA (WarnDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (WarnDecl GhcRn) -> HieM [HieAST Type]
ToHie (LocatedA (WarnDecls GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (WarnDecls GhcRn) -> HieM [HieAST Type]
HiePass p => ToHie (LocatedA (HsCmd (GhcPass p))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (HsCmd (GhcPass p)) -> HieM [HieAST Type]
HiePass p => ToHie (LocatedA (HsExpr (GhcPass p))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (HsExpr (GhcPass p)) -> HieM [HieAST Type]
HiePass p => ToHie (LocatedA (HsUntypedSplice (GhcPass p))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (HsUntypedSplice (GhcPass p)) -> HieM [HieAST Type]
(HiePass p, Data (body (GhcPass p)), AnnoBody p body, ToHie (LocatedA (body (GhcPass p)))) => ToHie (LocatedA (Match (GhcPass p) (LocatedA (body (GhcPass p))))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (Match (GhcPass p) (LocatedA (body (GhcPass p)))) -> HieM [HieAST Type]
ToHie (LocatedA (ImportDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (ImportDecl GhcRn) -> HieM [HieAST Type]
ToHie (LocatedA (ConDeclField GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (ConDeclField GhcRn) -> HieM [HieAST Type]
ToHie (LocatedA (HsType GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (HsType GhcRn) -> HieM [HieAST Type]
ToHie (LocatedC (DerivClauseTys GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedC (DerivClauseTys GhcRn) -> HieM [HieAST Type]
ToHie (LocatedC [LocatedA (HsType GhcRn)]) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedC [LocatedA (HsType GhcRn)] -> HieM [HieAST Type]
ToHie (LocatedL [LocatedA (ConDeclField GhcRn)]) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedL [LocatedA (ConDeclField GhcRn)] -> HieM [HieAST Type]
ToHie (LocatedP OverlapMode) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedP OverlapMode -> HieM [HieAST Type]
ToHie (Located [LocatedAn NoEpAnns (HsDerivingClause GhcRn)]) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: Located [LocatedAn NoEpAnns (HsDerivingClause GhcRn)] -> HieM [HieAST Type]
Outputable a => Outputable (SrcSpanAnn' a) |
Instance details Defined in GHC.Parser.Annotation Methods ppr :: SrcSpanAnn' a -> SDoc #
Eq a => Eq (SrcSpanAnn' a) |
Instance details Defined in GHC.Parser.Annotation Methods (==) :: SrcSpanAnn' a -> SrcSpanAnn' a -> Bool # (/=) :: SrcSpanAnn' a -> SrcSpanAnn' a -> Bool #
HasSrcSpan (SrcSpanAnn' ann) # |
Instance details Defined in Development.IDE.GHC.Compat.Core Methods getLoc :: SrcSpanAnn' ann -> SrcSpan #
ToHie (LocatedAn NoEpAnns (HsDerivingClause GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedAn NoEpAnns (HsDerivingClause GhcRn) -> HieM [HieAST Type]
ToHie (LocatedAn NoEpAnns (InjectivityAnn GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedAn NoEpAnns (InjectivityAnn GhcRn) -> HieM [HieAST Type]
(ToHie (LocatedA (body (GhcPass p))), HiePass p, AnnoBody p body) => ToHie (LocatedAn NoEpAnns (GRHS (GhcPass p) (LocatedA (body (GhcPass p))))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedAn NoEpAnns (GRHS (GhcPass p) (LocatedA (body (GhcPass p)))) -> HieM [HieAST Type]
HiePass p => ToHie (LocatedAn NoEpAnns (HsCmdTop (GhcPass p))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedAn NoEpAnns (HsCmdTop (GhcPass p)) -> HieM [HieAST Type]
ToHie (LocatedAn NoEpAnns HsIPName) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedAn NoEpAnns HsIPName -> HieM [HieAST Type]
(ToHie (LocatedA (body (GhcPass p))), HiePass p, AnnoBody p body) => ToHie (GRHSs (GhcPass p) (LocatedA (body (GhcPass p)))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: GRHSs (GhcPass p) (LocatedA (body (GhcPass p))) -> HieM [HieAST Type]
(HiePass p, AnnoBody p body, ToHie (LocatedA (body (GhcPass p)))) => ToHie (MatchGroup (GhcPass p) (LocatedA (body (GhcPass p)))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: MatchGroup (GhcPass p) (LocatedA (body (GhcPass p))) -> HieM [HieAST Type]
NamedThing (Located a) => NamedThing (LocatedAn an a) |
Instance details Defined in GHC.Parser.Annotation Methods getOccName :: LocatedAn an a -> OccName # getName :: LocatedAn an a -> Name #
(Outputable a, Outputable e) => Outputable (GenLocated (SrcSpanAnn' a) e) |
Instance details Defined in GHC.Parser.Annotation Methods ppr :: GenLocated (SrcSpanAnn' a) e -> SDoc #
(Outputable a, OutputableBndr e) => OutputableBndr (GenLocated (SrcSpanAnn' a) e) |
Instance details Defined in GHC.Parser.Annotation Methods pprBndr :: BindingSite -> GenLocated (SrcSpanAnn' a) e -> SDoc pprPrefixOcc :: GenLocated (SrcSpanAnn' a) e -> SDoc pprInfixOcc :: GenLocated (SrcSpanAnn' a) e -> SDoc bndrIsJoin_maybe :: GenLocated (SrcSpanAnn' a) e -> Maybe Int
HasSrcSpan (GenLocated (SrcSpanAnn' ann) a) # |
Instance details Defined in Development.IDE.GHC.Compat.Core Methods getLoc :: GenLocated (SrcSpanAnn' ann) a -> SrcSpan #
type Anno (LocatedA (IE (GhcPass p))) |
Instance details Defined in GHC.Hs.ImpExp type Anno (LocatedA (IE (GhcPass p))) = SrcSpanAnnA
type Anno (LocatedN Name) |
Instance details Defined in GHC.Hs.Binds type Anno (LocatedN Name) = SrcSpan
type Anno (LocatedN RdrName) |
Instance details Defined in GHC.Hs.Binds type Anno (LocatedN RdrName) = SrcSpan
type Anno (LocatedN Id) |
Instance details Defined in GHC.Hs.Binds type Anno (LocatedN Id) = SrcSpan
type Anno [LocatedA (Match (GhcPass p) (LocatedA (HsCmd (GhcPass p))))] |
Instance details Defined in GHC.Hs.Expr type Anno [LocatedA (Match (GhcPass p) (LocatedA (HsCmd (GhcPass p))))] = SrcSpanAnnL
type Anno [LocatedA (Match (GhcPass p) (LocatedA (HsExpr (GhcPass p))))] |
Instance details Defined in GHC.Hs.Expr type Anno [LocatedA (Match (GhcPass p) (LocatedA (HsExpr (GhcPass p))))] = SrcSpanAnnL
type Anno [LocatedA (Match GhcPs (LocatedA (PatBuilder GhcPs)))] |
Instance details Defined in GHC.Parser.PostProcess type Anno [LocatedA (Match GhcPs (LocatedA (PatBuilder GhcPs)))] = SrcSpanAnnL
type Anno [LocatedA (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (HsCmd (GhcPass pr))))] |
Instance details Defined in GHC.Hs.Expr type Anno [LocatedA (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (HsCmd (GhcPass pr))))] = SrcSpanAnnL
type Anno [LocatedA (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (HsCmd (GhcPass pr))))] |
Instance details Defined in GHC.Hs.Expr type Anno [LocatedA (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (HsCmd (GhcPass pr))))] = SrcSpanAnnL
type Anno [LocatedA (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (HsCmd (GhcPass pr))))] |
Instance details Defined in GHC.Hs.Expr type Anno [LocatedA (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (HsCmd (GhcPass pr))))] = SrcSpanAnnL
type Anno [LocatedA (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (HsExpr (GhcPass pr))))] |
Instance details Defined in GHC.Hs.Expr type Anno [LocatedA (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (HsExpr (GhcPass pr))))] = SrcSpanAnnL
type Anno [LocatedA (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (body (GhcPass pr))))] |
Instance details Defined in GHC.Hs.Expr type Anno [LocatedA (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (body (GhcPass pr))))] = SrcSpanAnnL
type Anno [LocatedA (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (body (GhcPass pr))))] |
Instance details Defined in GHC.Hs.Expr type Anno [LocatedA (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (body (GhcPass pr))))] = SrcSpanAnnL
type Anno [LocatedA (StmtLR GhcPs GhcPs (LocatedA (PatBuilder GhcPs)))] |
Instance details Defined in GHC.Parser.Types type Anno [LocatedA (StmtLR GhcPs GhcPs (LocatedA (PatBuilder GhcPs)))] = SrcSpanAnnL
type Anno [LocatedA (IE (GhcPass p))] |
Instance details Defined in GHC.Hs.ImpExp type Anno [LocatedA (IE (GhcPass p))] = SrcSpanAnnL
type Anno [LocatedA (ConDeclField (GhcPass _1))] |
Instance details Defined in GHC.Hs.Decls type Anno [LocatedA (ConDeclField (GhcPass _1))] = SrcSpanAnnL
type Anno [LocatedA (HsType (GhcPass p))] |
Instance details Defined in GHC.Hs.Type type Anno [LocatedA (HsType (GhcPass p))] = SrcSpanAnnC
type Anno [LocatedN Name] |
Instance details Defined in GHC.Hs.Binds type Anno [LocatedN Name] = SrcSpan
type Anno [LocatedN RdrName] |
Instance details Defined in GHC.Hs.Binds type Anno [LocatedN RdrName] = SrcSpan
type Anno [LocatedN Id] |
Instance details Defined in GHC.Hs.Binds type Anno [LocatedN Id] = SrcSpan
type Anno (FamEqn p (LocatedA (HsType p))) |
Instance details Defined in GHC.Hs.Decls type Anno (FamEqn p (LocatedA (HsType p))) = SrcSpanAnnA
type Anno (GRHS (GhcPass p) (LocatedA (HsCmd (GhcPass p)))) |
Instance details Defined in GHC.Hs.Expr type Anno (GRHS (GhcPass p) (LocatedA (HsCmd (GhcPass p)))) = SrcAnn NoEpAnns
type Anno (GRHS (GhcPass p) (LocatedA (HsExpr (GhcPass p)))) |
Instance details Defined in GHC.Hs.Expr type Anno (GRHS (GhcPass p) (LocatedA (HsExpr (GhcPass p)))) = SrcAnn NoEpAnns
type Anno (GRHS GhcPs (LocatedA (PatBuilder GhcPs))) |
Instance details Defined in GHC.Parser.PostProcess type Anno (GRHS GhcPs (LocatedA (PatBuilder GhcPs))) = SrcAnn NoEpAnns
type Anno (Match (GhcPass p) (LocatedA (HsCmd (GhcPass p)))) |
Instance details Defined in GHC.Hs.Expr type Anno (Match (GhcPass p) (LocatedA (HsCmd (GhcPass p)))) = SrcSpanAnnA
type Anno (Match (GhcPass p) (LocatedA (HsExpr (GhcPass p)))) |
Instance details Defined in GHC.Hs.Expr type Anno (Match (GhcPass p) (LocatedA (HsExpr (GhcPass p)))) = SrcSpanAnnA
type Anno (Match GhcPs (LocatedA (PatBuilder GhcPs))) |
Instance details Defined in GHC.Parser.PostProcess type Anno (Match GhcPs (LocatedA (PatBuilder GhcPs))) = SrcSpanAnnA
type Anno (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (body (GhcPass pr)))) |
Instance details Defined in GHC.Hs.Expr type Anno (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (body (GhcPass pr)))) = SrcSpanAnnA
type Anno (StmtLR GhcPs GhcPs (LocatedA (PatBuilder GhcPs))) |
Instance details Defined in GHC.Parser.PostProcess type Anno (StmtLR GhcPs GhcPs (LocatedA (PatBuilder GhcPs))) = SrcSpanAnnA
type Anno (StmtLR GhcRn GhcRn (LocatedA (body GhcRn))) |
Instance details Defined in GHC.Hs.Expr type Anno (StmtLR GhcRn GhcRn (LocatedA (body GhcRn))) = SrcSpanAnnA

type SrcAnn ann = SrcSpanAnn' (EpAnn ann) #

leftmost_smallest :: SrcSpan -> SrcSpan -> Ordering #

containsSpan :: RealSrcSpan -> RealSrcSpan -> Bool #

mkGeneralSrcSpan :: FastString -> SrcSpan #

mkRealSrcSpan :: RealSrcLoc -> RealSrcLoc -> RealSrcSpan #

mkRealSrcLoc :: FastString -> Int -> Int -> RealSrcLoc #

getRealSrcSpan :: RealLocated a -> RealSrcSpan #

realSrcLocSpan :: RealSrcLoc -> RealSrcSpan #

realSrcSpanStart :: RealSrcSpan -> RealSrcLoc #

realSrcSpanEnd :: RealSrcSpan -> RealSrcLoc #

isSubspanOfA :: LocatedAn la a -> LocatedAn lb b -> Bool #

isSubspanOf :: SrcSpan -> SrcSpan -> Bool #

wiredInSrcSpan :: SrcSpan #

mkSrcSpan :: SrcLoc -> SrcLoc -> SrcSpan #

srcSpanStart :: SrcSpan -> SrcLoc #

srcSpanStartLine :: RealSrcSpan -> Int #

srcSpanStartCol :: RealSrcSpan -> Int #

srcSpanEnd :: SrcSpan -> SrcLoc #

srcSpanEndLine :: RealSrcSpan -> Int #

srcSpanEndCol :: RealSrcSpan -> Int #

srcSpanFile :: RealSrcSpan -> FastString #

srcLocCol :: RealSrcLoc -> Int #

srcLocFile :: RealSrcLoc -> FastString #

srcLocLine :: RealSrcLoc -> Int #

noSrcSpan :: SrcSpan #

noSrcLoc :: SrcLoc #

noLoc :: e -> Located e #

mapLoc :: (a -> b) -> GenLocated l a -> GenLocated l b #

# Finder

data FindResult #

Constructors

Found ModLocation Module |
NoPackage Unit |
FoundMultiple [(Module, ModuleOrigin)] |
NotFound |
Fields fr_paths :: [FilePath] fr_pkg :: Maybe Unit fr_mods_hidden :: [Unit] fr_pkgs_hidden :: [Unit] fr_unusables :: [(Unit, UnusableUnitReason)] fr_suggestions :: [ModuleSuggestion]

mkHomeModLocation :: DynFlags -> ModuleName -> FilePath -> IO ModLocation #

addBootSuffixLocnOut :: ModLocation -> ModLocation #

Add the `-boot` suffix to all output file paths associated with the module, not including the input file itself

findObjectLinkableMaybe :: Module -> ModLocation -> IO (Maybe Linkable) #

data InstalledFindResult #

Constructors

InstalledFound ModLocation InstalledModule |
InstalledNoPackage UnitId |
InstalledNotFound [FilePath] (Maybe UnitId) |

# Module and Package

data ModuleOrigin #

Constructors

ModHidden |
ModUnusable UnusableUnitReason |
ModOrigin |
Fields fromOrigUnit :: Maybe Bool fromExposedReexport :: [UnitInfo] fromHiddenReexport :: [UnitInfo] fromPackageFlag :: Bool

#### Instances

Instances details

Monoid ModuleOrigin |
Instance details Defined in GHC.Unit.State Methods mempty :: ModuleOrigin # mappend :: ModuleOrigin -> ModuleOrigin -> ModuleOrigin # mconcat :: [ModuleOrigin] -> ModuleOrigin #
Semigroup ModuleOrigin |
Instance details Defined in GHC.Unit.State Methods (<>) :: ModuleOrigin -> ModuleOrigin -> ModuleOrigin # sconcat :: NonEmpty ModuleOrigin -> ModuleOrigin # stimes :: Integral b => b -> ModuleOrigin -> ModuleOrigin #
Outputable ModuleOrigin |
Instance details Defined in GHC.Unit.State Methods ppr :: ModuleOrigin -> SDoc #

newtype PackageName #

Constructors

PackageName |
Fields unPackageName :: FastString

#### Instances

Instances details

Show PackageName # |
Instance details Defined in Development.IDE.GHC.Orphans Methods showsPrec :: Int -> PackageName -> ShowS # show :: PackageName -> String # showList :: [PackageName] -> ShowS #
Uniquable PackageName |
Instance details Defined in GHC.Unit.Info Methods getUnique :: PackageName -> Unique #
Outputable PackageName |
Instance details Defined in GHC.Unit.Info Methods ppr :: PackageName -> SDoc #
Eq PackageName |
Instance details Defined in GHC.Unit.Info Methods (==) :: PackageName -> PackageName -> Bool # (/=) :: PackageName -> PackageName -> Bool #

# Linker

data Unlinked #

Constructors

DotO ObjFile |
DotA FilePath |
DotDLL FilePath |
CoreBindings WholeCoreBindings |
LoadedBCOs [Unlinked] |
BCOs CompiledByteCode [SptEntry] |

#### Instances

Instances details

NFData Unlinked # |
Instance details Defined in Development.IDE.GHC.Orphans Methods rnf :: Unlinked -> () #
Outputable Unlinked |
Instance details Defined in GHC.Linker.Types Methods ppr :: Unlinked -> SDoc #

data Linkable #

Constructors

LM |
Fields linkableTime :: !UTCTime linkableModule :: !Module linkableUnlinked :: [Unlinked]

#### Instances

Instances details

Show Linkable # |
Instance details Defined in Development.IDE.GHC.Orphans Methods showsPrec :: Int -> Linkable -> ShowS # show :: Linkable -> String # showList :: [Linkable] -> ShowS #
NFData Linkable # |
Instance details Defined in Development.IDE.GHC.Orphans Methods rnf :: Linkable -> () #
Outputable Linkable |
Instance details Defined in GHC.Linker.Types Methods ppr :: Linkable -> SDoc #

unload :: HscEnv -> [Linkable] -> IO () #

# Hooks

data Hooks #

runMetaHook :: Hooks -> Maybe (MetaHook TcM) #

type MetaHook (f :: Type -> Type) = MetaRequest -> LHsExpr GhcTc -> f MetaResult #

data MetaRequest #

Constructors

MetaE (LHsExpr GhcPs -> MetaResult) |
MetaP (LPat GhcPs -> MetaResult) |
MetaT (LHsType GhcPs -> MetaResult) |
MetaD ([LHsDecl GhcPs] -> MetaResult) |
MetaAW (Serialized -> MetaResult) |

metaRequestE :: Functor f => MetaHook f -> LHsExpr GhcTc -> f (LHsExpr GhcPs) #

metaRequestP :: Functor f => MetaHook f -> LHsExpr GhcTc -> f (LPat GhcPs) #

metaRequestT :: Functor f => MetaHook f -> LHsExpr GhcTc -> f (LHsType GhcPs) #

metaRequestD :: Functor f => MetaHook f -> LHsExpr GhcTc -> f [LHsDecl GhcPs] #

metaRequestAW :: Functor f => MetaHook f -> LHsExpr GhcTc -> f Serialized #

# HPT

addToHpt :: HomePackageTable -> ModuleName -> HomeModInfo -> HomePackageTable #

addListToHpt :: HomePackageTable -> [(ModuleName, HomeModInfo)] -> HomePackageTable #

# Driver-Make

data Target #

Constructors

Target |
Fields targetId :: !TargetId targetAllowObjCode :: !Bool targetUnitId :: !UnitId targetContents :: !(Maybe (InputFileBuffer, UTCTime))

#### Instances

Instances details

Outputable Target |
Instance details Defined in GHC.Types.Target Methods ppr :: Target -> SDoc #

data TargetId #

Constructors

TargetModule !ModuleName |
TargetFile !FilePath !(Maybe Phase) |

#### Instances

Instances details

Outputable TargetId |
Instance details Defined in GHC.Types.Target Methods ppr :: TargetId -> SDoc #
Eq TargetId |
Instance details Defined in GHC.Types.Target Methods (==) :: TargetId -> TargetId -> Bool # (/=) :: TargetId -> TargetId -> Bool #

mkModuleGraph :: [ModuleGraphNode] -> ModuleGraph #

# GHCi

initObjLinker :: HscEnv -> IO () #

loadDLL :: HscEnv -> String -> IO (Maybe String) #

data InteractiveImport #

Constructors

IIDecl (ImportDecl GhcPs) |
IIModule ModuleName |

#### Instances

Instances details

Show InteractiveImport # |
Instance details Defined in Development.IDE.GHC.Orphans Methods showsPrec :: Int -> InteractiveImport -> ShowS # show :: InteractiveImport -> String # showList :: [InteractiveImport] -> ShowS #
Outputable InteractiveImport |
Instance details Defined in GHC.Runtime.Context Methods ppr :: InteractiveImport -> SDoc #

getContext :: GhcMonad m => m [InteractiveImport] #

setContext :: GhcMonad m => [InteractiveImport] -> m () #

parseImportDecl :: GhcMonad m => String -> m (ImportDecl GhcPs) #

runDecls :: GhcMonad m => String -> m [Name] #

data Warn #

Constructors

Warn |
Fields warnReason :: DiagnosticReason warnMsg :: Located String

# ModLocation

data ModLocation #

#### Instances

Instances details

Show ModLocation |
Instance details Defined in GHC.Unit.Module.Location Methods showsPrec :: Int -> ModLocation -> ShowS # show :: ModLocation -> String # showList :: [ModLocation] -> ShowS #
Outputable ModLocation |
Instance details Defined in GHC.Unit.Module.Location Methods ppr :: ModLocation -> SDoc #

ml_hs_file :: ModLocation -> Maybe FilePath #

ml_obj_file :: ModLocation -> FilePath #

ml_hi_file :: ModLocation -> FilePath #

ml_hie_file :: ModLocation -> FilePath #

# DataCon

dataConExTyCoVars :: DataCon -> [TyCoVar] #

# Role

data Role #

Constructors

Nominal |
Representational |
Phantom |

#### Instances

Instances details

Data Role |
Instance details Defined in Language.Haskell.Syntax.Basic Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Role -> c Role gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Role toConstr :: Role -> Constr dataTypeOf :: Role -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Role) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Role) gmapT :: (forall b. Data b => b -> b) -> Role -> Role gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Role -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Role -> r gmapQ :: (forall d. Data d => d -> u) -> Role -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> Role -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> Role -> m Role gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Role -> m Role gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Role -> m Role
Eq Role |
Instance details Defined in Language.Haskell.Syntax.Basic Methods (==) :: Role -> Role -> Bool # (/=) :: Role -> Role -> Bool #
Ord Role |
Instance details Defined in Language.Haskell.Syntax.Basic Methods compare :: Role -> Role -> Ordering (<) :: Role -> Role -> Bool (<=) :: Role -> Role -> Bool (>) :: Role -> Role -> Bool (>=) :: Role -> Role -> Bool max :: Role -> Role -> Role min :: Role -> Role -> Role
type Anno (Maybe Role) |
Instance details Defined in GHC.Hs.Decls type Anno (Maybe Role) = SrcAnn NoEpAnns
type Anno (Maybe Role) |
Instance details Defined in GHC.Hs.Decls type Anno (Maybe Role) = SrcAnn NoEpAnns

# Panic

data PlainGhcException #

#### Instances

Instances details

Exception PlainGhcException |
Instance details Defined in GHC.Utils.Panic.Plain Methods toException :: PlainGhcException -> SomeException # fromException :: SomeException -> Maybe PlainGhcException # displayException :: PlainGhcException -> String #
Show PlainGhcException |
Instance details Defined in GHC.Utils.Panic.Plain Methods showsPrec :: Int -> PlainGhcException -> ShowS # show :: PlainGhcException -> String # showList :: [PlainGhcException] -> ShowS #

panic :: HasCallStack => String -> a #

panicDoc :: String -> SDoc -> a #

# Other

data CoreModule #

Constructors

CoreModule |
Fields cm_module :: !Module cm_types :: !TypeEnv cm_binds :: CoreProgram cm_safe :: SafeHaskellMode

#### Instances

Instances details

Show CoreModule # |
Instance details Defined in Development.IDE.GHC.Orphans Methods showsPrec :: Int -> CoreModule -> ShowS # show :: CoreModule -> String # showList :: [CoreModule] -> ShowS #
NFData CoreModule # |
Instance details Defined in Development.IDE.GHC.Orphans Methods rnf :: CoreModule -> () #
Outputable CoreModule |
Instance details Defined in GHC Methods ppr :: CoreModule -> SDoc #

data SafeHaskellMode #

Constructors

Sf_None |
Sf_Unsafe |
Sf_Trustworthy |
Sf_Safe |
Sf_SafeInferred |
Sf_Ignore |

#### Instances

Instances details

Show SafeHaskellMode |
Instance details Defined in GHC.Types.SafeHaskell Methods showsPrec :: Int -> SafeHaskellMode -> ShowS # show :: SafeHaskellMode -> String # showList :: [SafeHaskellMode] -> ShowS #
NFData SafeHaskellMode # |
Instance details Defined in Development.IDE.GHC.Orphans Methods rnf :: SafeHaskellMode -> () #
Outputable SafeHaskellMode |
Instance details Defined in GHC.Types.SafeHaskell Methods ppr :: SafeHaskellMode -> SDoc #
Eq SafeHaskellMode |
Instance details Defined in GHC.Types.SafeHaskell Methods (==) :: SafeHaskellMode -> SafeHaskellMode -> Bool # (/=) :: SafeHaskellMode -> SafeHaskellMode -> Bool #

pattern GRE :: Name -> Parent -> Bool -> [ImportSpec] -> GlobalRdrElt #

gre_name :: GlobalRdrElt -> Name #

gre_imp :: GlobalRdrElt -> [ImportSpec] #

gre_lcl :: GlobalRdrElt -> Bool #

gre_par :: GlobalRdrElt -> Parent #

collectHsBindsBinders :: CollectPass p => Bag (XRec p (HsBindLR p idR)) -> [IdP p] #

# Util Module re-exports

class Uniquable a where #

Methods

getUnique :: a -> Unique #

#### Instances

Instances details

Uniquable Label |
Instance details Defined in GHC.Cmm.Dataflow.Label Methods getUnique :: Label -> Unique #
Uniquable Class |
Instance details Defined in GHC.Core.Class Methods getUnique :: Class -> Unique #
Uniquable CoAxiomRule |
Instance details Defined in GHC.Core.Coercion.Axiom Methods getUnique :: CoAxiomRule -> Unique #
Uniquable ConLike |
Instance details Defined in GHC.Core.ConLike Methods getUnique :: ConLike -> Unique #
Uniquable DataCon |
Instance details Defined in GHC.Core.DataCon Methods getUnique :: DataCon -> Unique #
Uniquable PatSyn |
Instance details Defined in GHC.Core.PatSyn Methods getUnique :: PatSyn -> Unique #
Uniquable CoercionHole |
Instance details Defined in GHC.Core.TyCo.Rep Methods getUnique :: CoercionHole -> Unique #
Uniquable TyCon |
Instance details Defined in GHC.Core.TyCon Methods getUnique :: TyCon -> Unique #
Uniquable FastString |
Instance details Defined in GHC.Types.Unique Methods getUnique :: FastString -> Unique #
Uniquable Ident |
Instance details Defined in GHC.JS.Syntax Methods getUnique :: Ident -> Unique #
Uniquable EvBindsVar |
Instance details Defined in GHC.Tc.Types.Evidence Methods getUnique :: EvBindsVar -> Unique #
Uniquable SkolemInfo |
Instance details Defined in GHC.Tc.Types.Origin Methods getUnique :: SkolemInfo -> Unique #
Uniquable Name |
Instance details Defined in GHC.Types.Name Methods getUnique :: Name -> Unique #
Uniquable OccName |
Instance details Defined in GHC.Types.Name.Occurrence Methods getUnique :: OccName -> Unique #
Uniquable Unique |
Instance details Defined in GHC.Types.Unique Methods getUnique :: Unique -> Unique #
Uniquable Var |
Instance details Defined in GHC.Types.Var Methods getUnique :: Var -> Unique #
Uniquable PackageId |
Instance details Defined in GHC.Unit.Info Methods getUnique :: PackageId -> Unique #
Uniquable PackageName |
Instance details Defined in GHC.Unit.Info Methods getUnique :: PackageName -> Unique #
Uniquable Module |
Instance details Defined in GHC.Unit.Types Methods getUnique :: Module -> Unique #
Uniquable UnitId |
Instance details Defined in GHC.Unit.Types Methods getUnique :: UnitId -> Unique #
Uniquable ModuleName |
Instance details Defined in GHC.Types.Unique Methods getUnique :: ModuleName -> Unique #
Uniquable Int |
Instance details Defined in GHC.Types.Unique Methods getUnique :: Int -> Unique #
Uniquable (CoAxiom br) |
Instance details Defined in GHC.Core.Coercion.Axiom Methods getUnique :: CoAxiom br -> Unique #
Uniquable unit => Uniquable (Definite unit) |
Instance details Defined in GHC.Unit.Types Methods getUnique :: Definite unit -> Unique #
IsUnitId u => Uniquable (GenUnit u) |
Instance details Defined in GHC.Unit.Types Methods getUnique :: GenUnit u -> Unique #

hasKey :: Uniquable a => a -> Unique -> Bool #

aRROW :: Module #

absentConstraintErrorIdKey :: Unique #

absentErrorIdKey :: Unique #

absentSumFieldErrorIdKey :: Unique #

addrPrimTyConKey :: Unique #

allNameStringList :: [String] #

allNameStrings :: Infinite String #

all_RDR :: RdrName #

alt_RDR :: RdrName #

alternativeClassKey :: Unique #

alternativeClassName :: Name #

and_RDR :: RdrName #

anyTyConKey :: Unique #

apAClassOpKey :: Unique #

apAName :: Name #

ap_RDR :: RdrName #

appAIdKey :: Unique #

appAName :: Name #

appendIdKey :: Unique #

appendName :: Name #

append_RDR :: RdrName #

applicativeClassKey :: Unique #

applicativeClassName :: Name #

arrAIdKey :: Unique #

arrAName :: Name #

arrayPrimTyConKey :: Unique #

assertErrorIdKey :: Unique #

assertErrorName :: Name #

assertIdKey :: Unique #

assertName :: Name #

augmentIdKey :: Unique #

augmentName :: Name #

basicKnownKeyNames :: [Name] #

bcoPrimTyConKey :: Unique #

bignatCompareIdKey :: Unique #

bignatCompareName :: Name #

bignatCompareWordIdKey :: Unique #

bignatCompareWordName :: Name #

bignatEqIdKey :: Unique #

bignatEqName :: Name #

bignatFromWordListIdKey :: Unique #

bignatFromWordListName :: Name #

bindIOIdKey :: Unique #

bindIOName :: Name #

bindIO_RDR :: RdrName #

bindMClassOpKey :: Unique #

bindMName :: Name #

bindM_RDR :: RdrName #

bitIntegerIdKey :: Unique #

bnbVarQual :: String -> Unique -> Name #

bniVarQual :: String -> Unique -> Name #

bnnVarQual :: String -> Unique -> Name #

boolTyConKey :: Unique #

boundedClassKey :: Unique #

boundedClassName :: Name #

boxedRepDataConKey :: Unique #

boxedRepDataConTyConKey :: Unique #

boxityConKey :: Unique #

buildIdKey :: Unique #

buildName :: Name #

build_RDR :: RdrName #

byteArrayPrimTyConKey :: Unique #

c1TyConKey :: Unique #

c1TyConName :: Name #

cONSTRAINTTyConKey :: Unique #

cONTROL_EXCEPTION_BASE :: Module #

cTyConKey :: Unique #

cTyConName :: Name #

callStackTyConKey :: Unique #

callStackTyConName :: Name #

ccArrowTyConKey :: Unique #

charDataConKey :: Unique #

charPrimTyConKey :: Unique #

charTyConKey :: Unique #

choiceAIdKey :: Unique #

choiceAName :: Name #

choose_RDR :: RdrName #

clsQual :: Module -> FastString -> Unique -> Name #

clsQual_RDR :: Module -> FastString -> RdrName #

coerceKey :: Unique #

coercibleDataConKey :: Unique #

coercibleSCSelIdKey :: Unique #

coercibleTyConKey :: Unique #

coercionTokenIdKey :: Unique #

comp1DataCon_RDR :: RdrName #

compTyConKey :: Unique #

compTyConName :: Name #

compactPrimTyConKey :: Unique #

compare_RDR :: RdrName #

composeAIdKey :: Unique #

composeAName :: Name #

compose_RDR :: RdrName #

conFixity_RDR :: RdrName #

conIsRecord_RDR :: RdrName #

conName_RDR :: RdrName #

concatIdKey :: Unique #

concatName :: Name #

consDataConKey :: Unique #

considerAccessibleIdKey :: Unique #

considerAccessibleName :: Name #

constPtrConName :: Name #

constPtrTyConKey :: Unique #

constraintKindRepKey :: Unique #

constraintKindRepName :: Name #

constraintKindTyConKey :: Unique #

constructorClassKey :: Unique #

constructorClassName :: Name #

crossDataConKey :: Unique #

cstringLengthIdKey :: Unique #

cstringLengthName :: Name #

ctArrowTyConKey :: Unique #

d1TyConKey :: Unique #

d1TyConName :: Name #

dATA_COERCE :: Module #

dATA_EITHER :: Module #

dATA_FOLDABLE :: Module #

dATA_LIST :: Module #

dATA_STRING :: Module #

dATA_TRAVERSABLE :: Module #

dEBUG_TRACE :: Module #

dTyConKey :: Unique #

dTyConName :: Name #

dYNAMIC :: Module #

dataClassKey :: Unique #

dataClassName :: Name #

dataQual_RDR :: Module -> FastString -> RdrName #

dataToTag_RDR :: RdrName #

datatypeClassKey :: Unique #

datatypeClassName :: Name #

datatypeName_RDR :: RdrName #

dcQual :: Module -> FastString -> Unique -> Name #

decidedLazyDataConKey :: Unique #

decidedLazyDataConName :: Name #

decidedStrictDataConKey :: Unique #

decidedStrictDataConName :: Name #

decidedUnpackDataConKey :: Unique #

decidedUnpackDataConName :: Name #

derivableClassKeys :: [Unique] #

dictTyConKey :: Unique #

divIntIdKey :: Unique #

divIntName :: Name #

dollarIdKey :: Unique #

dollarName :: Name #

doubleDataConKey :: Unique #

doublePrimTyConKey :: Unique #

doubleTyConKey :: Unique #

doubleX2PrimTyConKey :: Unique #

doubleX4PrimTyConKey :: Unique #

doubleX8PrimTyConKey :: Unique #

eitherTyConKey :: Unique #

eitherTyConName :: Name #

emptyCallStackKey :: Unique #

emptyCallStackName :: Name #

enumClassKey :: Unique #

enumClassName :: Name #

enumClass_RDR :: RdrName #

enumFromClassOpKey :: Unique #

enumFromName :: Name #

enumFromThenClassOpKey :: Unique #

enumFromThenName :: Name #

enumFromThenToClassOpKey :: Unique #

enumFromThenToName :: Name #

enumFromThenTo_RDR :: RdrName #

enumFromThen_RDR :: RdrName #

enumFromToClassOpKey :: Unique #

enumFromToName :: Name #

enumFromTo_RDR :: RdrName #

enumFrom_RDR :: RdrName #

eqClassKey :: Unique #

eqClassName :: Name #

eqClassOpKey :: Unique #

eqClass_RDR :: RdrName #

eqDataConKey :: Unique #

eqName :: Name #

eqPhantPrimTyConKey :: Unique #

eqPrimTyConKey :: Unique #

eqReprPrimTyConKey :: Unique #

eqSCSelIdKey :: Unique #

eqStringIdKey :: Unique #

eqStringName :: Name #

eqTag_RDR :: RdrName #

eqTyConKey :: Unique #

eq_RDR :: RdrName #

errorMessageTypeErrorFamKey :: Unique #

errorMessageTypeErrorFamName :: Name #

error_RDR :: RdrName #

expectP_RDR :: RdrName #

fOREIGN_C_CONSTPTR :: Module #

fUNTyConKey :: Unique #

failIOIdKey :: Unique #

failIOName :: Name #

failMClassOpKey :: Unique #

failMName :: Name #

failM_RDR :: RdrName #

falseDataConKey :: Unique #

filterIdKey :: Unique #

filterName :: Name #

fingerprintDataConKey :: Unique #

fingerprintDataConName :: Name #

firstAIdKey :: Unique #

firstAName :: Name #

floatDataConKey :: Unique #

floatPrimTyConKey :: Unique #

floatTyConKey :: Unique #

floatX16PrimTyConKey :: Unique #

floatX4PrimTyConKey :: Unique #

floatX8PrimTyConKey :: Unique #

floatingClassKey :: Unique #

floatingClassName :: Name #

fmapClassOpKey :: Unique #

fmapName :: Name #

fmap_RDR :: RdrName #

foldMap_RDR :: RdrName #

foldableClassKey :: Unique #

foldableClassName :: Name #

foldable_foldr_RDR :: RdrName #

foldrIdKey :: Unique #

foldrName :: Name #

foldr_RDR :: RdrName #

foreignObjPrimTyConKey :: Unique #

fractionalClassKey :: Unique #

fractionalClassKeys :: [Unique] #

fractionalClassName :: Name #

from1_RDR :: RdrName #

fromEnum_RDR :: RdrName #

fromIntegerClassOpKey :: Unique #

fromIntegerName :: Name #

fromInteger_RDR :: RdrName #

fromIntegralIdKey :: Unique #

fromIntegralName :: Name #

fromIntegral_RDR :: RdrName #

fromLabelClassOpKey :: Unique #

fromLabelClassOpName :: Name #

fromListClassOpKey :: Unique #

fromListNClassOpKey :: Unique #

fromListNName :: Name #

fromListN_RDR :: RdrName #

fromListName :: Name #

fromList_RDR :: RdrName #

fromRationalClassOpKey :: Unique #

fromRationalName :: Name #

fromRational_RDR :: RdrName #

fromStaticPtrClassOpKey :: Unique #

fromStaticPtrName :: Name #

fromStringClassOpKey :: Unique #

fromStringName :: Name #

fromString_RDR :: RdrName #

from_RDR :: RdrName #

frontendPluginTyConKey :: Unique #

frontendPluginTyConName :: Name #

funPtrTyConKey :: Unique #

funPtrTyConName :: Name #

functorClassKey :: Unique #

functorClassName :: Name #

gENERICS :: Module #

gHC_BASE :: Module #

gHC_CLASSES :: Module #

gHC_CONC :: Module #

gHC_CSTRING :: Module #

gHC_DESUGAR :: Module #

gHC_ENUM :: Module #

gHC_ERR :: Module #

gHC_EXTS :: Module #

gHC_FINGERPRINT_TYPE :: Module #

gHC_FLOAT :: Module #

gHC_GENERICS :: Module #

gHC_GHCI :: Module #

gHC_GHCI_HELPERS :: Module #

gHC_INT :: Module #

gHC_IO :: Module #

gHC_IO_Exception :: Module #

gHC_IS_LIST :: Module #

gHC_IX :: Module #

gHC_LIST :: Module #

gHC_MAGIC :: Module #

gHC_MAGIC_DICT :: Module #

gHC_MAYBE :: Module #

gHC_NUM :: Module #

gHC_NUM_BIGNAT :: Module #

gHC_NUM_INTEGER :: Module #

gHC_NUM_NATURAL :: Module #

gHC_OVER_LABELS :: Module #

gHC_PRIM :: Module #

gHC_PRIMOPWRAPPERS :: Module #

gHC_PRIM_PANIC :: Module #

gHC_PTR :: Module #

gHC_READ :: Module #

gHC_REAL :: Module #

gHC_RECORDS :: Module #

gHC_SHOW :: Module #

gHC_SRCLOC :: Module #

gHC_ST :: Module #

gHC_STABLE :: Module #

gHC_STACK :: Module #

gHC_STACK_TYPES :: Module #

gHC_STATICPTR :: Module #

gHC_STATICPTR_INTERNAL :: Module #

gHC_TOP_HANDLER :: Module #

gHC_TUPLE :: Module #

gHC_TUPLE_PRIM :: Module #

gHC_TYPEERROR :: Module #

gHC_TYPELITS :: Module #

gHC_TYPELITS_INTERNAL :: Module #

gHC_TYPENATS :: Module #

gHC_TYPENATS_INTERNAL :: Module #

gHC_TYPES :: Module #

gHC_WORD :: Module #

geClassOpKey :: Unique #

geName :: Name #

ge_RDR :: RdrName #

gen1ClassKey :: Unique #

gen1ClassName :: Name #

genClassKey :: Unique #

genClassName :: Name #

genUnitDataConKey :: Unique #

genericClassNames :: [Name] #

genericTyConNames :: [Name] #

getFieldClassOpKey :: Unique #

getFieldName :: Name #

ghciIoClassKey :: Unique #

ghciIoClassName :: Name #

ghciStepIoMClassOpKey :: Unique #

ghciStepIoMName :: Name #

gtTag_RDR :: RdrName #

gt_RDR :: RdrName #

guardMIdKey :: Unique #

guardMName :: Name #

hasFieldClassName :: Name #

hasFieldClassNameKey :: Unique #

heqDataConKey :: Unique #

heqSCSelIdKey :: Unique #

heqTyConKey :: Unique #

ident_RDR :: RdrName #

impossibleConstraintErrorIdKey :: Unique #

impossibleErrorIdKey :: Unique #

inRange_RDR :: RdrName #

index_RDR :: RdrName #

infixDataCon_RDR :: RdrName #

infixIDataConKey :: Unique #

infixIDataConName :: Name #

inlDataConKey :: Unique #

inlineIdKey :: Unique #

inlineIdName :: Name #

inrDataConKey :: Unique #

int16PrimTyConKey :: Unique #

int16TyConKey :: Unique #

int16TyConName :: Name #

int16X16PrimTyConKey :: Unique #

int16X32PrimTyConKey :: Unique #

int16X8PrimTyConKey :: Unique #

int32PrimTyConKey :: Unique #

int32TyConKey :: Unique #

int32TyConName :: Name #

int32X16PrimTyConKey :: Unique #

int32X4PrimTyConKey :: Unique #

int32X8PrimTyConKey :: Unique #

int64PrimTyConKey :: Unique #

int64TyConKey :: Unique #

int64TyConName :: Name #

int64X2PrimTyConKey :: Unique #

int64X4PrimTyConKey :: Unique #

int64X8PrimTyConKey :: Unique #

int8PrimTyConKey :: Unique #

int8TyConKey :: Unique #

int8TyConName :: Name #

int8X16PrimTyConKey :: Unique #

int8X32PrimTyConKey :: Unique #

int8X64PrimTyConKey :: Unique #

intDataConKey :: Unique #

intPrimTyConKey :: Unique #

intTyConKey :: Unique #

integerAbsIdKey :: Unique #

integerAbsName :: Name #

integerAddIdKey :: Unique #

integerAddName :: Name #

integerAdd_RDR :: RdrName #

integerAndIdKey :: Unique #

integerAndName :: Name #

integerBitIdKey :: Unique #

integerBitName :: Name #

integerComplementIdKey :: Unique #

integerComplementName :: Name #

integerDivIdKey :: Unique #

integerDivModIdKey :: Unique #

integerDivModName :: Name #

integerDivName :: Name #

integerEncodeDoubleIdKey :: Unique #

integerEncodeDoubleName :: Name #

integerEncodeFloatIdKey :: Unique #

integerEncodeFloatName :: Name #

integerFromInt64IdKey :: Unique #

integerFromInt64Name :: Name #

integerFromNaturalIdKey :: Unique #

integerFromNaturalName :: Name #

integerFromWord64IdKey :: Unique #

integerFromWord64Name :: Name #

integerFromWordIdKey :: Unique #

integerFromWordName :: Name #

integerGcdIdKey :: Unique #

integerGcdName :: Name #

integerINDataConKey :: Unique #

integerIPDataConKey :: Unique #

integerISDataConKey :: Unique #

integerLcmIdKey :: Unique #

integerLcmName :: Name #

integerModIdKey :: Unique #

integerModName :: Name #

integerMulIdKey :: Unique #

integerMulName :: Name #

integerMul_RDR :: RdrName #

integerNegateIdKey :: Unique #

integerNegateName :: Name #

integerOrIdKey :: Unique #

integerOrName :: Name #

integerPopCountIdKey :: Unique #

integerPopCountName :: Name #

integerQuotIdKey :: Unique #

integerQuotName :: Name #

integerQuotRemIdKey :: Unique #

integerQuotRemName :: Name #

integerRemIdKey :: Unique #

integerRemName :: Name #

integerShiftLIdKey :: Unique #

integerShiftLName :: Name #

integerShiftRIdKey :: Unique #

integerShiftRName :: Name #

integerSubIdKey :: Unique #

integerSubName :: Name #

integerTestBitIdKey :: Unique #

integerTestBitName :: Name #

integerToDoubleIdKey :: Unique #

integerToDoubleName :: Name #

integerToFloatIdKey :: Unique #

integerToFloatName :: Name #

integerToInt64IdKey :: Unique #

integerToInt64Name :: Name #

integerToIntIdKey :: Unique #

integerToIntName :: Name #

integerToNaturalClampIdKey :: Unique #

integerToNaturalClampName :: Name #

integerToNaturalIdKey :: Unique #

integerToNaturalName :: Name #

integerToNaturalThrowIdKey :: Unique #

integerToNaturalThrowName :: Name #

integerToWord64IdKey :: Unique #

integerToWord64Name :: Name #

integerToWordIdKey :: Unique #

integerToWordName :: Name #

integerTyConKey :: Unique #

integerXorIdKey :: Unique #

integerXorName :: Name #

integralClassKey :: Unique #

integralClassName :: Name #

interactiveClassKeys :: [Unique] #

interactiveClassNames :: [Name] #

ioDataConKey :: Unique #

ioDataConName :: Name #

ioDataCon_RDR :: RdrName #

ioPortPrimTyConKey :: Unique #

ioTyConKey :: Unique #

ioTyConName :: Name #

ipClassKey :: Unique #

ipClassName :: Name #

isListClassKey :: Unique #

isListClassName :: Name #

isNewtypeName_RDR :: RdrName #

isStringClassKey :: Unique #

isStringClassName :: Name #

isUnboundName :: Name -> Bool #

itName :: Unique -> SrcSpan -> Name #

ixClassKey :: Unique #

ixClassName :: Name #

joinMIdKey :: Unique #

joinMName :: Name #

justDataConKey :: Unique #

k1DataCon_RDR :: RdrName #

k1TyConKey :: Unique #

k1TyConName :: Name #

kindConKey :: Unique #

kindRepAppDataConKey :: Unique #

kindRepAppDataConName :: Name #

kindRepFunDataConKey :: Unique #

kindRepFunDataConName :: Name #

kindRepTYPEDataConKey :: Unique #

kindRepTYPEDataConName :: Name #

kindRepTyConAppDataConKey :: Unique #

kindRepTyConAppDataConName :: Name #

kindRepTyConKey :: Unique #

kindRepTyConName :: Name #

kindRepTypeLitDDataConKey :: Unique #

kindRepTypeLitDDataConName :: Name #

kindRepTypeLitSDataConKey :: Unique #

kindRepTypeLitSDataConName :: Name #

kindRepVarDataConKey :: Unique #

kindRepVarDataConName :: Name #

knownCharClassName :: Name #

knownCharClassNameKey :: Unique #

knownNatClassName :: Name #

knownNatClassNameKey :: Unique #

knownSymbolClassName :: Name #

knownSymbolClassNameKey :: Unique #

l1DataCon_RDR :: RdrName #

lEX :: Module #

lazyIdKey :: Unique #

le_RDR :: RdrName #

leftAssocDataCon_RDR :: RdrName #

leftAssociativeDataConKey :: Unique #

leftAssociativeDataConName :: Name #

leftDataConKey :: Unique #

leftDataConName :: Name #

leftSectionKey :: Unique #

left_RDR :: RdrName #

levityTyConKey :: Unique #

lexP_RDR :: RdrName #

liftA2_RDR :: RdrName #

liftMIdKey :: Unique #

liftMName :: Name #

liftedDataConKey :: Unique #

liftedRepTyConKey :: Unique #

liftedTypeKindTyConKey :: Unique #

listTyConKey :: Unique #

loopAIdKey :: Unique #

loopAName :: Name #

ltTag_RDR :: RdrName #

lt_RDR :: RdrName #

m1DataCon_RDR :: RdrName #

m1TyConKey :: Unique #

m1TyConName :: Name #

mAIN_NAME :: ModuleName #

mONAD :: Module #

mONAD_FAIL :: Module #

mONAD_FIX :: Module #

mONAD_ZIP :: Module #

mVarPrimTyConKey :: Unique #

main_RDR_Unqual :: RdrName #

makeStaticKey :: Unique #

makeStaticName :: Name #

manyDataConKey :: Unique #

mapIdKey :: Unique #

mapName :: Name #

map_RDR :: RdrName #

mappendClassOpKey :: Unique #

mappendName :: Name #

mappend_RDR :: RdrName #

maxBound_RDR :: RdrName #

maybeTyConKey :: Unique #

mconcatClassOpKey :: Unique #

mconcatName :: Name #

memptyClassOpKey :: Unique #

memptyName :: Name #

mempty_RDR :: RdrName #

metaConsDataConKey :: Unique #

metaConsDataConName :: Name #

metaDataDataConKey :: Unique #

metaDataDataConName :: Name #

metaSelDataConKey :: Unique #

metaSelDataConName :: Name #

mfixIdKey :: Unique #

mfixName :: Name #

minBound_RDR :: RdrName #

minusClassOpKey :: Unique #

minusName :: Name #

minus_RDR :: RdrName #

mkBaseModule :: FastString -> Module #

mkBaseModule_ :: ModuleName -> Module #

mkBignumModule :: FastString -> Module #

mkDictDataConKey :: Unique #

mkInteractiveModule :: Int -> Module #

mkMainModule :: FastString -> Module #

mkMainModule_ :: ModuleName -> Module #

mkPrimModule :: FastString -> Module #

mkRationalBase10IdKey :: Unique #

mkRationalBase10Name :: Name #

mkRationalBase2IdKey :: Unique #

mkRationalBase2Name :: Name #

mkThisGhcModule :: FastString -> Module #

mkThisGhcModule_ :: ModuleName -> Module #

mkTrAppKey :: Unique #

mkTrAppName :: Name #

mkTrConKey :: Unique #

mkTrConName :: Name #

mkTrFunKey :: Unique #

mkTrFunName :: Name #

mkTrTypeKey :: Unique #

mkTrTypeName :: Name #

mkTyConKey :: Unique #

mkUnboundName :: OccName -> Name #

mk_known_key_name :: NameSpace -> Module -> FastString -> Unique -> Name #

modIntIdKey :: Unique #

modIntName :: Name #

moduleName_RDR :: RdrName #

monadClassKey :: Unique #

monadClassName :: Name #

monadClass_RDR :: RdrName #

monadFailClassKey :: Unique #

monadFailClassName :: Name #

monadFixClassKey :: Unique #

monadFixClassName :: Name #

monadPlusClassKey :: Unique #

monadPlusClassName :: Name #

monoidClassKey :: Unique #

monoidClassName :: Name #

multMulTyConKey :: Unique #

multiplicityTyConKey :: Unique #

mutVarPrimTyConKey :: Unique #

mutableArrayPrimTyConKey :: Unique #

mutableByteArrayPrimTyConKey :: Unique #

mzipIdKey :: Unique #

mzipName :: Name #

naturalAddIdKey :: Unique #

naturalAddName :: Name #

naturalAndIdKey :: Unique #

naturalAndName :: Name #

naturalAndNotIdKey :: Unique #

naturalAndNotName :: Name #

naturalBitIdKey :: Unique #

naturalBitName :: Name #

naturalGcdIdKey :: Unique #

naturalGcdName :: Name #

naturalLcmIdKey :: Unique #

naturalLcmName :: Name #

naturalLog2IdKey :: Unique #

naturalLog2Name :: Name #

naturalLogBaseIdKey :: Unique #

naturalLogBaseName :: Name #

naturalLogBaseWordIdKey :: Unique #

naturalLogBaseWordName :: Name #

naturalMulIdKey :: Unique #

naturalMulName :: Name #

naturalNBDataConKey :: Unique #

naturalNSDataConKey :: Unique #

naturalOrIdKey :: Unique #

naturalOrName :: Name #

naturalPopCountIdKey :: Unique #

naturalPopCountName :: Name #

naturalPowModIdKey :: Unique #

naturalPowModName :: Name #

naturalQuotIdKey :: Unique #

naturalQuotName :: Name #

naturalQuotRemIdKey :: Unique #

naturalQuotRemName :: Name #

naturalRemIdKey :: Unique #

naturalRemName :: Name #

naturalShiftLIdKey :: Unique #

naturalShiftLName :: Name #

naturalShiftRIdKey :: Unique #

naturalShiftRName :: Name #

naturalSizeInBaseIdKey :: Unique #

naturalSizeInBaseName :: Name #

naturalSubIdKey :: Unique #

naturalSubName :: Name #

naturalSubThrowIdKey :: Unique #

naturalSubThrowName :: Name #

naturalSubUnsafeIdKey :: Unique #

naturalSubUnsafeName :: Name #

naturalTestBitIdKey :: Unique #

naturalTestBitName :: Name #

naturalToDoubleIdKey :: Unique #

naturalToDoubleName :: Name #

naturalToFloatIdKey :: Unique #

naturalToFloatName :: Name #

naturalToWordIdKey :: Unique #

naturalToWordName :: Name #

naturalTyConKey :: Unique #

naturalXorIdKey :: Unique #

naturalXorName :: Name #

negateClassOpKey :: Unique #

negateName :: Name #

newStablePtrIdKey :: Unique #

newStablePtrName :: Name #

newStablePtr_RDR :: RdrName #

nilDataConKey :: Unique #

noMethodBindingErrorIdKey :: Unique #

noSourceStrictnessDataConKey :: Unique #

noSourceStrictnessDataConName :: Name #

noSourceUnpackednessDataConKey :: Unique #

noSourceUnpackednessDataConName :: Name #

noinlineConstraintIdKey :: Unique #

noinlineIdKey :: Unique #

nonEmptyTyConKey :: Unique #

nonEmptyTyConName :: Name #

nonExhaustiveGuardsErrorIdKey :: Unique #

nospecIdKey :: Unique #

notAssocDataCon_RDR :: RdrName #

notAssociativeDataConKey :: Unique #

notAssociativeDataConName :: Name #

not_RDR :: RdrName #

nothingDataConKey :: Unique #

nullAddrIdKey :: Unique #

null_RDR :: RdrName #

numClassKey :: Unique #

numClassName :: Name #

numClass_RDR :: RdrName #

numericClassKeys :: [Unique] #

oneDataConKey :: Unique #

oneShotKey :: Unique #

ordClassKey :: Unique #

ordClassName :: Name #

ordClass_RDR :: RdrName #

ordEQDataConKey :: Unique #

ordEQDataConName :: Name #

ordGTDataConKey :: Unique #

ordGTDataConName :: Name #

ordLTDataConKey :: Unique #

ordLTDataConName :: Name #

orderingTyConKey :: Unique #

orderingTyConName :: Name #

otherwiseIdKey :: Unique #

otherwiseIdName :: Name #

pLUGINS :: Module #

pRELUDE :: Module #

pRELUDE_NAME :: ModuleName #

packageName_RDR :: RdrName #

par1DataCon_RDR :: RdrName #

par1TyConKey :: Unique #

par1TyConName :: Name #

parens_RDR :: RdrName #

patErrorIdKey :: Unique #

pfail_RDR :: RdrName #

pluginTyConKey :: Unique #

pluginTyConName :: Name #

plus_RDR :: RdrName #

prec_RDR :: RdrName #

pred_RDR :: RdrName #

prefixDataCon_RDR :: RdrName #

prefixIDataConKey :: Unique #

prefixIDataConName :: Name #

pretendNameIsInScope :: Name -> Bool #

printIdKey :: Unique #

prodDataCon_RDR :: RdrName #

prodTyConKey :: Unique #

prodTyConName :: Name #

promptTagPrimTyConKey :: Unique #

proxyHashKey :: Unique #

proxyPrimTyConKey :: Unique #

ptrTyConKey :: Unique #

ptrTyConName :: Name #

punc_RDR :: RdrName #

pureAClassOpKey :: Unique #

pureAName :: Name #

pure_RDR :: RdrName #

pushCallStackKey :: Unique #

pushCallStackName :: Name #

r1DataCon_RDR :: RdrName #

rANDOM :: Module #

rEAD_PREC :: Module #

rOOT_MAIN :: Module #

rTyConKey :: Unique #

rTyConName :: Name #

randomClassKey :: Unique #

randomGenClassKey :: Unique #

range_RDR :: RdrName #

ratioDataConKey :: Unique #

ratioDataConName :: Name #

ratioDataCon_RDR :: RdrName #

ratioTyConKey :: Unique #

ratioTyConName :: Name #

rationalToDoubleIdKey :: Unique #

rationalToDoubleName :: Name #

rationalToFloatIdKey :: Unique #

rationalToFloatName :: Name #

rationalTyConKey :: Unique #

rationalTyConName :: Name #

readClassKey :: Unique #

readClassName :: Name #

readFieldHash_RDR :: RdrName #

readField_RDR :: RdrName #

readListDefault_RDR :: RdrName #

readListPrecDefault_RDR :: RdrName #

readListPrec_RDR :: RdrName #

readList_RDR :: RdrName #

readPrec_RDR :: RdrName #

readSymField_RDR :: RdrName #

realClassKey :: Unique #

realClassName :: Name #

realFloatClassKey :: Unique #

realFloatClassName :: Name #

realFracClassKey :: Unique #

realFracClassName :: Name #

realToFracIdKey :: Unique #

realToFracName :: Name #

realWorldPrimIdKey :: Unique #

realWorldTyConKey :: Unique #

rec0TyConKey :: Unique #

rec0TyConName :: Name #

rec1DataCon_RDR :: RdrName #

rec1TyConKey :: Unique #

rec1TyConName :: Name #

recConErrorIdKey :: Unique #

recSelErrorIdKey :: Unique #

rep1TyConKey :: Unique #

rep1TyConName :: Name #

repTyConKey :: Unique #

repTyConName :: Name #

replace_RDR :: RdrName #

reset_RDR :: RdrName #

returnIOIdKey :: Unique #

returnIOName :: Name #

returnIO_RDR :: RdrName #

returnMClassOpKey :: Unique #

returnMName :: Name #

returnM_RDR :: RdrName #

rightAssocDataCon_RDR :: RdrName #

rightAssociativeDataConKey :: Unique #

rightAssociativeDataConName :: Name #

rightDataConKey :: Unique #

rightDataConName :: Name #

rightSectionKey :: Unique #

right_RDR :: RdrName #

rootMainKey :: Unique #

runMainIOName :: Name #

runMainKey :: Unique #

runRWKey :: Unique #

runRWName :: Name #

runtimeRepSimpleDataConKeys :: [Unique] #

runtimeRepTyConKey :: Unique #

s1TyConKey :: Unique #

s1TyConName :: Name #

sTyConKey :: Unique #

sTyConName :: Name #

sYSTEM_IO :: Module #

sappendClassOpKey :: Unique #

sappendName :: Name #

selName_RDR :: RdrName #

selectorClassKey :: Unique #

selectorClassName :: Name #

semigroupClassKey :: Unique #

semigroupClassName :: Name #

seqIdKey :: Unique #

setFieldClassOpKey :: Unique #

setFieldName :: Name #

showClassKey :: Unique #

showClassName :: Name #

showCommaSpace_RDR :: RdrName #

showParen_RDR :: RdrName #

showSpace_RDR :: RdrName #

showString_RDR :: RdrName #

showsPrec_RDR :: RdrName #

shows_RDR :: RdrName #

smallArrayPrimTyConKey :: Unique #

smallMutableArrayPrimTyConKey :: Unique #

someTypeRepDataConKey :: Unique #

someTypeRepDataConName :: Name #

someTypeRepTyConKey :: Unique #

someTypeRepTyConName :: Name #

sourceLazyDataConKey :: Unique #

sourceLazyDataConName :: Name #

sourceNoUnpackDataConKey :: Unique #

sourceNoUnpackDataConName :: Name #

sourceStrictDataConKey :: Unique #

sourceStrictDataConName :: Name #

sourceUnpackDataConKey :: Unique #

sourceUnpackDataConName :: Name #

specTyConKey :: Unique #

specTyConName :: Name #

srcLocDataConKey :: Unique #

srcLocDataConName :: Name #

stableNameDataConKey :: Unique #

stableNamePrimTyConKey :: Unique #

stableNameTyConKey :: Unique #

stablePtrPrimTyConKey :: Unique #

stablePtrTyConKey :: Unique #

stablePtrTyConName :: Name #

stackSnapshotPrimTyConKey :: Unique #

standardClassKeys :: [Unique] #

starArrStarArrStarKindRepKey :: Unique #

starArrStarArrStarKindRepName :: Name #

starArrStarKindRepKey :: Unique #

starArrStarKindRepName :: Name #

starKindRepKey :: Unique #

starKindRepName :: Name #

statePrimTyConKey :: Unique #

staticPtrDataConKey :: Unique #

staticPtrDataConName :: Name #

staticPtrInfoDataConKey :: Unique #

staticPtrInfoDataConName :: Name #

staticPtrInfoTyConKey :: Unique #

staticPtrInfoTyConName :: Name #

staticPtrTyConKey :: Unique #

staticPtrTyConName :: Name #

step_RDR :: RdrName #

stringTyConKey :: Unique #

succ_RDR :: RdrName #

sumRepDataConKey :: Unique #

sumTyConKey :: Unique #

sumTyConName :: Name #

symbol_RDR :: RdrName #

tVarPrimTyConKey :: Unique #

tYPEABLE :: Module #

tYPEABLE_INTERNAL :: Module #

tYPETyConKey :: Unique #

tcArrowTyConKey :: Unique #

tcQual :: Module -> FastString -> Unique -> Name #

tcQual_RDR :: Module -> FastString -> RdrName #

thenAClassOpKey :: Unique #

thenAName :: Name #

thenIOIdKey :: Unique #

thenIOName :: Name #

thenMClassOpKey :: Unique #

thenMName :: Name #

threadIdPrimTyConKey :: Unique #

times_RDR :: RdrName #

to1_RDR :: RdrName #

toAnnotationWrapperIdKey :: Unique #

toAnnotationWrapperName :: Name #

toDynIdKey :: Unique #

toDynName :: Name #

toEnum_RDR :: RdrName #

toIntegerClassOpKey :: Unique #

toIntegerName :: Name #

toInteger_RDR :: RdrName #

toListClassOpKey :: Unique #

toListName :: Name #

toList_RDR :: RdrName #

toRationalClassOpKey :: Unique #

toRationalName :: Name #

toRational_RDR :: RdrName #

to_RDR :: RdrName #

tr'PtrRepLiftedKey :: Unique #

trGhcPrimModuleKey :: Unique #

trGhcPrimModuleName :: Name #

trLiftedRepKey :: Unique #

trModuleDataConKey :: Unique #

trModuleDataConName :: Name #

trModuleTyConKey :: Unique #

trModuleTyConName :: Name #

trNameDDataConKey :: Unique #

trNameDDataConName :: Name #

trNameSDataConKey :: Unique #

trNameSDataConName :: Name #

trNameTyConKey :: Unique #

trNameTyConName :: Name #

trRuntimeRepKey :: Unique #

trTYPE'PtrRepLiftedKey :: Unique #

trTYPEKey :: Unique #

trTyConDataConKey :: Unique #

trTyConDataConName :: Name #

trTyConTyConKey :: Unique #

trTyConTyConName :: Name #

traceKey :: Unique #

traceName :: Name #

traversableClassKey :: Unique #

traversableClassName :: Name #

traverse_RDR :: RdrName #

trueDataConKey :: Unique #

tupleRepDataConKey :: Unique #

tupleRepDataConTyConKey :: Unique #

typeCharCmpTyFamNameKey :: Unique #

typeCharKindConNameKey :: Unique #

typeCharToNatTyFamNameKey :: Unique #

typeCharTypeRepKey :: Unique #

typeCharTypeRepName :: Name #

typeConKey :: Unique #

typeConsSymbolTyFamNameKey :: Unique #

typeErrorAppendDataConKey :: Unique #

typeErrorAppendDataConName :: Name #

typeErrorIdKey :: Unique #

typeErrorShowTypeDataConKey :: Unique #

typeErrorShowTypeDataConName :: Name #

typeErrorTextDataConKey :: Unique #

typeErrorTextDataConName :: Name #

typeErrorVAppendDataConKey :: Unique #

typeErrorVAppendDataConName :: Name #

typeLeqCharTyFamNameKey :: Unique #

typeLitCharDataConKey :: Unique #

typeLitCharDataConName :: Name #

typeLitNatDataConKey :: Unique #

typeLitNatDataConName :: Name #

typeLitSortTyConKey :: Unique #

typeLitSortTyConName :: Name #

typeLitSymbolDataConKey :: Unique #

typeLitSymbolDataConName :: Name #

typeNatAddTyFamNameKey :: Unique #

typeNatCmpTyFamNameKey :: Unique #

typeNatDivTyFamNameKey :: Unique #

typeNatExpTyFamNameKey :: Unique #

typeNatLogTyFamNameKey :: Unique #

typeNatModTyFamNameKey :: Unique #

typeNatMulTyFamNameKey :: Unique #

typeNatSubTyFamNameKey :: Unique #

typeNatToCharTyFamNameKey :: Unique #

typeNatTypeRepKey :: Unique #

typeNatTypeRepName :: Name #

typeRepIdKey :: Unique #

typeRepIdName :: Name #

typeRepTyConKey :: Unique #

typeRepTyConName :: Name #

typeSymbolAppendFamNameKey :: Unique #

typeSymbolCmpTyFamNameKey :: Unique #

typeSymbolKindConNameKey :: Unique #

typeSymbolTypeRepKey :: Unique #

typeSymbolTypeRepName :: Name #

typeUnconsSymbolTyFamNameKey :: Unique #

typeableClassKey :: Unique #

typeableClassName :: Name #

u1DataCon_RDR :: RdrName #

u1TyConKey :: Unique #

u1TyConName :: Name #

uAddrDataCon_RDR :: RdrName #

uAddrHash_RDR :: RdrName #

uAddrTyConKey :: Unique #

uAddrTyConName :: Name #

uCharDataCon_RDR :: RdrName #

uCharHash_RDR :: RdrName #

uCharTyConKey :: Unique #

uCharTyConName :: Name #

uDoubleDataCon_RDR :: RdrName #

uDoubleHash_RDR :: RdrName #

uDoubleTyConKey :: Unique #

uDoubleTyConName :: Name #

uFloatDataCon_RDR :: RdrName #

uFloatHash_RDR :: RdrName #

uFloatTyConKey :: Unique #

uFloatTyConName :: Name #

uIntDataCon_RDR :: RdrName #

uIntHash_RDR :: RdrName #

uIntTyConKey :: Unique #

uIntTyConName :: Name #

uNSAFE_COERCE :: Module #

uRecTyConKey :: Unique #

uRecTyConName :: Name #

uWordDataCon_RDR :: RdrName #

uWordHash_RDR :: RdrName #

uWordTyConKey :: Unique #

uWordTyConName :: Name #

unComp1_RDR :: RdrName #

unK1_RDR :: RdrName #

unPar1_RDR :: RdrName #

unRec1_RDR :: RdrName #

unboundKey :: Unique #

unliftedDataConKey :: Unique #

unliftedRepTyConKey :: Unique #

unliftedTypeKindTyConKey :: Unique #

unpackCStringAppendIdKey :: Unique #

unpackCStringAppendName :: Name #

unpackCStringAppendUtf8IdKey :: Unique #

unpackCStringAppendUtf8Name :: Name #

unpackCStringFoldrIdKey :: Unique #

unpackCStringFoldrName :: Name #

unpackCStringFoldrUtf8IdKey :: Unique #

unpackCStringFoldrUtf8Name :: Name #

unpackCStringIdKey :: Unique #

unpackCStringName :: Name #

unpackCStringUtf8IdKey :: Unique #

unpackCStringUtf8Name :: Name #

unrestrictedFunTyConKey :: Unique #

unsafeCoercePrimIdKey :: Unique #

unsafeCoercePrimName :: Name #

unsafeEqualityProofIdKey :: Unique #

unsafeEqualityProofName :: Name #

unsafeEqualityTyConKey :: Unique #

unsafeEqualityTyConName :: Name #

unsafeIndex_RDR :: RdrName #

unsafeRangeSize_RDR :: RdrName #

unsafeReflDataConKey :: Unique #

unsafeReflDataConName :: Name #

v1TyConKey :: Unique #

v1TyConName :: Name #

varQual :: Module -> FastString -> Unique -> Name #

varQual_RDR :: Module -> FastString -> RdrName #

vecCountDataConKeys :: [Unique] #

vecCountTyConKey :: Unique #

vecElemDataConKeys :: [Unique] #

vecElemTyConKey :: Unique #

vecRepDataConKey :: Unique #

voidArgIdKey :: Unique #

voidPrimIdKey :: Unique #

voidTyConKey :: Unique #

voidTyConName :: Name #

weakPrimTyConKey :: Unique #

wildCardKey :: Unique #

wildCardName :: Name #

withDictClassKey :: Unique #

withDictClassName :: Name #

word16PrimTyConKey :: Unique #

word16TyConKey :: Unique #

word16TyConName :: Name #

word16X16PrimTyConKey :: Unique #

word16X32PrimTyConKey :: Unique #

word16X8PrimTyConKey :: Unique #

word32PrimTyConKey :: Unique #

word32TyConKey :: Unique #

word32TyConName :: Name #

word32X16PrimTyConKey :: Unique #

word32X4PrimTyConKey :: Unique #

word32X8PrimTyConKey :: Unique #

word64PrimTyConKey :: Unique #

word64TyConKey :: Unique #

word64TyConName :: Name #

word64X2PrimTyConKey :: Unique #

word64X4PrimTyConKey :: Unique #

word64X8PrimTyConKey :: Unique #

word8DataConKey :: Unique #

word8PrimTyConKey :: Unique #

word8TyConKey :: Unique #

word8TyConName :: Name #

word8X16PrimTyConKey :: Unique #

word8X32PrimTyConKey :: Unique #

word8X64PrimTyConKey :: Unique #

wordDataConKey :: Unique #

wordPrimTyConKey :: Unique #

wordTyConKey :: Unique #

zeroBitRepTyConKey :: Unique #

zeroBitTypeTyConKey :: Unique #

zipIdKey :: Unique #

zipName :: Name #

data DataCon #

#### Instances

Instances details

Data DataCon |
Instance details Defined in GHC.Core.DataCon Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> DataCon -> c DataCon gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c DataCon toConstr :: DataCon -> Constr dataTypeOf :: DataCon -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c DataCon) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c DataCon) gmapT :: (forall b. Data b => b -> b) -> DataCon -> DataCon gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> DataCon -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> DataCon -> r gmapQ :: (forall d. Data d => d -> u) -> DataCon -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> DataCon -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> DataCon -> m DataCon gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> DataCon -> m DataCon gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> DataCon -> m DataCon
NamedThing DataCon |
Instance details Defined in GHC.Core.DataCon Methods getOccName :: DataCon -> OccName # getName :: DataCon -> Name #
Uniquable DataCon |
Instance details Defined in GHC.Core.DataCon Methods getUnique :: DataCon -> Unique #
Outputable DataCon |
Instance details Defined in GHC.Core.DataCon Methods ppr :: DataCon -> SDoc #
OutputableBndr DataCon |
Instance details Defined in GHC.Core.DataCon Methods pprBndr :: BindingSite -> DataCon -> SDoc pprPrefixOcc :: DataCon -> SDoc pprInfixOcc :: DataCon -> SDoc bndrIsJoin_maybe :: DataCon -> Maybe Int
Eq DataCon |
Instance details Defined in GHC.Core.DataCon Methods (==) :: DataCon -> DataCon -> Bool # (/=) :: DataCon -> DataCon -> Bool #

data FieldLabel #

Constructors

FieldLabel |
Fields flLabel :: FieldLabelString flHasDuplicateRecordFields :: DuplicateRecordFields flHasFieldSelector :: FieldSelectors flSelector :: Name

#### Instances

Instances details

Data FieldLabel |
Instance details Defined in GHC.Types.FieldLabel Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> FieldLabel -> c FieldLabel gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c FieldLabel toConstr :: FieldLabel -> Constr dataTypeOf :: FieldLabel -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c FieldLabel) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c FieldLabel) gmapT :: (forall b. Data b => b -> b) -> FieldLabel -> FieldLabel gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> FieldLabel -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> FieldLabel -> r gmapQ :: (forall d. Data d => d -> u) -> FieldLabel -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> FieldLabel -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> FieldLabel -> m FieldLabel gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> FieldLabel -> m FieldLabel gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> FieldLabel -> m FieldLabel
NFData FieldLabel |
Instance details Defined in GHC.Types.FieldLabel Methods rnf :: FieldLabel -> () #
HasOccName FieldLabel |
Instance details Defined in GHC.Types.FieldLabel Methods occName :: FieldLabel -> OccName #
Binary Name => Binary FieldLabel |
Instance details Defined in GHC.Types.FieldLabel Methods put_ :: BinHandle -> FieldLabel -> IO () put :: BinHandle -> FieldLabel -> IO (Bin FieldLabel) get :: BinHandle -> IO FieldLabel
Outputable FieldLabel |
Instance details Defined in GHC.Types.FieldLabel Methods ppr :: FieldLabel -> SDoc #
Eq FieldLabel |
Instance details Defined in GHC.Types.FieldLabel Methods (==) :: FieldLabel -> FieldLabel -> Bool # (/=) :: FieldLabel -> FieldLabel -> Bool #
ToHie (IEContext (Located FieldLabel)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: IEContext (Located FieldLabel) -> HieM [HieAST Type]

data HsImplBang #

Constructors

HsLazy |
HsStrict Bool |
HsUnpack (Maybe Coercion) |

#### Instances

Instances details

Data HsImplBang |
Instance details Defined in GHC.Core.DataCon Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> HsImplBang -> c HsImplBang gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c HsImplBang toConstr :: HsImplBang -> Constr dataTypeOf :: HsImplBang -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c HsImplBang) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c HsImplBang) gmapT :: (forall b. Data b => b -> b) -> HsImplBang -> HsImplBang gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> HsImplBang -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> HsImplBang -> r gmapQ :: (forall d. Data d => d -> u) -> HsImplBang -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> HsImplBang -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> HsImplBang -> m HsImplBang gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> HsImplBang -> m HsImplBang gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> HsImplBang -> m HsImplBang
Outputable HsImplBang |
Instance details Defined in GHC.Core.DataCon Methods ppr :: HsImplBang -> SDoc #

data HsSrcBang #

Constructors

HsSrcBang SourceText SrcUnpackedness SrcStrictness |

#### Instances

Instances details

Data HsSrcBang |
Instance details Defined in GHC.Core.DataCon Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> HsSrcBang -> c HsSrcBang gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c HsSrcBang toConstr :: HsSrcBang -> Constr dataTypeOf :: HsSrcBang -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c HsSrcBang) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c HsSrcBang) gmapT :: (forall b. Data b => b -> b) -> HsSrcBang -> HsSrcBang gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> HsSrcBang -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> HsSrcBang -> r gmapQ :: (forall d. Data d => d -> u) -> HsSrcBang -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> HsSrcBang -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> HsSrcBang -> m HsSrcBang gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> HsSrcBang -> m HsSrcBang gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> HsSrcBang -> m HsSrcBang
Outputable HsSrcBang |
Instance details Defined in GHC.Core.DataCon Methods ppr :: HsSrcBang -> SDoc #

data StrictnessMark #

Constructors

MarkedStrict |
NotMarkedStrict |

#### Instances

Instances details

Binary StrictnessMark |
Instance details Defined in GHC.Core.DataCon Methods put_ :: BinHandle -> StrictnessMark -> IO () put :: BinHandle -> StrictnessMark -> IO (Bin StrictnessMark) get :: BinHandle -> IO StrictnessMark
Outputable StrictnessMark |
Instance details Defined in GHC.Core.DataCon Methods ppr :: StrictnessMark -> SDoc #
Eq StrictnessMark |
Instance details Defined in GHC.Core.DataCon Methods (==) :: StrictnessMark -> StrictnessMark -> Bool # (/=) :: StrictnessMark -> StrictnessMark -> Bool #

data SrcStrictness #

Constructors

SrcLazy |
SrcStrict |
NoSrcStrict |

#### Instances

Instances details

Data SrcStrictness |
Instance details Defined in Language.Haskell.Syntax.Basic Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> SrcStrictness -> c SrcStrictness gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c SrcStrictness toConstr :: SrcStrictness -> Constr dataTypeOf :: SrcStrictness -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c SrcStrictness) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c SrcStrictness) gmapT :: (forall b. Data b => b -> b) -> SrcStrictness -> SrcStrictness gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> SrcStrictness -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> SrcStrictness -> r gmapQ :: (forall d. Data d => d -> u) -> SrcStrictness -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> SrcStrictness -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> SrcStrictness -> m SrcStrictness gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> SrcStrictness -> m SrcStrictness gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> SrcStrictness -> m SrcStrictness
Eq SrcStrictness |
Instance details Defined in Language.Haskell.Syntax.Basic Methods (==) :: SrcStrictness -> SrcStrictness -> Bool # (/=) :: SrcStrictness -> SrcStrictness -> Bool #

data SrcUnpackedness #

Constructors

SrcUnpack |
SrcNoUnpack |
NoSrcUnpack |

#### Instances

Instances details

Data SrcUnpackedness |
Instance details Defined in Language.Haskell.Syntax.Basic Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> SrcUnpackedness -> c SrcUnpackedness gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c SrcUnpackedness toConstr :: SrcUnpackedness -> Constr dataTypeOf :: SrcUnpackedness -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c SrcUnpackedness) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c SrcUnpackedness) gmapT :: (forall b. Data b => b -> b) -> SrcUnpackedness -> SrcUnpackedness gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> SrcUnpackedness -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> SrcUnpackedness -> r gmapQ :: (forall d. Data d => d -> u) -> SrcUnpackedness -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> SrcUnpackedness -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> SrcUnpackedness -> m SrcUnpackedness gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> SrcUnpackedness -> m SrcUnpackedness gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> SrcUnpackedness -> m SrcUnpackedness
Eq SrcUnpackedness |
Instance details Defined in Language.Haskell.Syntax.Basic Methods (==) :: SrcUnpackedness -> SrcUnpackedness -> Bool # (/=) :: SrcUnpackedness -> SrcUnpackedness -> Bool #

type ConTag = Int #

data EqSpec #

#### Instances

Instances details

Outputable EqSpec |
Instance details Defined in GHC.Core.DataCon Methods ppr :: EqSpec -> SDoc #

data FieldLabelString #

#### Instances

Instances details

Data FieldLabelString |
Instance details Defined in Language.Haskell.Syntax.Basic Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> FieldLabelString -> c FieldLabelString gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c FieldLabelString toConstr :: FieldLabelString -> Constr dataTypeOf :: FieldLabelString -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c FieldLabelString) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c FieldLabelString) gmapT :: (forall b. Data b => b -> b) -> FieldLabelString -> FieldLabelString gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> FieldLabelString -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> FieldLabelString -> r gmapQ :: (forall d. Data d => d -> u) -> FieldLabelString -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> FieldLabelString -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> FieldLabelString -> m FieldLabelString gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> FieldLabelString -> m FieldLabelString gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> FieldLabelString -> m FieldLabelString
NFData FieldLabelString |
Instance details Defined in Language.Haskell.Syntax.Basic Methods rnf :: FieldLabelString -> () #
Eq FieldLabelString |
Instance details Defined in Language.Haskell.Syntax.Basic Methods (==) :: FieldLabelString -> FieldLabelString -> Bool # (/=) :: FieldLabelString -> FieldLabelString -> Bool #
type Anno FieldLabelString |
Instance details Defined in GHC.Hs.Expr type Anno FieldLabelString = SrcSpanAnnN

type DataConEnv a = UniqFM DataCon a #

data DataConRep #

Constructors

NoDataConRep |
DCR |
Fields dcr_wrap_id :: Id dcr_boxer :: DataConBoxer dcr_arg_tys :: [Scaled Type] dcr_stricts :: [StrictnessMark] dcr_bangs :: [HsImplBang]

dataConFieldLabels :: DataCon -> [FieldLabel] #

dataConIsInfix :: DataCon -> Bool #

dataConSrcBangs :: DataCon -> [HsSrcBang] #

dataConTyCon :: DataCon -> TyCon #

dataConWrapId :: DataCon -> Id #

dataConWrapperType :: DataCon -> Type #

isMarkedStrict :: StrictnessMark -> Bool #

isVanillaDataCon :: DataCon -> Bool #

dataConName :: DataCon -> Name #

dataConWorkId :: DataCon -> Id #

mkDataCon :: Name -> Bool -> TyConRepName -> [HsSrcBang] -> [FieldLabel] -> [TyVar] -> [TyCoVar] -> [InvisTVBinder] -> [EqSpec] -> KnotTied ThetaType -> [KnotTied (Scaled Type)] -> KnotTied Type -> PromDataConInfo -> KnotTied TyCon -> ConTag -> ThetaType -> Id -> DataConRep -> DataCon #

promoteDataCon :: DataCon -> TyCon #

dataConFieldType :: DataCon -> FieldLabelString -> Type #

dataConFullSig :: DataCon -> ([TyVar], [TyCoVar], [EqSpec], ThetaType, [Scaled Type], Type) #

dataConImplBangs :: DataCon -> [HsImplBang] #

dataConInstOrigArgTys :: DataCon -> [Type] -> [Scaled Type] #

dataConSourceArity :: DataCon -> Arity #

dataConStupidTheta :: DataCon -> ThetaType #

dataConUserTyVarBinders :: DataCon -> [InvisTVBinder] #

fIRST_TAG :: ConTag #

cbvFromStrictMark :: StrictnessMark -> CbvMark #

checkDataConTyVars :: DataCon -> Bool #

classDataCon :: Class -> DataCon #

dataConBoxer :: DataCon -> Maybe DataConBoxer #

dataConCannotMatch :: [Type] -> DataCon -> Bool #

dataConDisplayType :: Bool -> DataCon -> Type #

dataConFieldType_maybe :: DataCon -> FieldLabelString -> Maybe (FieldLabel, Type) #

dataConIdentity :: DataCon -> ByteString #

dataConImplicitTyThings :: DataCon -> [TyThing] #

dataConInstArgTys :: DataCon -> [Type] -> [Scaled Type] #

dataConInstSig :: DataCon -> [Type] -> ([TyCoVar], ThetaType, [Type]) #

dataConInstUnivs :: DataCon -> [Type] -> [Type] #

dataConNonlinearType :: DataCon -> Type #

dataConOrigArgTys :: DataCon -> [Scaled Type] #

dataConOrigResTy :: DataCon -> Type #

dataConOrigTyCon :: DataCon -> TyCon #

dataConOtherTheta :: DataCon -> ThetaType #

dataConRepArgTys :: DataCon -> [Scaled Type] #

dataConRepArity :: DataCon -> Arity #

dataConRepStrictness :: DataCon -> [StrictnessMark] #

dataConRepType :: DataCon -> Type #

dataConResRepTyArgs :: DataCon -> [Type] #

dataConTag :: DataCon -> ConTag #

dataConTagZ :: DataCon -> ConTagZ #

dataConTheta :: DataCon -> ThetaType #

dataConUnivAndExTyCoVars :: DataCon -> [TyCoVar] #

dataConUnivTyVars :: DataCon -> [TyVar] #

dataConUserTyVars :: DataCon -> [TyVar] #

dataConUserTyVarsNeedWrapper :: DataCon -> Bool #

dataConWrapId_maybe :: DataCon -> Maybe Id #

eqHsBang :: HsImplBang -> HsImplBang -> Bool #

eqSpecPair :: EqSpec -> (TyVar, Type) #

eqSpecPreds :: [EqSpec] -> ThetaType #

eqSpecTyVar :: EqSpec -> TyVar #

eqSpecType :: EqSpec -> Type #

isBanged :: HsImplBang -> Bool #

isBoxedTupleDataCon :: DataCon -> Bool #

isCovertGadtDataCon :: DataCon -> Bool #

isNewDataCon :: DataCon -> Bool #

isNullaryRepDataCon :: DataCon -> Bool #

isNullarySrcDataCon :: DataCon -> Bool #

isSrcStrict :: SrcStrictness -> Bool #

isSrcUnpacked :: SrcUnpackedness -> Bool #

isTupleDataCon :: DataCon -> Bool #

isTypeDataCon :: DataCon -> Bool #

isUnboxedSumDataCon :: DataCon -> Bool #

isUnboxedTupleDataCon :: DataCon -> Bool #

mkEqSpec :: TyVar -> Type -> EqSpec #

specialPromotedDc :: DataCon -> Bool #

splitDataProductType_maybe :: Type -> Maybe (TyCon, [Type], DataCon, [Scaled Type]) #

data FamInstEnv #

#### Instances

Instances details

Outputable FamInstEnv |
Instance details Defined in GHC.Core.FamInstEnv Methods ppr :: FamInstEnv -> SDoc #

data FamInst #

Constructors

FamInst |
Fields fi_axiom :: CoAxiom Unbranched fi_flavor :: FamFlavor fi_fam :: Name fi_tcs :: [RoughMatchTc] fi_tvs :: [TyVar] fi_cvs :: [CoVar] fi_tys :: [Type] fi_rhs :: Type

#### Instances

Instances details

NamedThing FamInst |
Instance details Defined in GHC.Core.FamInstEnv Methods getOccName :: FamInst -> OccName # getName :: FamInst -> Name #
Outputable FamInst |
Instance details Defined in GHC.Core.FamInstEnv Methods ppr :: FamInst -> SDoc #

data FamInstMatch #

Constructors

FamInstMatch |
Fields fim_instance :: FamInst fim_tys :: [Type] fim_cos :: [Coercion]

#### Instances

Instances details

Outputable FamInstMatch |
Instance details Defined in GHC.Core.FamInstEnv Methods ppr :: FamInstMatch -> SDoc #

data FamFlavor #

Constructors

SynFamilyInst |
DataFamilyInst TyCon |

type FamInstEnvs = (FamInstEnv, FamInstEnv) #

data InjectivityCheckResult #

Constructors

InjectivityAccepted |
InjectivityUnified CoAxBranch CoAxBranch |

famInstEnvElts :: FamInstEnv -> [FamInst] #

orphNamesOfFamInst :: FamInst -> NameSet #

apartnessCheck :: [Type] -> CoAxBranch -> Bool #

compatibleBranches :: CoAxBranch -> CoAxBranch -> Bool #

dataFamInstRepTyCon :: FamInst -> TyCon #

emptyFamInstEnv :: FamInstEnv #

emptyFamInstEnvs :: (FamInstEnv, FamInstEnv) #

extendFamInstEnv :: FamInstEnv -> FamInst -> FamInstEnv #

extendFamInstEnvList :: FamInstEnv -> [FamInst] -> FamInstEnv #

famInstAxiom :: FamInst -> CoAxiom Unbranched #

famInstEnvSize :: FamInstEnv -> Int #

famInstRHS :: FamInst -> Type #

famInstRepTyCon_maybe :: FamInst -> Maybe TyCon #

famInstTyCon :: FamInst -> TyCon #

famInstsRepTyCons :: [FamInst] -> [TyCon] #

familyInstances :: (FamInstEnv, FamInstEnv) -> TyCon -> [FamInst] #

familyNameInstances :: (FamInstEnv, FamInstEnv) -> Name -> [FamInst] #

injectiveBranches :: [Bool] -> CoAxBranch -> CoAxBranch -> InjectivityCheckResult #

isDominatedBy :: CoAxBranch -> [CoAxBranch] -> Bool #

lookupFamInstEnv :: FamInstEnvs -> TyCon -> [Type] -> [FamInstMatch] #

lookupFamInstEnvByTyCon :: FamInstEnvs -> TyCon -> [FamInst] #

lookupFamInstEnvConflicts :: FamInstEnvs -> FamInst -> [FamInst] #

lookupFamInstEnvInjectivityConflicts :: [Bool] -> FamInstEnvs -> FamInst -> [CoAxBranch] #

mkBranchedCoAxiom :: Name -> TyCon -> [CoAxBranch] -> CoAxiom Branched #

mkCoAxBranch :: [TyVar] -> [TyVar] -> [CoVar] -> [Type] -> Type -> [Role] -> SrcSpan -> CoAxBranch #

mkImportedFamInst :: Name -> [RoughMatchTc] -> CoAxiom Unbranched -> FamInst #

mkNewTypeCoAxiom :: Name -> TyCon -> [TyVar] -> [Role] -> Type -> CoAxiom Unbranched #

mkSingleCoAxiom :: Role -> Name -> [TyVar] -> [TyVar] -> [CoVar] -> TyCon -> [Type] -> Type -> CoAxiom Unbranched #

mkUnbranchedCoAxiom :: Name -> TyCon -> CoAxBranch -> CoAxiom Unbranched #

normaliseTcApp :: FamInstEnvs -> Role -> TyCon -> [Type] -> Reduction #

normaliseType :: FamInstEnvs -> Role -> Type -> Reduction #

pprFamInsts :: [FamInst] -> SDoc #

reduceTyFamApp_maybe :: FamInstEnvs -> Role -> TyCon -> [Type] -> Maybe Reduction #

topNormaliseType :: FamInstEnvs -> Type -> Type #

topNormaliseType_maybe :: FamInstEnvs -> Type -> Maybe Reduction #

topReduceTyFamApp_maybe :: FamInstEnvs -> TyCon -> [Type] -> Maybe HetReduction #

unionFamInstEnv :: FamInstEnv -> FamInstEnv -> FamInstEnv #

data DerivStrategy pass #

Constructors

StockStrategy (XStockStrategy pass) |
AnyclassStrategy (XAnyClassStrategy pass) |
NewtypeStrategy (XNewtypeStrategy pass) |
ViaStrategy (XViaStrategy pass) |

#### Instances

Instances details

ToHie (RScoped (LocatedAn NoEpAnns (DerivStrategy GhcRn))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: RScoped (LocatedAn NoEpAnns (DerivStrategy GhcRn)) -> HieM [HieAST Type]
type Anno (DerivStrategy (GhcPass p)) |
Instance details Defined in GHC.Hs.Decls type Anno (DerivStrategy (GhcPass p)) = SrcAnn NoEpAnns

data InjectivityAnn pass #

Constructors

InjectivityAnn (XCInjectivityAnn pass) (LIdP pass) [LIdP pass] |
XInjectivityAnn !(XXInjectivityAnn pass) |

#### Instances

Instances details

ToHie (LocatedAn NoEpAnns (InjectivityAnn GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedAn NoEpAnns (InjectivityAnn GhcRn) -> HieM [HieAST Type]
type Anno (InjectivityAnn (GhcPass p)) |
Instance details Defined in GHC.Hs.Decls type Anno (InjectivityAnn (GhcPass p)) = SrcAnn NoEpAnns

data RuleBndr pass #

Constructors

RuleBndr (XCRuleBndr pass) (LIdP pass) |
RuleBndrSig (XRuleBndrSig pass) (LIdP pass) (HsPatSigType pass) |
XRuleBndr !(XXRuleBndr pass) |

#### Instances

Instances details

ToHie (RScoped (LocatedAn NoEpAnns (RuleBndr GhcRn))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: RScoped (LocatedAn NoEpAnns (RuleBndr GhcRn)) -> HieM [HieAST Type]
type Anno (RuleBndr (GhcPass p)) |
Instance details Defined in GHC.Hs.Decls type Anno (RuleBndr (GhcPass p)) = SrcAnn NoEpAnns

data FamilyResultSig pass #

Constructors

NoSig (XNoSig pass) |
KindSig (XCKindSig pass) (LHsKind pass) |
TyVarSig (XTyVarSig pass) (LHsTyVarBndr () pass) |
XFamilyResultSig !(XXFamilyResultSig pass) |

#### Instances

Instances details

ToHie (RScoped (LocatedAn NoEpAnns (FamilyResultSig GhcRn))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: RScoped (LocatedAn NoEpAnns (FamilyResultSig GhcRn)) -> HieM [HieAST Type]
type Anno (FamilyResultSig (GhcPass p)) |
Instance details Defined in GHC.Hs.Decls type Anno (FamilyResultSig (GhcPass p)) = SrcAnn NoEpAnns

data DataDeclRn #

Constructors

DataDeclRn |
Fields tcdDataCusk :: Bool tcdFVs :: NameSet

#### Instances

Instances details

Data DataDeclRn |
Instance details Defined in GHC.Hs.Decls Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> DataDeclRn -> c DataDeclRn gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c DataDeclRn toConstr :: DataDeclRn -> Constr dataTypeOf :: DataDeclRn -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c DataDeclRn) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c DataDeclRn) gmapT :: (forall b. Data b => b -> b) -> DataDeclRn -> DataDeclRn gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> DataDeclRn -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> DataDeclRn -> r gmapQ :: (forall d. Data d => d -> u) -> DataDeclRn -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> DataDeclRn -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> DataDeclRn -> m DataDeclRn gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> DataDeclRn -> m DataDeclRn gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> DataDeclRn -> m DataDeclRn

data HsRuleAnn #

Constructors

HsRuleAnn |
Fields ra_tyanns :: Maybe (AddEpAnn, AddEpAnn) ra_tmanns :: Maybe (AddEpAnn, AddEpAnn) ra_rest :: [AddEpAnn]

#### Instances

Instances details

Data HsRuleAnn |
Instance details Defined in GHC.Hs.Decls Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> HsRuleAnn -> c HsRuleAnn gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c HsRuleAnn toConstr :: HsRuleAnn -> Constr dataTypeOf :: HsRuleAnn -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c HsRuleAnn) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c HsRuleAnn) gmapT :: (forall b. Data b => b -> b) -> HsRuleAnn -> HsRuleAnn gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> HsRuleAnn -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> HsRuleAnn -> r gmapQ :: (forall d. Data d => d -> u) -> HsRuleAnn -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> HsRuleAnn -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> HsRuleAnn -> m HsRuleAnn gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> HsRuleAnn -> m HsRuleAnn gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> HsRuleAnn -> m HsRuleAnn
Eq HsRuleAnn |
Instance details Defined in GHC.Hs.Decls Methods (==) :: HsRuleAnn -> HsRuleAnn -> Bool # (/=) :: HsRuleAnn -> HsRuleAnn -> Bool #

data HsRuleRn #

Constructors

HsRuleRn NameSet NameSet |

#### Instances

Instances details

Data HsRuleRn |
Instance details Defined in GHC.Hs.Decls Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> HsRuleRn -> c HsRuleRn gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c HsRuleRn toConstr :: HsRuleRn -> Constr dataTypeOf :: HsRuleRn -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c HsRuleRn) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c HsRuleRn) gmapT :: (forall b. Data b => b -> b) -> HsRuleRn -> HsRuleRn gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> HsRuleRn -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> HsRuleRn -> r gmapQ :: (forall d. Data d => d -> u) -> HsRuleRn -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> HsRuleRn -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> HsRuleRn -> m HsRuleRn gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> HsRuleRn -> m HsRuleRn gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> HsRuleRn -> m HsRuleRn

data XViaStrategyPs #

Constructors

XViaStrategyPs (EpAnn [AddEpAnn]) (LHsSigType GhcPs) |

#### Instances

Instances details

Outputable XViaStrategyPs |
Instance details Defined in GHC.Hs.Decls Methods ppr :: XViaStrategyPs -> SDoc #

data AnnDecl pass #

Constructors

HsAnnotation (XHsAnnotation pass) (AnnProvenance pass) (XRec pass (HsExpr pass)) |
XAnnDecl !(XXAnnDecl pass) |

#### Instances

Instances details

ToHie (LocatedA (AnnDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (AnnDecl GhcRn) -> HieM [HieAST Type]
type Anno (AnnDecl (GhcPass p)) |
Instance details Defined in GHC.Hs.Decls type Anno (AnnDecl (GhcPass p)) = SrcSpanAnnA

data AnnProvenance pass #

Constructors

ValueAnnProvenance (LIdP pass) |
TypeAnnProvenance (LIdP pass) |
ModuleAnnProvenance |

#### Instances

Instances details

ToHie (AnnProvenance GhcRn) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: AnnProvenance GhcRn -> HieM [HieAST Type]

data CImportSpec #

Constructors

CLabel CLabelString |
CFunction CCallTarget |
CWrapper |

#### Instances

Instances details

Data CImportSpec |
Instance details Defined in Language.Haskell.Syntax.Decls Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> CImportSpec -> c CImportSpec gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c CImportSpec toConstr :: CImportSpec -> Constr dataTypeOf :: CImportSpec -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c CImportSpec) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c CImportSpec) gmapT :: (forall b. Data b => b -> b) -> CImportSpec -> CImportSpec gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> CImportSpec -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> CImportSpec -> r gmapQ :: (forall d. Data d => d -> u) -> CImportSpec -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> CImportSpec -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> CImportSpec -> m CImportSpec gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> CImportSpec -> m CImportSpec gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> CImportSpec -> m CImportSpec

data ClsInstDecl pass #

Constructors

ClsInstDecl |
Fields cid_ext :: XCClsInstDecl pass cid_poly_ty :: LHsSigType pass cid_binds :: LHsBinds pass cid_sigs :: [LSig pass] cid_tyfam_insts :: [LTyFamInstDecl pass] cid_datafam_insts :: [LDataFamInstDecl pass] cid_overlap_mode :: Maybe (XRec pass OverlapMode)
XClsInstDecl !(XXClsInstDecl pass) |

#### Instances

Instances details

ToHie (LocatedA (ClsInstDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (ClsInstDecl GhcRn) -> HieM [HieAST Type]
type Anno (ClsInstDecl (GhcPass p)) |
Instance details Defined in GHC.Hs.Decls type Anno (ClsInstDecl (GhcPass p)) = SrcSpanAnnA

data ConDecl pass #

Constructors

ConDeclGADT |
Fields con_g_ext :: XConDeclGADT pass con_names :: NonEmpty (LIdP pass) con_dcolon :: !(LHsUniToken "::" "\8759" pass) con_bndrs :: XRec pass (HsOuterSigTyVarBndrs pass) con_mb_cxt :: Maybe (LHsContext pass) con_g_args :: HsConDeclGADTDetails pass con_res_ty :: LHsType pass con_doc :: Maybe (LHsDoc pass)
ConDeclH98 |
Fields con_ext :: XConDeclH98 pass con_name :: LIdP pass con_forall :: Bool con_ex_tvs :: [LHsTyVarBndr Specificity pass] con_mb_cxt :: Maybe (LHsContext pass) con_args :: HsConDeclH98Details pass con_doc :: Maybe (LHsDoc pass)
XConDecl !(XXConDecl pass) |

#### Instances

Instances details

ToHie (LocatedA (ConDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (ConDecl GhcRn) -> HieM [HieAST Type]
type Anno (ConDecl (GhcPass p)) |
Instance details Defined in GHC.Hs.Decls type Anno (ConDecl (GhcPass p)) = SrcSpanAnnA

newtype DataFamInstDecl pass #

Constructors

DataFamInstDecl |
Fields dfid_eqn :: FamEqn pass (HsDataDefn pass)

#### Instances

Instances details

ToHie (LocatedA (DataFamInstDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (DataFamInstDecl GhcRn) -> HieM [HieAST Type]
type Anno (DataFamInstDecl (GhcPass p)) |
Instance details Defined in GHC.Hs.Decls type Anno (DataFamInstDecl (GhcPass p)) = SrcSpanAnnA

data DefaultDecl pass #

Constructors

DefaultDecl (XCDefaultDecl pass) [LHsType pass] |
XDefaultDecl !(XXDefaultDecl pass) |

#### Instances

Instances details

ToHie (LocatedA (DefaultDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (DefaultDecl GhcRn) -> HieM [HieAST Type]
type Anno (DefaultDecl (GhcPass p)) |
Instance details Defined in GHC.Hs.Decls type Anno (DefaultDecl (GhcPass p)) = SrcSpanAnnA

data DerivClauseTys pass #

Constructors

DctSingle (XDctSingle pass) (LHsSigType pass) |
DctMulti (XDctMulti pass) [LHsSigType pass] |
XDerivClauseTys !(XXDerivClauseTys pass) |

#### Instances

Instances details

ToHie (LocatedC (DerivClauseTys GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedC (DerivClauseTys GhcRn) -> HieM [HieAST Type]
type Anno (DerivClauseTys (GhcPass _1)) |
Instance details Defined in GHC.Hs.Decls type Anno (DerivClauseTys (GhcPass _1)) = SrcSpanAnnC

data DerivDecl pass #

Constructors

DerivDecl |
Fields deriv_ext :: XCDerivDecl pass deriv_type :: LHsSigWcType pass deriv_strategy :: Maybe (LDerivStrategy pass) deriv_overlap_mode :: Maybe (XRec pass OverlapMode)
XDerivDecl !(XXDerivDecl pass) |

#### Instances

Instances details

ToHie (LocatedA (DerivDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (DerivDecl GhcRn) -> HieM [HieAST Type]
type Anno (DerivDecl (GhcPass p)) |
Instance details Defined in GHC.Hs.Decls type Anno (DerivDecl (GhcPass p)) = SrcSpanAnnA

data DocDecl pass #

Constructors

DocCommentNext (LHsDoc pass) |
DocCommentPrev (LHsDoc pass) |
DocCommentNamed String (LHsDoc pass) |
DocGroup Int (LHsDoc pass) |

#### Instances

Instances details

(Data pass, Data (IdP pass)) => Data (DocDecl pass) |
Instance details Defined in Language.Haskell.Syntax.Decls Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> DocDecl pass -> c (DocDecl pass) gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (DocDecl pass) toConstr :: DocDecl pass -> Constr dataTypeOf :: DocDecl pass -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (DocDecl pass)) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (DocDecl pass)) gmapT :: (forall b. Data b => b -> b) -> DocDecl pass -> DocDecl pass gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> DocDecl pass -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> DocDecl pass -> r gmapQ :: (forall d. Data d => d -> u) -> DocDecl pass -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> DocDecl pass -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> DocDecl pass -> m (DocDecl pass) gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> DocDecl pass -> m (DocDecl pass) gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> DocDecl pass -> m (DocDecl pass)
ToHie (LocatedA (DocDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (DocDecl GhcRn) -> HieM [HieAST Type]
type Anno (DocDecl (GhcPass p)) |
Instance details Defined in GHC.Hs.Decls type Anno (DocDecl (GhcPass p)) = SrcSpanAnnA

data FamEqn pass rhs #

Constructors

FamEqn |
Fields feqn_ext :: XCFamEqn pass rhs feqn_tycon :: LIdP pass feqn_bndrs :: HsOuterFamEqnTyVarBndrs pass feqn_pats :: HsTyPats pass feqn_fixity :: LexicalFixity feqn_rhs :: rhs
XFamEqn !(XXFamEqn pass rhs) |

#### Instances

Instances details

ToHie (TScoped (FamEqn GhcRn (LocatedA (HsType GhcRn)))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: TScoped (FamEqn GhcRn (LocatedA (HsType GhcRn))) -> HieM [HieAST Type]
ToHie (TScoped (FamEqn GhcRn (HsDataDefn GhcRn))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: TScoped (FamEqn GhcRn (HsDataDefn GhcRn)) -> HieM [HieAST Type]
(HasLoc a, HiePass p) => HasLoc (FamEqn (GhcPass p) a) |
Instance details Defined in GHC.Iface.Ext.Ast Methods loc :: FamEqn (GhcPass p) a -> SrcSpan
(ToHie rhs, HasLoc rhs) => ToHie (FamEqn GhcRn rhs) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: FamEqn GhcRn rhs -> HieM [HieAST Type]
type Anno (FamEqn (GhcPass p) _1) |
Instance details Defined in GHC.Hs.Decls type Anno (FamEqn (GhcPass p) _1) = SrcSpanAnnA
type Anno (FamEqn (GhcPass p) _1) |
Instance details Defined in GHC.Hs.Decls type Anno (FamEqn (GhcPass p) _1) = SrcSpanAnnA
type Anno (FamEqn p (LocatedA (HsType p))) |
Instance details Defined in GHC.Hs.Decls type Anno (FamEqn p (LocatedA (HsType p))) = SrcSpanAnnA

data FamilyDecl pass #

Constructors

FamilyDecl |
Fields fdExt :: XCFamilyDecl pass fdInfo :: FamilyInfo pass fdTopLevel :: TopLevelFlag fdLName :: LIdP pass fdTyVars :: LHsQTyVars pass fdFixity :: LexicalFixity fdResultSig :: LFamilyResultSig pass fdInjectivityAnn :: Maybe (LInjectivityAnn pass)
XFamilyDecl !(XXFamilyDecl pass) |

#### Instances

Instances details

ToHie (LocatedA (FamilyDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (FamilyDecl GhcRn) -> HieM [HieAST Type]
type Anno (FamilyDecl (GhcPass p)) |
Instance details Defined in GHC.Hs.Decls type Anno (FamilyDecl (GhcPass p)) = SrcSpanAnnA

data FamilyInfo pass #

Constructors

DataFamily |
OpenTypeFamily |
ClosedTypeFamily (Maybe [LTyFamInstEqn pass]) |

#### Instances

Instances details

ToHie (FamilyInfo GhcRn) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: FamilyInfo GhcRn -> HieM [HieAST Type]

data ForeignDecl pass #

Constructors

ForeignImport |
Fields fd_i_ext :: XForeignImport pass fd_name :: LIdP pass fd_sig_ty :: LHsSigType pass fd_fi :: ForeignImport pass
ForeignExport |
Fields fd_e_ext :: XForeignExport pass fd_name :: LIdP pass fd_sig_ty :: LHsSigType pass fd_fe :: ForeignExport pass
XForeignDecl !(XXForeignDecl pass) |

#### Instances

Instances details

ToHie (LocatedA (ForeignDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (ForeignDecl GhcRn) -> HieM [HieAST Type]
type Anno (ForeignDecl (GhcPass p)) |
Instance details Defined in GHC.Hs.Decls type Anno (ForeignDecl (GhcPass p)) = SrcSpanAnnA

data ForeignExport pass #

Constructors

CExport (XCExport pass) (XRec pass CExportSpec) |
XForeignExport !(XXForeignExport pass) |

#### Instances

Instances details

ToHie (ForeignExport GhcRn) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: ForeignExport GhcRn -> HieM [HieAST Type]

data ForeignImport pass #

Constructors

CImport (XCImport pass) (XRec pass CCallConv) (XRec pass Safety) (Maybe Header) CImportSpec |
XForeignImport !(XXForeignImport pass) |

#### Instances

Instances details

ToHie (ForeignImport GhcRn) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: ForeignImport GhcRn -> HieM [HieAST Type]

data HsConDeclGADTDetails pass #

Constructors

PrefixConGADT [HsScaled pass (LBangType pass)] |
RecConGADT (XRec pass [LConDeclField pass]) (LHsUniToken "->" "\8594" pass) |

#### Instances

Instances details

ToHie (HsConDeclGADTDetails GhcRn) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: HsConDeclGADTDetails GhcRn -> HieM [HieAST Type]

type HsConDeclH98Details pass = HsConDetails Void (HsScaled pass (LBangType pass)) (XRec pass [LConDeclField pass]) #

data HsDataDefn pass #

Constructors

HsDataDefn |
Fields dd_ext :: XCHsDataDefn pass dd_ctxt :: Maybe (LHsContext pass) dd_cType :: Maybe (XRec pass CType) dd_kindSig :: Maybe (LHsKind pass) dd_cons :: DataDefnCons (LConDecl pass) dd_derivs :: HsDeriving pass
XHsDataDefn !(XXHsDataDefn pass) |

#### Instances

Instances details

HasLoc (HsDataDefn GhcRn) |
Instance details Defined in GHC.Iface.Ext.Ast Methods loc :: HsDataDefn GhcRn -> SrcSpan
ToHie (TScoped (FamEqn GhcRn (HsDataDefn GhcRn))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: TScoped (FamEqn GhcRn (HsDataDefn GhcRn)) -> HieM [HieAST Type]
ToHie (HsDataDefn GhcRn) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: HsDataDefn GhcRn -> HieM [HieAST Type]

data HsDecl p #

Constructors

TyClD (XTyClD p) (TyClDecl p) |
InstD (XInstD p) (InstDecl p) |
DerivD (XDerivD p) (DerivDecl p) |
ValD (XValD p) (HsBind p) |
SigD (XSigD p) (Sig p) |
KindSigD (XKindSigD p) (StandaloneKindSig p) |
DefD (XDefD p) (DefaultDecl p) |
ForD (XForD p) (ForeignDecl p) |
WarningD (XWarningD p) (WarnDecls p) |
AnnD (XAnnD p) (AnnDecl p) |
RuleD (XRuleD p) (RuleDecls p) |
SpliceD (XSpliceD p) (SpliceDecl p) |
DocD (XDocD p) (DocDecl p) |
RoleAnnotD (XRoleAnnotD p) (RoleAnnotDecl p) |
XHsDecl !(XXHsDecl p) |

#### Instances

Instances details

type Anno (HsDecl (GhcPass _1)) |
Instance details Defined in GHC.Hs.Decls type Anno (HsDecl (GhcPass _1)) = SrcSpanAnnA

type HsDeriving pass = [LHsDerivingClause pass] #

data HsDerivingClause pass #

Constructors

HsDerivingClause |
Fields deriv_clause_ext :: XCHsDerivingClause pass deriv_clause_strategy :: Maybe (LDerivStrategy pass) deriv_clause_tys :: LDerivClauseTys pass
XHsDerivingClause !(XXHsDerivingClause pass) |

#### Instances

Instances details

ToHie (Located [LocatedAn NoEpAnns (HsDerivingClause GhcRn)]) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: Located [LocatedAn NoEpAnns (HsDerivingClause GhcRn)] -> HieM [HieAST Type]
ToHie (LocatedAn NoEpAnns (HsDerivingClause GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedAn NoEpAnns (HsDerivingClause GhcRn) -> HieM [HieAST Type]
type Anno (HsDerivingClause (GhcPass p)) |
Instance details Defined in GHC.Hs.Decls type Anno (HsDerivingClause (GhcPass p)) = SrcAnn NoEpAnns

data HsGroup p #

Constructors

HsGroup |
Fields hs_ext :: XCHsGroup p hs_valds :: HsValBinds p hs_splcds :: [LSpliceDecl p] hs_tyclds :: [TyClGroup p] hs_derivds :: [LDerivDecl p] hs_fixds :: [LFixitySig p] hs_defds :: [LDefaultDecl p] hs_fords :: [LForeignDecl p] hs_warnds :: [LWarnDecls p] hs_annds :: [LAnnDecl p] hs_ruleds :: [LRuleDecls p] hs_docs :: [LDocDecl p]
XHsGroup !(XXHsGroup p) |

type HsTyPats pass = [LHsTypeArg pass] #

data InstDecl pass #

Constructors

ClsInstD |
Fields cid_d_ext :: XClsInstD pass cid_inst :: ClsInstDecl pass
DataFamInstD |
Fields dfid_ext :: XDataFamInstD pass dfid_inst :: DataFamInstDecl pass
TyFamInstD |
Fields tfid_ext :: XTyFamInstD pass tfid_inst :: TyFamInstDecl pass
XInstDecl !(XXInstDecl pass) |

#### Instances

Instances details

ToHie (LocatedA (InstDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (InstDecl GhcRn) -> HieM [HieAST Type]
type Anno (InstDecl (GhcPass p)) |
Instance details Defined in GHC.Hs.Decls type Anno (InstDecl (GhcPass p)) = SrcSpanAnnA

type LAnnDecl pass = XRec pass (AnnDecl pass) #

type LClsInstDecl pass = XRec pass (ClsInstDecl pass) #

type LConDecl pass = XRec pass (ConDecl pass) #

type LDataFamInstDecl pass = XRec pass (DataFamInstDecl pass) #

type LDefaultDecl pass = XRec pass (DefaultDecl pass) #

type LDerivClauseTys pass = XRec pass (DerivClauseTys pass) #

type LDerivDecl pass = XRec pass (DerivDecl pass) #

type LDerivStrategy pass = XRec pass (DerivStrategy pass) #

type LDocDecl pass = XRec pass (DocDecl pass) #

type LFamilyDecl pass = XRec pass (FamilyDecl pass) #

type LFamilyResultSig pass = XRec pass (FamilyResultSig pass) #

type LForeignDecl pass = XRec pass (ForeignDecl pass) #

type LHsDecl p = XRec p (HsDecl p) #

type LHsDerivingClause pass = XRec pass (HsDerivingClause pass) #

type LHsFunDep pass = XRec pass (FunDep pass) #

type LInjectivityAnn pass = XRec pass (InjectivityAnn pass) #

type LInstDecl pass = XRec pass (InstDecl pass) #

type LRoleAnnotDecl pass = XRec pass (RoleAnnotDecl pass) #

type LRuleBndr pass = XRec pass (RuleBndr pass) #

type LRuleDecl pass = XRec pass (RuleDecl pass) #

type LRuleDecls pass = XRec pass (RuleDecls pass) #

type LSpliceDecl pass = XRec pass (SpliceDecl pass) #

type LStandaloneKindSig pass = XRec pass (StandaloneKindSig pass) #

type LTyClDecl pass = XRec pass (TyClDecl pass) #

type LTyFamDefltDecl pass = XRec pass (TyFamDefltDecl pass) #

type LTyFamInstDecl pass = XRec pass (TyFamInstDecl pass) #

type LTyFamInstEqn pass = XRec pass (TyFamInstEqn pass) #

type LWarnDecl pass = XRec pass (WarnDecl pass) #

type LWarnDecls pass = XRec pass (WarnDecls pass) #

data NewOrData #

#### Instances

Instances details

Data NewOrData |
Instance details Defined in Language.Haskell.Syntax.Decls Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> NewOrData -> c NewOrData gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c NewOrData toConstr :: NewOrData -> Constr dataTypeOf :: NewOrData -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c NewOrData) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c NewOrData) gmapT :: (forall b. Data b => b -> b) -> NewOrData -> NewOrData gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> NewOrData -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> NewOrData -> r gmapQ :: (forall d. Data d => d -> u) -> NewOrData -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> NewOrData -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> NewOrData -> m NewOrData gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> NewOrData -> m NewOrData gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> NewOrData -> m NewOrData
Eq NewOrData |
Instance details Defined in Language.Haskell.Syntax.Decls Methods (==) :: NewOrData -> NewOrData -> Bool # (/=) :: NewOrData -> NewOrData -> Bool #

data RoleAnnotDecl pass #

Constructors

RoleAnnotDecl (XCRoleAnnotDecl pass) (LIdP pass) [XRec pass (Maybe Role)] |
XRoleAnnotDecl !(XXRoleAnnotDecl pass) |

#### Instances

Instances details

ToHie (LocatedA (RoleAnnotDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (RoleAnnotDecl GhcRn) -> HieM [HieAST Type]
type Anno (RoleAnnotDecl (GhcPass p)) |
Instance details Defined in GHC.Hs.Decls type Anno (RoleAnnotDecl (GhcPass p)) = SrcSpanAnnA

data RuleDecl pass #

Constructors

HsRule |
Fields rd_ext :: XHsRule pass rd_name :: XRec pass RuleName rd_act :: Activation rd_tyvs :: Maybe [LHsTyVarBndr () (NoGhcTc pass)] rd_tmvs :: [LRuleBndr pass] rd_lhs :: XRec pass (HsExpr pass) rd_rhs :: XRec pass (HsExpr pass)
XRuleDecl !(XXRuleDecl pass) |

#### Instances

Instances details

ToHie (LocatedA (RuleDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (RuleDecl GhcRn) -> HieM [HieAST Type]
type Anno (RuleDecl (GhcPass p)) |
Instance details Defined in GHC.Hs.Decls type Anno (RuleDecl (GhcPass p)) = SrcSpanAnnA

data RuleDecls pass #

Constructors

HsRules |
Fields rds_ext :: XCRuleDecls pass rds_rules :: [LRuleDecl pass]
XRuleDecls !(XXRuleDecls pass) |

#### Instances

Instances details

ToHie (LocatedA (RuleDecls GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (RuleDecls GhcRn) -> HieM [HieAST Type]
type Anno (RuleDecls (GhcPass p)) |
Instance details Defined in GHC.Hs.Decls type Anno (RuleDecls (GhcPass p)) = SrcSpanAnnA

data SpliceDecl p #

Constructors

SpliceDecl (XSpliceDecl p) (XRec p (HsUntypedSplice p)) SpliceDecoration |
XSpliceDecl !(XXSpliceDecl p) |

#### Instances

Instances details

ToHie (LocatedA (SpliceDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (SpliceDecl GhcRn) -> HieM [HieAST Type]
type Anno (SpliceDecl (GhcPass p)) |
Instance details Defined in GHC.Hs.Decls type Anno (SpliceDecl (GhcPass p)) = SrcSpanAnnA

data SpliceDecoration #

Constructors

DollarSplice |
BareSplice |

#### Instances

Instances details

Data SpliceDecoration |
Instance details Defined in Language.Haskell.Syntax.Decls Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> SpliceDecoration -> c SpliceDecoration gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c SpliceDecoration toConstr :: SpliceDecoration -> Constr dataTypeOf :: SpliceDecoration -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c SpliceDecoration) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c SpliceDecoration) gmapT :: (forall b. Data b => b -> b) -> SpliceDecoration -> SpliceDecoration gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> SpliceDecoration -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> SpliceDecoration -> r gmapQ :: (forall d. Data d => d -> u) -> SpliceDecoration -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> SpliceDecoration -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> SpliceDecoration -> m SpliceDecoration gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> SpliceDecoration -> m SpliceDecoration gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> SpliceDecoration -> m SpliceDecoration
Show SpliceDecoration |
Instance details Defined in Language.Haskell.Syntax.Decls Methods showsPrec :: Int -> SpliceDecoration -> ShowS # show :: SpliceDecoration -> String # showList :: [SpliceDecoration] -> ShowS #
Eq SpliceDecoration |
Instance details Defined in Language.Haskell.Syntax.Decls Methods (==) :: SpliceDecoration -> SpliceDecoration -> Bool # (/=) :: SpliceDecoration -> SpliceDecoration -> Bool #

data StandaloneKindSig pass #

Constructors

StandaloneKindSig (XStandaloneKindSig pass) (LIdP pass) (LHsSigType pass) |
XStandaloneKindSig !(XXStandaloneKindSig pass) |

#### Instances

Instances details

ToHie (LocatedA (StandaloneKindSig GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (StandaloneKindSig GhcRn) -> HieM [HieAST Type]
ToHie (StandaloneKindSig GhcRn) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: StandaloneKindSig GhcRn -> HieM [HieAST Type]
type Anno (StandaloneKindSig (GhcPass p)) |
Instance details Defined in GHC.Hs.Decls type Anno (StandaloneKindSig (GhcPass p)) = SrcSpanAnnA

data TyClDecl pass #

Constructors

FamDecl |
Fields tcdFExt :: XFamDecl pass tcdFam :: FamilyDecl pass
SynDecl |
Fields tcdSExt :: XSynDecl pass tcdLName :: LIdP pass tcdTyVars :: LHsQTyVars pass tcdFixity :: LexicalFixity tcdRhs :: LHsType pass
DataDecl |
Fields tcdDExt :: XDataDecl pass tcdLName :: LIdP pass tcdTyVars :: LHsQTyVars pass tcdFixity :: LexicalFixity tcdDataDefn :: HsDataDefn pass
ClassDecl |
Fields tcdCExt :: XClassDecl pass tcdLayout :: !(LayoutInfo pass) tcdCtxt :: Maybe (LHsContext pass) tcdLName :: LIdP pass tcdTyVars :: LHsQTyVars pass tcdFixity :: LexicalFixity tcdFDs :: [LHsFunDep pass] tcdSigs :: [LSig pass] tcdMeths :: LHsBinds pass tcdATs :: [LFamilyDecl pass] tcdATDefs :: [LTyFamDefltDecl pass] tcdDocs :: [LDocDecl pass]
XTyClDecl !(XXTyClDecl pass) |

#### Instances

Instances details

ToHie (LocatedA (TyClDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (TyClDecl GhcRn) -> HieM [HieAST Type]
type Anno (TyClDecl (GhcPass p)) |
Instance details Defined in GHC.Hs.Decls type Anno (TyClDecl (GhcPass p)) = SrcSpanAnnA

data TyClGroup pass #

Constructors

TyClGroup |
Fields group_ext :: XCTyClGroup pass group_tyclds :: [LTyClDecl pass] group_roles :: [LRoleAnnotDecl pass] group_kisigs :: [LStandaloneKindSig pass] group_instds :: [LInstDecl pass]
XTyClGroup !(XXTyClGroup pass) |

#### Instances

Instances details

ToHie (TyClGroup GhcRn) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: TyClGroup GhcRn -> HieM [HieAST Type]

type TyFamDefltDecl = TyFamInstDecl #

data TyFamInstDecl pass #

Constructors

TyFamInstDecl |
Fields tfid_xtn :: XCTyFamInstDecl pass tfid_eqn :: TyFamInstEqn pass
XTyFamInstDecl !(XXTyFamInstDecl pass) |

#### Instances

Instances details

ToHie (LocatedA (TyFamInstDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (TyFamInstDecl GhcRn) -> HieM [HieAST Type]
type Anno (TyFamInstDecl (GhcPass p)) |
Instance details Defined in GHC.Hs.Decls type Anno (TyFamInstDecl (GhcPass p)) = SrcSpanAnnA

type TyFamInstEqn pass = FamEqn pass (LHsType pass) #

data WarnDecl pass #

Constructors

Warning (XWarning pass) [LIdP pass] (WarningTxt pass) |
XWarnDecl !(XXWarnDecl pass) |

#### Instances

Instances details

ToHie (LocatedA (WarnDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (WarnDecl GhcRn) -> HieM [HieAST Type]
type Anno (WarnDecl (GhcPass p)) |
Instance details Defined in GHC.Hs.Decls type Anno (WarnDecl (GhcPass p)) = SrcSpanAnnA

data WarnDecls pass #

Constructors

Warnings |
Fields wd_ext :: XWarnings pass wd_warnings :: [LWarnDecl pass]
XWarnDecls !(XXWarnDecls pass) |

#### Instances

Instances details

ToHie (LocatedA (WarnDecls GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (WarnDecls GhcRn) -> HieM [HieAST Type]
type Anno (WarnDecls (GhcPass p)) |
Instance details Defined in GHC.Hs.Decls type Anno (WarnDecls (GhcPass p)) = SrcSpanAnnA

pattern XFunDep :: !(XXFunDep pass) -> FunDep pass #

anyLConIsGadt :: Foldable f => f (GenLocated l (ConDecl pass)) -> Bool #

appendGroups :: forall (p :: Pass). HsGroup (GhcPass p) -> HsGroup (GhcPass p) -> HsGroup (GhcPass p) #

countTyClDecls :: [TyClDecl pass] -> (Int, Int, Int, Int, Int) #

derivStrategyName :: DerivStrategy a -> SDoc #

emptyRdrGroup :: forall (p :: Pass). HsGroup (GhcPass p) #

emptyRnGroup :: forall (p :: Pass). HsGroup (GhcPass p) #

famResultKindSignature :: forall (p :: Pass). FamilyResultSig (GhcPass p) -> Maybe (LHsKind (GhcPass p)) #

familyDeclLName :: forall (p :: Pass). FamilyDecl (GhcPass p) -> XRec (GhcPass p) (IdP (GhcPass p)) #

familyDeclName :: forall (p :: Pass). FamilyDecl (GhcPass p) -> IdP (GhcPass p) #

flattenRuleDecls :: forall (p :: Pass). [LRuleDecls (GhcPass p)] -> [LRuleDecl (GhcPass p)] #

foldDerivStrategy :: forall p (pass :: Pass) r. p ~ GhcPass pass => r -> (XViaStrategy p -> r) -> DerivStrategy p -> r #

getConNames :: ConDecl GhcRn -> [LocatedN Name] #

getRecConArgs_maybe :: ConDecl GhcRn -> Maybe (LocatedL [LConDeclField GhcRn]) #

hsConDeclTheta :: forall (p :: Pass). Maybe (LHsContext (GhcPass p)) -> [LHsType (GhcPass p)] #

hsDeclHasCusk :: TyClDecl GhcRn -> Bool #

hsGroupTopLevelFixitySigs :: forall (p :: Pass). HsGroup (GhcPass p) -> [LFixitySig (GhcPass p)] #

instDeclDataFamInsts :: forall (p :: Pass). [LInstDecl (GhcPass p)] -> [DataFamInstDecl (GhcPass p)] #

mapDerivStrategy :: forall p (pass :: Pass). p ~ GhcPass pass => (XViaStrategy p -> XViaStrategy p) -> DerivStrategy p -> DerivStrategy p #

newOrDataToFlavour :: NewOrData -> TyConFlavour #

partitionBindsAndSigs :: [LHsDecl GhcPs] -> (LHsBinds GhcPs, [LSig GhcPs], [LFamilyDecl GhcPs], [LTyFamInstDecl GhcPs], [LDataFamInstDecl GhcPs], [LDocDecl GhcPs]) #

ppDataDefnHeader :: forall (p :: Pass). OutputableBndrId p => (Maybe (LHsContext (GhcPass p)) -> SDoc) -> HsDataDefn (GhcPass p) -> SDoc #

pp_vanilla_decl_head :: forall (p :: Pass). OutputableBndrId p => XRec (GhcPass p) (IdP (GhcPass p)) -> LHsQTyVars (GhcPass p) -> LexicalFixity -> Maybe (LHsContext (GhcPass p)) -> SDoc #

pprDataFamInstFlavour :: forall (p :: Pass). DataFamInstDecl (GhcPass p) -> SDoc #

pprFullRuleName :: SourceText -> GenLocated a RuleName -> SDoc #

pprHsFamInstLHS :: forall (p :: Pass). OutputableBndrId p => IdP (GhcPass p) -> HsOuterFamEqnTyVarBndrs (GhcPass p) -> HsTyPats (GhcPass p) -> LexicalFixity -> Maybe (LHsContext (GhcPass p)) -> SDoc #

pprTyClDeclFlavour :: forall (p :: Pass). TyClDecl (GhcPass p) -> SDoc #

pprTyFamInstDecl :: forall (p :: Pass). OutputableBndrId p => TopLevelFlag -> TyFamInstDecl (GhcPass p) -> SDoc #

resultVariableName :: forall (a :: Pass). FamilyResultSig (GhcPass a) -> Maybe (IdP (GhcPass a)) #

roleAnnotDeclName :: forall (p :: Pass). RoleAnnotDecl (GhcPass p) -> IdP (GhcPass p) #

standaloneKindSigName :: forall (p :: Pass). StandaloneKindSig (GhcPass p) -> IdP (GhcPass p) #

tcdName :: forall (p :: Pass). Anno (IdGhcP p) ~ SrcSpanAnnN => TyClDecl (GhcPass p) -> IdP (GhcPass p) #

tyClDeclLName :: forall (p :: Pass). Anno (IdGhcP p) ~ SrcSpanAnnN => TyClDecl (GhcPass p) -> LocatedN (IdP (GhcPass p)) #

tyFamInstDeclLName :: forall (p :: Pass). Anno (IdGhcP p) ~ SrcSpanAnnN => TyFamInstDecl (GhcPass p) -> LocatedN (IdP (GhcPass p)) #

tyFamInstDeclName :: forall (p :: Pass). Anno (IdGhcP p) ~ SrcSpanAnnN => TyFamInstDecl (GhcPass p) -> IdP (GhcPass p) #

annProvenanceName_maybe :: UnXRec p => AnnProvenance p -> Maybe (IdP p) #

collectRuleBndrSigTys :: [RuleBndr pass] -> [HsPatSigType pass] #

docDeclDoc :: DocDecl pass -> LHsDoc pass #

hsGroupInstDecls :: HsGroup id -> [LInstDecl id] #

isClassDecl :: TyClDecl pass -> Bool #

isClosedTypeFamilyInfo :: FamilyInfo pass -> Bool #

isDataDecl :: TyClDecl pass -> Bool #

isDataFamilyDecl :: TyClDecl pass -> Bool #

isFamilyDecl :: TyClDecl pass -> Bool #

isOpenTypeFamilyInfo :: FamilyInfo pass -> Bool #

isSynDecl :: TyClDecl pass -> Bool #

isTypeFamilyDecl :: TyClDecl pass -> Bool #

tyClDeclTyVars :: TyClDecl pass -> LHsQTyVars pass #

tyClGroupInstDecls :: [TyClGroup pass] -> [LInstDecl pass] #

tyClGroupKindSigs :: [TyClGroup pass] -> [LStandaloneKindSig pass] #

tyClGroupRoleDecls :: [TyClGroup pass] -> [LRoleAnnotDecl pass] #

tyClGroupTyClDecls :: [TyClGroup pass] -> [LTyClDecl pass] #

class UnXRec p => CollectPass p where #

Methods

collectXXPat :: CollectFlag p -> XXPat p -> [IdP p] -> [IdP p] #

collectXXHsBindsLR :: XXHsBindsLR p pR -> [IdP p] -> [IdP p] #

collectXSplicePat :: CollectFlag p -> XSplicePat p -> [IdP p] -> [IdP p] #

#### Instances

Instances details

IsPass p => CollectPass (GhcPass p) |
Instance details Defined in GHC.Hs.Utils Methods collectXXPat :: CollectFlag (GhcPass p) -> XXPat (GhcPass p) -> [IdP (GhcPass p)] -> [IdP (GhcPass p)] # collectXXHsBindsLR :: XXHsBindsLR (GhcPass p) pR -> [IdP (GhcPass p)] -> [IdP (GhcPass p)] # collectXSplicePat :: CollectFlag (GhcPass p) -> XSplicePat (GhcPass p) -> [IdP (GhcPass p)] -> [IdP (GhcPass p)] #

data CollectFlag p where #

Constructors

CollNoDictBinders :: forall p. CollectFlag p |
CollWithDictBinders :: CollectFlag (GhcPass 'Typechecked) |

mkHsAppKindTy :: forall (p :: Pass). XAppKindTy (GhcPass p) -> LHsType (GhcPass p) -> LHsType (GhcPass p) -> LHsType (GhcPass p) #

mkHsAppTy :: forall (p :: Pass). LHsType (GhcPass p) -> LHsType (GhcPass p) -> LHsType (GhcPass p) #

collectHsBindBinders :: CollectPass p => CollectFlag p -> HsBindLR p idR -> [IdP p] #

collectHsBindListBinders :: CollectPass p => CollectFlag p -> [LHsBindLR p idR] -> [IdP p] #

collectHsIdBinders :: forall (idL :: Pass) (idR :: Pass). CollectPass (GhcPass idL) => CollectFlag (GhcPass idL) -> HsValBindsLR (GhcPass idL) (GhcPass idR) -> [IdP (GhcPass idL)] #

collectHsValBinders :: forall (idL :: Pass) idR. CollectPass (GhcPass idL) => CollectFlag (GhcPass idL) -> HsValBindsLR (GhcPass idL) idR -> [IdP (GhcPass idL)] #

collectLStmtBinders :: forall (idL :: Pass) (idR :: Pass) body. CollectPass (GhcPass idL) => CollectFlag (GhcPass idL) -> LStmtLR (GhcPass idL) (GhcPass idR) body -> [IdP (GhcPass idL)] #

collectLStmtsBinders :: forall (idL :: Pass) (idR :: Pass) body. CollectPass (GhcPass idL) => CollectFlag (GhcPass idL) -> [LStmtLR (GhcPass idL) (GhcPass idR) body] -> [IdP (GhcPass idL)] #

collectLocalBinders :: forall (idL :: Pass) (idR :: Pass). CollectPass (GhcPass idL) => CollectFlag (GhcPass idL) -> HsLocalBindsLR (GhcPass idL) (GhcPass idR) -> [IdP (GhcPass idL)] #

collectMethodBinders :: UnXRec idL => LHsBindsLR idL idR -> [LIdP idL] #

collectPatBinders :: CollectPass p => CollectFlag p -> LPat p -> [IdP p] #

collectPatsBinders :: CollectPass p => CollectFlag p -> [LPat p] -> [IdP p] #

collectStmtBinders :: forall (idL :: Pass) (idR :: Pass) body. CollectPass (GhcPass idL) => CollectFlag (GhcPass idL) -> StmtLR (GhcPass idL) (GhcPass idR) body -> [IdP (GhcPass idL)] #

collectStmtsBinders :: forall (idL :: Pass) (idR :: Pass) body. CollectPass (GhcPass idL) => CollectFlag (GhcPass idL) -> [StmtLR (GhcPass idL) (GhcPass idR) body] -> [IdP (GhcPass idL)] #

emptyRecStmt :: forall (idL :: Pass) bodyR. Anno [GenLocated (Anno (StmtLR (GhcPass idL) GhcPs bodyR)) (StmtLR (GhcPass idL) GhcPs bodyR)] ~ SrcSpanAnnL => StmtLR (GhcPass idL) GhcPs bodyR #

emptyRecStmtId :: Stmt GhcTc (LocatedA (HsCmd GhcTc)) #

emptyRecStmtName :: Anno [GenLocated (Anno (StmtLR GhcRn GhcRn bodyR)) (StmtLR GhcRn GhcRn bodyR)] ~ SrcSpanAnnL => StmtLR GhcRn GhcRn bodyR #

emptyTransStmt :: EpAnn [AddEpAnn] -> StmtLR GhcPs GhcPs (LHsExpr GhcPs) #

getPatSynBinds :: UnXRec id => [(RecFlag, LHsBinds id)] -> [PatSynBind id id] #

hsDataFamInstBinders :: forall (p :: Pass). IsPass p => DataFamInstDecl (GhcPass p) -> ([LocatedA (IdP (GhcPass p))], [LFieldOcc (GhcPass p)]) #

hsForeignDeclsBinders :: forall (p :: Pass) a. (UnXRec (GhcPass p), IsSrcSpanAnn p a) => [LForeignDecl (GhcPass p)] -> [LIdP (GhcPass p)] #

hsGroupBinders :: HsGroup GhcRn -> [Name] #

hsLTyClDeclBinders :: forall (p :: Pass). IsPass p => LocatedA (TyClDecl (GhcPass p)) -> ([LocatedA (IdP (GhcPass p))], [LFieldOcc (GhcPass p)]) #

hsPatSynSelectors :: forall (p :: Pass). IsPass p => HsValBinds (GhcPass p) -> [FieldOcc (GhcPass p)] #

hsTyClForeignBinders :: [TyClGroup GhcRn] -> [LForeignDecl GhcRn] -> [Name] #

hsTypeToHsSigType :: LHsType GhcPs -> LHsSigType GhcPs #

hsTypeToHsSigWcType :: LHsType GhcPs -> LHsSigWcType GhcPs #

hsValBindsImplicits :: forall (idR :: Pass). HsValBindsLR GhcRn (GhcPass idR) -> [(SrcSpan, [Name])] #

isBangedHsBind :: HsBind GhcTc -> Bool #

isInfixFunBind :: forall id1 id2. UnXRec id2 => HsBindLR id1 id2 -> Bool #

isUnliftedHsBind :: HsBind GhcTc -> Bool #

lPatImplicits :: LPat GhcRn -> [(SrcSpan, [Name])] #

lStmtsImplicits :: forall (idR :: Pass) (body :: Type -> Type). [LStmtLR GhcRn (GhcPass idR) (LocatedA (body (GhcPass idR)))] -> [(SrcSpan, [Name])] #

missingTupArg :: EpAnn EpaLocation -> HsTupArg GhcPs #

mkBigLHsPatTup :: [LPat GhcRn] -> LPat GhcRn #

mkBigLHsTup :: forall (id :: Pass). [LHsExpr (GhcPass id)] -> XExplicitTuple (GhcPass id) -> LHsExpr (GhcPass id) #

mkBigLHsVarPatTup :: [IdP GhcRn] -> LPat GhcRn #

mkBigLHsVarTup :: forall (p :: Pass) a. IsSrcSpanAnn p a => [IdP (GhcPass p)] -> XExplicitTuple (GhcPass p) -> LHsExpr (GhcPass p) #

mkBodyStmt :: forall bodyR (idL :: Pass). LocatedA (bodyR GhcPs) -> StmtLR (GhcPass idL) GhcPs (LocatedA (bodyR GhcPs)) #

mkClassOpSigs :: [LSig GhcPs] -> [LSig GhcPs] #

mkConLikeTc :: ConLike -> HsExpr GhcTc #

mkFunBind :: Origin -> LocatedN RdrName -> [LMatch GhcPs (LHsExpr GhcPs)] -> HsBind GhcPs #

mkGroupByUsingStmt :: EpAnn [AddEpAnn] -> [ExprLStmt GhcPs] -> LHsExpr GhcPs -> LHsExpr GhcPs -> StmtLR GhcPs GhcPs (LHsExpr GhcPs) #

mkGroupUsingStmt :: EpAnn [AddEpAnn] -> [ExprLStmt GhcPs] -> LHsExpr GhcPs -> StmtLR GhcPs GhcPs (LHsExpr GhcPs) #

mkHsApp :: forall (id :: Pass). LHsExpr (GhcPass id) -> LHsExpr (GhcPass id) -> LHsExpr (GhcPass id) #

mkHsAppType :: LHsExpr GhcRn -> LHsWcType GhcRn -> LHsExpr GhcRn #

mkHsAppTypes :: LHsExpr GhcRn -> [LHsWcType GhcRn] -> LHsExpr GhcRn #

mkHsAppWith :: forall (id :: Pass). (LHsExpr (GhcPass id) -> LHsExpr (GhcPass id) -> HsExpr (GhcPass id) -> LHsExpr (GhcPass id)) -> LHsExpr (GhcPass id) -> LHsExpr (GhcPass id) -> LHsExpr (GhcPass id) #

mkHsApps :: forall (id :: Pass). LHsExpr (GhcPass id) -> [LHsExpr (GhcPass id)] -> LHsExpr (GhcPass id) #

mkHsAppsWith :: forall (id :: Pass). (LHsExpr (GhcPass id) -> LHsExpr (GhcPass id) -> HsExpr (GhcPass id) -> LHsExpr (GhcPass id)) -> LHsExpr (GhcPass id) -> [LHsExpr (GhcPass id)] -> LHsExpr (GhcPass id) #

mkHsCaseAlt :: forall (p :: Pass) body. (Anno (GRHS (GhcPass p) (LocatedA (body (GhcPass p)))) ~ SrcAnn NoEpAnns, Anno (Match (GhcPass p) (LocatedA (body (GhcPass p)))) ~ SrcSpanAnnA) => LPat (GhcPass p) -> LocatedA (body (GhcPass p)) -> LMatch (GhcPass p) (LocatedA (body (GhcPass p))) #

mkHsCharPrimLit :: forall (p :: Pass). Char -> HsLit (GhcPass p) #

mkHsCmdIf :: LHsExpr GhcPs -> LHsCmd GhcPs -> LHsCmd GhcPs -> EpAnn AnnsIf -> HsCmd GhcPs #

mkHsCmdWrap :: HsWrapper -> HsCmd GhcTc -> HsCmd GhcTc #

mkHsComp :: HsDoFlavour -> [ExprLStmt GhcPs] -> LHsExpr GhcPs -> HsExpr GhcPs #

mkHsCompAnns :: HsDoFlavour -> [ExprLStmt GhcPs] -> LHsExpr GhcPs -> EpAnn AnnList -> HsExpr GhcPs #

mkHsDictLet :: TcEvBinds -> LHsExpr GhcTc -> LHsExpr GhcTc #

mkHsDo :: HsDoFlavour -> LocatedL [ExprLStmt GhcPs] -> HsExpr GhcPs #

mkHsDoAnns :: HsDoFlavour -> LocatedL [ExprLStmt GhcPs] -> EpAnn AnnList -> HsExpr GhcPs #

mkHsFractional :: FractionalLit -> HsOverLit GhcPs #

mkHsIf :: LHsExpr GhcPs -> LHsExpr GhcPs -> LHsExpr GhcPs -> EpAnn AnnsIf -> HsExpr GhcPs #

mkHsIntegral :: IntegralLit -> HsOverLit GhcPs #

mkHsIsString :: SourceText -> FastString -> HsOverLit GhcPs #

mkHsLam :: forall (p :: Pass). (IsPass p, XMG (GhcPass p) (LHsExpr (GhcPass p)) ~ Origin) => [LPat (GhcPass p)] -> LHsExpr (GhcPass p) -> LHsExpr (GhcPass p) #

mkHsLams :: [TyVar] -> [EvVar] -> LHsExpr GhcTc -> LHsExpr GhcTc #

mkHsOpApp :: LHsExpr GhcPs -> IdP GhcPs -> LHsExpr GhcPs -> HsExpr GhcPs #

mkHsPar :: forall (id :: Pass). LHsExpr (GhcPass id) -> LHsExpr (GhcPass id) #

mkHsSigEnv :: (LSig GhcRn -> Maybe ([LocatedN Name], a)) -> [LSig GhcRn] -> NameEnv a #

mkHsString :: forall (p :: Pass). String -> HsLit (GhcPass p) #

mkHsStringFS :: forall (p :: Pass). FastString -> HsLit (GhcPass p) #

mkHsStringPrimLit :: forall (p :: Pass). FastString -> HsLit (GhcPass p) #

mkHsVarBind :: SrcSpan -> RdrName -> LHsExpr GhcPs -> LHsBind GhcPs #

mkHsWrap :: HsWrapper -> HsExpr GhcTc -> HsExpr GhcTc #

mkHsWrapCo :: TcCoercionN -> HsExpr GhcTc -> HsExpr GhcTc #

mkHsWrapCoR :: TcCoercionR -> HsExpr GhcTc -> HsExpr GhcTc #

mkHsWrapPat :: HsWrapper -> Pat GhcTc -> Type -> Pat GhcTc #

mkHsWrapPatCo :: TcCoercionN -> Pat GhcTc -> Type -> Pat GhcTc #

mkLHsCmdWrap :: HsWrapper -> LHsCmd GhcTc -> LHsCmd GhcTc #

mkLHsPar :: forall (id :: Pass). IsPass id => LHsExpr (GhcPass id) -> LHsExpr (GhcPass id) #

mkLHsTupleExpr :: forall (p :: Pass). [LHsExpr (GhcPass p)] -> XExplicitTuple (GhcPass p) -> LHsExpr (GhcPass p) #

mkLHsVarTuple :: forall (p :: Pass) a. IsSrcSpanAnn p a => [IdP (GhcPass p)] -> XExplicitTuple (GhcPass p) -> LHsExpr (GhcPass p) #

mkLHsWrap :: HsWrapper -> LHsExpr GhcTc -> LHsExpr GhcTc #

mkLHsWrapCo :: TcCoercionN -> LHsExpr GhcTc -> LHsExpr GhcTc #

mkLamCaseMatchGroup :: forall (p :: Pass) body. AnnoBody p body => Origin -> LamCaseVariant -> LocatedL [LocatedA (Match (GhcPass p) (LocatedA (body (GhcPass p))))] -> MatchGroup (GhcPass p) (LocatedA (body (GhcPass p))) #

mkLastStmt :: forall (idR :: Pass) bodyR (idL :: Pass). IsPass idR => LocatedA (bodyR (GhcPass idR)) -> StmtLR (GhcPass idL) (GhcPass idR) (LocatedA (bodyR (GhcPass idR))) #

mkLetStmt :: EpAnn [AddEpAnn] -> HsLocalBinds GhcPs -> StmtLR GhcPs GhcPs (LocatedA b) #

mkLocatedList :: Semigroup a => [GenLocated (SrcAnn a) e2] -> LocatedAn an [GenLocated (SrcAnn a) e2] #

mkMatch :: forall (p :: Pass). IsPass p => HsMatchContext (GhcPass p) -> [LPat (GhcPass p)] -> LHsExpr (GhcPass p) -> HsLocalBinds (GhcPass p) -> LMatch (GhcPass p) (LHsExpr (GhcPass p)) #

mkMatchGroup :: forall (p :: Pass) body. AnnoBody p body => Origin -> LocatedL [LocatedA (Match (GhcPass p) (LocatedA (body (GhcPass p))))] -> MatchGroup (GhcPass p) (LocatedA (body (GhcPass p))) #

mkNPat :: LocatedAn NoEpAnns (HsOverLit GhcPs) -> Maybe (SyntaxExpr GhcPs) -> EpAnn [AddEpAnn] -> Pat GhcPs #

mkNPlusKPat :: LocatedN RdrName -> LocatedAn NoEpAnns (HsOverLit GhcPs) -> EpAnn EpaLocation -> Pat GhcPs #

mkParPat :: forall (p :: Pass). IsPass p => LPat (GhcPass p) -> LPat (GhcPass p) #

mkPatSynBind :: LocatedN RdrName -> HsPatSynDetails GhcPs -> LPat GhcPs -> HsPatSynDir GhcPs -> EpAnn [AddEpAnn] -> HsBind GhcPs #

mkPrefixFunRhs :: LIdP (NoGhcTc p) -> HsMatchContext p #

mkPsBindStmt :: EpAnn [AddEpAnn] -> LPat GhcPs -> LocatedA (bodyR GhcPs) -> StmtLR GhcPs GhcPs (LocatedA (bodyR GhcPs)) #

mkRecStmt :: forall (idL :: Pass) bodyR. Anno [GenLocated (Anno (StmtLR (GhcPass idL) GhcPs bodyR)) (StmtLR (GhcPass idL) GhcPs bodyR)] ~ SrcSpanAnnL => EpAnn AnnList -> LocatedL [LStmtLR (GhcPass idL) GhcPs bodyR] -> StmtLR (GhcPass idL) GhcPs bodyR #

mkRnBindStmt :: LPat GhcRn -> LocatedA (bodyR GhcRn) -> StmtLR GhcRn GhcRn (LocatedA (bodyR GhcRn)) #

mkSimpleGeneratedFunBind :: SrcSpan -> RdrName -> [LPat GhcPs] -> LHsExpr GhcPs -> LHsBind GhcPs #

mkSimpleMatch :: forall (p :: Pass) body. (Anno (Match (GhcPass p) (LocatedA (body (GhcPass p)))) ~ SrcSpanAnnA, Anno (GRHS (GhcPass p) (LocatedA (body (GhcPass p)))) ~ SrcAnn NoEpAnns) => HsMatchContext (GhcPass p) -> [LPat (GhcPass p)] -> LocatedA (body (GhcPass p)) -> LMatch (GhcPass p) (LocatedA (body (GhcPass p))) #

mkTcBindStmt :: LPat GhcTc -> LocatedA (bodyR GhcTc) -> StmtLR GhcTc GhcTc (LocatedA (bodyR GhcTc)) #

mkTopFunBind :: Origin -> LocatedN Name -> [LMatch GhcRn (LHsExpr GhcRn)] -> HsBind GhcRn #

mkTransformByStmt :: EpAnn [AddEpAnn] -> [ExprLStmt GhcPs] -> LHsExpr GhcPs -> LHsExpr GhcPs -> StmtLR GhcPs GhcPs (LHsExpr GhcPs) #

mkTransformStmt :: EpAnn [AddEpAnn] -> [ExprLStmt GhcPs] -> LHsExpr GhcPs -> StmtLR GhcPs GhcPs (LHsExpr GhcPs) #

mkVarBind :: forall (p :: Pass). IdP (GhcPass p) -> LHsExpr (GhcPass p) -> LHsBind (GhcPass p) #

nlConPat :: RdrName -> [LPat GhcPs] -> LPat GhcPs #

nlConPatName :: Name -> [LPat GhcRn] -> LPat GhcRn #

nlConVarPat :: RdrName -> [RdrName] -> LPat GhcPs #

nlConVarPatName :: Name -> [Name] -> LPat GhcRn #

nlHsApp :: forall (id :: Pass). IsPass id => LHsExpr (GhcPass id) -> LHsExpr (GhcPass id) -> LHsExpr (GhcPass id) #

nlHsAppKindTy :: forall (p :: Pass). LHsType (GhcPass p) -> LHsKind (GhcPass p) -> LHsType (GhcPass p) #

nlHsAppTy :: forall (p :: Pass). LHsType (GhcPass p) -> LHsType (GhcPass p) -> LHsType (GhcPass p) #

nlHsApps :: forall (p :: Pass) a. IsSrcSpanAnn p a => IdP (GhcPass p) -> [LHsExpr (GhcPass p)] -> LHsExpr (GhcPass p) #

nlHsCase :: LHsExpr GhcPs -> [LMatch GhcPs (LHsExpr GhcPs)] -> LHsExpr GhcPs #

nlHsDataCon :: DataCon -> LHsExpr GhcTc #

nlHsDo :: HsDoFlavour -> [LStmt GhcPs (LHsExpr GhcPs)] -> LHsExpr GhcPs #

nlHsFunTy :: forall (p :: Pass). LHsType (GhcPass p) -> LHsType (GhcPass p) -> LHsType (GhcPass p) #

nlHsIf :: LHsExpr GhcPs -> LHsExpr GhcPs -> LHsExpr GhcPs -> LHsExpr GhcPs #

nlHsIntLit :: forall (p :: Pass). Integer -> LHsExpr (GhcPass p) #

nlHsLam :: LMatch GhcPs (LHsExpr GhcPs) -> LHsExpr GhcPs #

nlHsLit :: forall (p :: Pass). HsLit (GhcPass p) -> LHsExpr (GhcPass p) #

nlHsOpApp :: LHsExpr GhcPs -> IdP GhcPs -> LHsExpr GhcPs -> LHsExpr GhcPs #

nlHsPar :: forall (id :: Pass). LHsExpr (GhcPass id) -> LHsExpr (GhcPass id) #

nlHsParTy :: forall (p :: Pass). LHsType (GhcPass p) -> LHsType (GhcPass p) #

nlHsSyntaxApps :: SyntaxExprTc -> [LHsExpr GhcTc] -> LHsExpr GhcTc #

nlHsTyApp :: Id -> [Type] -> LHsExpr GhcTc #

nlHsTyApps :: Id -> [Type] -> [LHsExpr GhcTc] -> LHsExpr GhcTc #

nlHsTyConApp :: forall (p :: Pass) a. IsSrcSpanAnn p a => PromotionFlag -> LexicalFixity -> IdP (GhcPass p) -> [LHsTypeArg (GhcPass p)] -> LHsType (GhcPass p) #

nlHsTyVar :: forall (p :: Pass) a. IsSrcSpanAnn p a => PromotionFlag -> IdP (GhcPass p) -> LHsType (GhcPass p) #

nlHsVar :: forall (p :: Pass) a. IsSrcSpanAnn p a => IdP (GhcPass p) -> LHsExpr (GhcPass p) #

nlHsVarApps :: forall (p :: Pass) a. IsSrcSpanAnn p a => IdP (GhcPass p) -> [IdP (GhcPass p)] -> LHsExpr (GhcPass p) #

nlInfixConPat :: RdrName -> LPat GhcPs -> LPat GhcPs -> LPat GhcPs #

nlList :: [LHsExpr GhcPs] -> LHsExpr GhcPs #

nlLitPat :: HsLit GhcPs -> LPat GhcPs #

nlNullaryConPat :: RdrName -> LPat GhcPs #

nlParPat :: forall (name :: Pass). LPat (GhcPass name) -> LPat (GhcPass name) #

nlTuplePat :: [LPat GhcPs] -> Boxity -> LPat GhcPs #

nlVarPat :: forall (p :: Pass) a. IsSrcSpanAnn p a => IdP (GhcPass p) -> LPat (GhcPass p) #

nlWildConPat :: DataCon -> LPat GhcPs #

nlWildPat :: LPat GhcPs #

nlWildPatName :: LPat GhcRn #

nl_HsVar :: forall (p :: Pass) a. IsSrcSpanAnn p a => IdP (GhcPass p) -> HsExpr (GhcPass p) #

spanHsLocaLBinds :: forall (p :: Pass). HsLocalBinds (GhcPass p) -> SrcSpan #

unguardedGRHSs :: forall (p :: Pass) body. Anno (GRHS (GhcPass p) (LocatedA (body (GhcPass p)))) ~ SrcAnn NoEpAnns => SrcSpan -> LocatedA (body (GhcPass p)) -> EpAnn GrhsAnn -> GRHSs (GhcPass p) (LocatedA (body (GhcPass p))) #

unguardedRHS :: forall (p :: Pass) body. Anno (GRHS (GhcPass p) (LocatedA (body (GhcPass p)))) ~ SrcAnn NoEpAnns => EpAnn GrhsAnn -> SrcSpan -> LocatedA (body (GhcPass p)) -> [LGRHS (GhcPass p) (LocatedA (body (GhcPass p)))] #

unitRecStmtTc :: RecStmtTc #

data DerivStrategy pass #

Constructors

StockStrategy (XStockStrategy pass) |
AnyclassStrategy (XAnyClassStrategy pass) |
NewtypeStrategy (XNewtypeStrategy pass) |
ViaStrategy (XViaStrategy pass) |

#### Instances

Instances details

ToHie (RScoped (LocatedAn NoEpAnns (DerivStrategy GhcRn))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: RScoped (LocatedAn NoEpAnns (DerivStrategy GhcRn)) -> HieM [HieAST Type]
type Anno (DerivStrategy (GhcPass p)) |
Instance details Defined in GHC.Hs.Decls type Anno (DerivStrategy (GhcPass p)) = SrcAnn NoEpAnns

data InjectivityAnn pass #

Constructors

InjectivityAnn (XCInjectivityAnn pass) (LIdP pass) [LIdP pass] |
XInjectivityAnn !(XXInjectivityAnn pass) |

#### Instances

Instances details

ToHie (LocatedAn NoEpAnns (InjectivityAnn GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedAn NoEpAnns (InjectivityAnn GhcRn) -> HieM [HieAST Type]
type Anno (InjectivityAnn (GhcPass p)) |
Instance details Defined in GHC.Hs.Decls type Anno (InjectivityAnn (GhcPass p)) = SrcAnn NoEpAnns

data RuleBndr pass #

Constructors

RuleBndr (XCRuleBndr pass) (LIdP pass) |
RuleBndrSig (XRuleBndrSig pass) (LIdP pass) (HsPatSigType pass) |
XRuleBndr !(XXRuleBndr pass) |

#### Instances

Instances details

ToHie (RScoped (LocatedAn NoEpAnns (RuleBndr GhcRn))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: RScoped (LocatedAn NoEpAnns (RuleBndr GhcRn)) -> HieM [HieAST Type]
type Anno (RuleBndr (GhcPass p)) |
Instance details Defined in GHC.Hs.Decls type Anno (RuleBndr (GhcPass p)) = SrcAnn NoEpAnns

type BangType pass = HsType pass #

type Stmt id body = StmtLR id id body #

data Match p body #

Constructors

Match |
Fields m_ext :: XCMatch p body m_ctxt :: HsMatchContext p m_pats :: [LPat p] m_grhss :: GRHSs p body
XMatch !(XXMatch p body) |

#### Instances

Instances details

(HiePass p, Data (body (GhcPass p)), AnnoBody p body, ToHie (LocatedA (body (GhcPass p)))) => ToHie (LocatedA (Match (GhcPass p) (LocatedA (body (GhcPass p))))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (Match (GhcPass p) (LocatedA (body (GhcPass p)))) -> HieM [HieAST Type]
type Anno [LocatedA (Match (GhcPass p) (LocatedA (HsCmd (GhcPass p))))] |
Instance details Defined in GHC.Hs.Expr type Anno [LocatedA (Match (GhcPass p) (LocatedA (HsCmd (GhcPass p))))] = SrcSpanAnnL
type Anno [LocatedA (Match (GhcPass p) (LocatedA (HsExpr (GhcPass p))))] |
Instance details Defined in GHC.Hs.Expr type Anno [LocatedA (Match (GhcPass p) (LocatedA (HsExpr (GhcPass p))))] = SrcSpanAnnL
type Anno [LocatedA (Match GhcPs (LocatedA (PatBuilder GhcPs)))] |
Instance details Defined in GHC.Parser.PostProcess type Anno [LocatedA (Match GhcPs (LocatedA (PatBuilder GhcPs)))] = SrcSpanAnnL
type Anno (Match (GhcPass p) (LocatedA (HsCmd (GhcPass p)))) |
Instance details Defined in GHC.Hs.Expr type Anno (Match (GhcPass p) (LocatedA (HsCmd (GhcPass p)))) = SrcSpanAnnA
type Anno (Match (GhcPass p) (LocatedA (HsExpr (GhcPass p)))) |
Instance details Defined in GHC.Hs.Expr type Anno (Match (GhcPass p) (LocatedA (HsExpr (GhcPass p)))) = SrcSpanAnnA
type Anno (Match GhcPs (LocatedA (PatBuilder GhcPs))) |
Instance details Defined in GHC.Parser.PostProcess type Anno (Match GhcPs (LocatedA (PatBuilder GhcPs))) = SrcSpanAnnA

data Pat p #

Constructors

WildPat (XWildPat p) |
VarPat (XVarPat p) (LIdP p) |
LazyPat (XLazyPat p) (LPat p) |
AsPat (XAsPat p) (LIdP p) !(LHsToken "@" p) (LPat p) |
ParPat (XParPat p) !(LHsToken "(" p) (LPat p) !(LHsToken ")" p) |
BangPat (XBangPat p) (LPat p) |
ListPat (XListPat p) [LPat p] |
TuplePat (XTuplePat p) [LPat p] Boxity |
SumPat (XSumPat p) (LPat p) ConTag SumWidth |
ConPat |
Fields pat_con_ext :: XConPat p pat_con :: XRec p (ConLikeP p) pat_args :: HsConPatDetails p
ViewPat (XViewPat p) (LHsExpr p) (LPat p) |
SplicePat (XSplicePat p) (HsUntypedSplice p) |
LitPat (XLitPat p) (HsLit p) |
NPat (XNPat p) (XRec p (HsOverLit p)) (Maybe (SyntaxExpr p)) (SyntaxExpr p) |
NPlusKPat (XNPlusKPat p) (LIdP p) (XRec p (HsOverLit p)) (HsOverLit p) (SyntaxExpr p) (SyntaxExpr p) |
SigPat (XSigPat p) (LPat p) (HsPatSigType (NoGhcTc p)) |
XPat !(XXPat p) |

#### Instances

Instances details

NFData (Pat (GhcPass 'Renamed)) # |
Instance details Defined in Development.IDE.GHC.Orphans Methods rnf :: Pat (GhcPass 'Renamed) -> () #
HiePass p => HasType (LocatedA (Pat (GhcPass p))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods getTypeNode :: LocatedA (Pat (GhcPass p)) -> HieM [HieAST Type]
HiePass p => ToHie (PScoped (LocatedA (Pat (GhcPass p)))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: PScoped (LocatedA (Pat (GhcPass p))) -> HieM [HieAST Type]
type Anno (Pat (GhcPass p)) |
Instance details Defined in GHC.Hs.Pat type Anno (Pat (GhcPass p)) = SrcSpanAnnA

newtype ModuleName #

Constructors

ModuleName FastString |

#### Instances

Instances details

Data ModuleName |
Instance details Defined in Language.Haskell.Syntax.Module.Name Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> ModuleName -> c ModuleName gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c ModuleName toConstr :: ModuleName -> Constr dataTypeOf :: ModuleName -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c ModuleName) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c ModuleName) gmapT :: (forall b. Data b => b -> b) -> ModuleName -> ModuleName gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> ModuleName -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> ModuleName -> r gmapQ :: (forall d. Data d => d -> u) -> ModuleName -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> ModuleName -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> ModuleName -> m ModuleName gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> ModuleName -> m ModuleName gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> ModuleName -> m ModuleName
Show ModuleName |
Instance details Defined in Language.Haskell.Syntax.Module.Name Methods showsPrec :: Int -> ModuleName -> ShowS # show :: ModuleName -> String # showList :: [ModuleName] -> ShowS #
NFData ModuleName |
Instance details Defined in Language.Haskell.Syntax.Module.Name Methods rnf :: ModuleName -> () #
Uniquable ModuleName |
Instance details Defined in GHC.Types.Unique Methods getUnique :: ModuleName -> Unique #
Binary ModuleName |
Instance details Defined in GHC.Utils.Binary Methods put_ :: BinHandle -> ModuleName -> IO () put :: BinHandle -> ModuleName -> IO (Bin ModuleName) get :: BinHandle -> IO ModuleName
Outputable ModuleName |
Instance details Defined in GHC.Utils.Outputable Methods ppr :: ModuleName -> SDoc #
Eq ModuleName |
Instance details Defined in Language.Haskell.Syntax.Module.Name Methods (==) :: ModuleName -> ModuleName -> Bool # (/=) :: ModuleName -> ModuleName -> Bool #
Ord ModuleName |
Instance details Defined in Language.Haskell.Syntax.Module.Name Methods compare :: ModuleName -> ModuleName -> Ordering (<) :: ModuleName -> ModuleName -> Bool (<=) :: ModuleName -> ModuleName -> Bool (>) :: ModuleName -> ModuleName -> Bool (>=) :: ModuleName -> ModuleName -> Bool max :: ModuleName -> ModuleName -> ModuleName min :: ModuleName -> ModuleName -> ModuleName
Hashable ModuleName # |
Instance details Defined in Development.IDE.GHC.Orphans Methods hashWithSalt :: Int -> ModuleName -> Int # hash :: ModuleName -> Int #
ToHie (IEContext (LocatedA ModuleName)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: IEContext (LocatedA ModuleName) -> HieM [HieAST Type]
type Anno ModuleName |
Instance details Defined in GHC.Hs type Anno ModuleName = SrcSpanAnnA
type Anno ModuleName |
Instance details Defined in GHC.Hs.ImpExp type Anno ModuleName = SrcSpanAnnA

data IsBootInterface #

Constructors

NotBoot |
IsBoot |

#### Instances

Instances details

Data IsBootInterface |
Instance details Defined in Language.Haskell.Syntax.ImpExp Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> IsBootInterface -> c IsBootInterface gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c IsBootInterface toConstr :: IsBootInterface -> Constr dataTypeOf :: IsBootInterface -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c IsBootInterface) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c IsBootInterface) gmapT :: (forall b. Data b => b -> b) -> IsBootInterface -> IsBootInterface gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> IsBootInterface -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> IsBootInterface -> r gmapQ :: (forall d. Data d => d -> u) -> IsBootInterface -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> IsBootInterface -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> IsBootInterface -> m IsBootInterface gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> IsBootInterface -> m IsBootInterface gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> IsBootInterface -> m IsBootInterface
Show IsBootInterface |
Instance details Defined in Language.Haskell.Syntax.ImpExp Methods showsPrec :: Int -> IsBootInterface -> ShowS # show :: IsBootInterface -> String # showList :: [IsBootInterface] -> ShowS #
Eq IsBootInterface |
Instance details Defined in Language.Haskell.Syntax.ImpExp Methods (==) :: IsBootInterface -> IsBootInterface -> Bool # (/=) :: IsBootInterface -> IsBootInterface -> Bool #
Ord IsBootInterface |
Instance details Defined in Language.Haskell.Syntax.ImpExp Methods compare :: IsBootInterface -> IsBootInterface -> Ordering (<) :: IsBootInterface -> IsBootInterface -> Bool (<=) :: IsBootInterface -> IsBootInterface -> Bool (>) :: IsBootInterface -> IsBootInterface -> Bool (>=) :: IsBootInterface -> IsBootInterface -> Bool max :: IsBootInterface -> IsBootInterface -> IsBootInterface min :: IsBootInterface -> IsBootInterface -> IsBootInterface

data HsModule p #

Constructors

HsModule |
Fields hsmodExt :: XCModule p hsmodName :: Maybe (XRec p ModuleName) hsmodExports :: Maybe (XRec p [LIE p]) hsmodImports :: [LImportDecl p] hsmodDecls :: [LHsDecl p]
XModule !(XXModule p) |

#### Instances

Instances details

NFData (HsModule a) # |
Instance details Defined in Development.IDE.GHC.Orphans Methods rnf :: HsModule a -> () #

type family Anno a = (b :: Type) #

#### Instances

Instances details

type Anno ConLike |
Instance details Defined in GHC.Hs.Pat type Anno ConLike = SrcSpanAnnN
type Anno FastString |
Instance details Defined in GHC.Hs.Expr type Anno FastString = SrcAnn NoEpAnns
type Anno OverlapMode |
Instance details Defined in GHC.Hs.Decls type Anno OverlapMode = SrcSpanAnnP
type Anno OverlapMode |
Instance details Defined in GHC.Hs.Decls type Anno OverlapMode = SrcSpanAnnP
type Anno CCallConv |
Instance details Defined in GHC.Hs.Decls type Anno CCallConv = SrcSpan
type Anno CExportSpec |
Instance details Defined in GHC.Hs.Decls type Anno CExportSpec = SrcSpan
type Anno CType |
Instance details Defined in GHC.Hs.Decls type Anno CType = SrcSpanAnnP
type Anno Safety |
Instance details Defined in GHC.Hs.Decls type Anno Safety = SrcSpan
type Anno Name |
Instance details Defined in GHC.Hs.Extension type Anno Name = SrcSpanAnnN
type Anno RdrName |
Instance details Defined in GHC.Hs.Extension type Anno RdrName = SrcSpanAnnN
type Anno StringLiteral |
Instance details Defined in GHC.Hs.Binds type Anno StringLiteral = SrcAnn NoEpAnns
type Anno Id |
Instance details Defined in GHC.Hs.Extension type Anno Id = SrcSpanAnnN
type Anno FieldLabelString |
Instance details Defined in GHC.Hs.Expr type Anno FieldLabelString = SrcSpanAnnN
type Anno ModuleName |
Instance details Defined in GHC.Hs type Anno ModuleName = SrcSpanAnnA
type Anno ModuleName |
Instance details Defined in GHC.Hs.ImpExp type Anno ModuleName = SrcSpanAnnA
type Anno RecFieldsDotDot |
Instance details Defined in GHC.Hs.Pat type Anno RecFieldsDotDot = SrcSpan
type Anno HsIPName |
Instance details Defined in GHC.Hs.Type type Anno HsIPName = SrcAnn NoEpAnns
type Anno Bool |
Instance details Defined in GHC.Hs.Decls type Anno Bool = SrcAnn NoEpAnns
type Anno (LocatedA (IE (GhcPass p))) |
Instance details Defined in GHC.Hs.ImpExp type Anno (LocatedA (IE (GhcPass p))) = SrcSpanAnnA
type Anno (LocatedN Name) |
Instance details Defined in GHC.Hs.Binds type Anno (LocatedN Name) = SrcSpan
type Anno (LocatedN RdrName) |
Instance details Defined in GHC.Hs.Binds type Anno (LocatedN RdrName) = SrcSpan
type Anno (LocatedN Id) |
Instance details Defined in GHC.Hs.Binds type Anno (LocatedN Id) = SrcSpan
type Anno (FixitySig (GhcPass p)) |
Instance details Defined in GHC.Hs.Binds type Anno (FixitySig (GhcPass p)) = SrcSpanAnnA
type Anno (IPBind (GhcPass p)) |
Instance details Defined in GHC.Hs.Binds type Anno (IPBind (GhcPass p)) = SrcSpanAnnA
type Anno (Sig (GhcPass p)) |
Instance details Defined in GHC.Hs.Binds type Anno (Sig (GhcPass p)) = SrcSpanAnnA
type Anno (HsToken tok) |
Instance details Defined in GHC.Hs.Extension type Anno (HsToken tok) = TokenLocation
type Anno (AnnDecl (GhcPass p)) |
Instance details Defined in GHC.Hs.Decls type Anno (AnnDecl (GhcPass p)) = SrcSpanAnnA
type Anno (ClsInstDecl (GhcPass p)) |
Instance details Defined in GHC.Hs.Decls type Anno (ClsInstDecl (GhcPass p)) = SrcSpanAnnA
type Anno (ConDecl (GhcPass p)) |
Instance details Defined in GHC.Hs.Decls type Anno (ConDecl (GhcPass p)) = SrcSpanAnnA
type Anno (DataFamInstDecl (GhcPass p)) |
Instance details Defined in GHC.Hs.Decls type Anno (DataFamInstDecl (GhcPass p)) = SrcSpanAnnA
type Anno (DefaultDecl (GhcPass p)) |
Instance details Defined in GHC.Hs.Decls type Anno (DefaultDecl (GhcPass p)) = SrcSpanAnnA
type Anno (DerivClauseTys (GhcPass _1)) |
Instance details Defined in GHC.Hs.Decls type Anno (DerivClauseTys (GhcPass _1)) = SrcSpanAnnC
type Anno (DerivDecl (GhcPass p)) |
Instance details Defined in GHC.Hs.Decls type Anno (DerivDecl (GhcPass p)) = SrcSpanAnnA
type Anno (DerivStrategy (GhcPass p)) |
Instance details Defined in GHC.Hs.Decls type Anno (DerivStrategy (GhcPass p)) = SrcAnn NoEpAnns
type Anno (DocDecl (GhcPass p)) |
Instance details Defined in GHC.Hs.Decls type Anno (DocDecl (GhcPass p)) = SrcSpanAnnA
type Anno (FamilyDecl (GhcPass p)) |
Instance details Defined in GHC.Hs.Decls type Anno (FamilyDecl (GhcPass p)) = SrcSpanAnnA
type Anno (FamilyResultSig (GhcPass p)) |
Instance details Defined in GHC.Hs.Decls type Anno (FamilyResultSig (GhcPass p)) = SrcAnn NoEpAnns
type Anno (ForeignDecl (GhcPass p)) |
Instance details Defined in GHC.Hs.Decls type Anno (ForeignDecl (GhcPass p)) = SrcSpanAnnA
type Anno (FunDep (GhcPass p)) |
Instance details Defined in GHC.Hs.Decls type Anno (FunDep (GhcPass p)) = SrcSpanAnnA
type Anno (HsDecl (GhcPass _1)) |
Instance details Defined in GHC.Hs.Decls type Anno (HsDecl (GhcPass _1)) = SrcSpanAnnA
type Anno (HsDerivingClause (GhcPass p)) |
Instance details Defined in GHC.Hs.Decls type Anno (HsDerivingClause (GhcPass p)) = SrcAnn NoEpAnns
type Anno (InjectivityAnn (GhcPass p)) |
Instance details Defined in GHC.Hs.Decls type Anno (InjectivityAnn (GhcPass p)) = SrcAnn NoEpAnns
type Anno (InstDecl (GhcPass p)) |
Instance details Defined in GHC.Hs.Decls type Anno (InstDecl (GhcPass p)) = SrcSpanAnnA
type Anno (RoleAnnotDecl (GhcPass p)) |
Instance details Defined in GHC.Hs.Decls type Anno (RoleAnnotDecl (GhcPass p)) = SrcSpanAnnA
type Anno (RuleBndr (GhcPass p)) |
Instance details Defined in GHC.Hs.Decls type Anno (RuleBndr (GhcPass p)) = SrcAnn NoEpAnns
type Anno (RuleDecl (GhcPass p)) |
Instance details Defined in GHC.Hs.Decls type Anno (RuleDecl (GhcPass p)) = SrcSpanAnnA
type Anno (RuleDecls (GhcPass p)) |
Instance details Defined in GHC.Hs.Decls type Anno (RuleDecls (GhcPass p)) = SrcSpanAnnA
type Anno (SpliceDecl (GhcPass p)) |
Instance details Defined in GHC.Hs.Decls type Anno (SpliceDecl (GhcPass p)) = SrcSpanAnnA
type Anno (StandaloneKindSig (GhcPass p)) |
Instance details Defined in GHC.Hs.Decls type Anno (StandaloneKindSig (GhcPass p)) = SrcSpanAnnA
type Anno (TyClDecl (GhcPass p)) |
Instance details Defined in GHC.Hs.Decls type Anno (TyClDecl (GhcPass p)) = SrcSpanAnnA
type Anno (TyFamInstDecl (GhcPass p)) |
Instance details Defined in GHC.Hs.Decls type Anno (TyFamInstDecl (GhcPass p)) = SrcSpanAnnA
type Anno (WarnDecl (GhcPass p)) |
Instance details Defined in GHC.Hs.Decls type Anno (WarnDecl (GhcPass p)) = SrcSpanAnnA
type Anno (WarnDecls (GhcPass p)) |
Instance details Defined in GHC.Hs.Decls type Anno (WarnDecls (GhcPass p)) = SrcSpanAnnA
type Anno (DotFieldOcc (GhcPass p)) |
Instance details Defined in GHC.Hs.Expr type Anno (DotFieldOcc (GhcPass p)) = SrcAnn NoEpAnns
type Anno (FieldLabelStrings (GhcPass p)) |
Instance details Defined in GHC.Hs.Expr type Anno (FieldLabelStrings (GhcPass p)) = SrcAnn NoEpAnns
type Anno (HsCmd (GhcPass p)) |
Instance details Defined in GHC.Hs.Expr type Anno (HsCmd (GhcPass p)) = SrcSpanAnnA
type Anno (HsCmdTop (GhcPass p)) |
Instance details Defined in GHC.Hs.Expr type Anno (HsCmdTop (GhcPass p)) = SrcAnn NoEpAnns
type Anno (HsExpr (GhcPass p)) |
Instance details Defined in GHC.Hs.Expr type Anno (HsExpr (GhcPass p)) = SrcSpanAnnA
type Anno (HsUntypedSplice (GhcPass p)) |
Instance details Defined in GHC.Hs.Expr type Anno (HsUntypedSplice (GhcPass p)) = SrcSpanAnnA
type Anno (IE (GhcPass p)) |
Instance details Defined in GHC.Hs.ImpExp type Anno (IE (GhcPass p)) = SrcSpanAnnA
type Anno (IEWrappedName (GhcPass _1)) |
Instance details Defined in GHC.Hs.ImpExp type Anno (IEWrappedName (GhcPass _1)) = SrcSpanAnnA
type Anno (ImportDecl (GhcPass p)) |
Instance details Defined in GHC.Hs.ImpExp type Anno (ImportDecl (GhcPass p)) = SrcSpanAnnA
type Anno (HsOverLit (GhcPass p)) |
Instance details Defined in GHC.Hs.Pat type Anno (HsOverLit (GhcPass p)) = SrcAnn NoEpAnns
type Anno (Pat (GhcPass p)) |
Instance details Defined in GHC.Hs.Pat type Anno (Pat (GhcPass p)) = SrcSpanAnnA
type Anno (AmbiguousFieldOcc (GhcPass p)) |
Instance details Defined in GHC.Hs.Type type Anno (AmbiguousFieldOcc (GhcPass p)) = SrcAnn NoEpAnns
type Anno (BangType (GhcPass p)) |
Instance details Defined in GHC.Hs.Type type Anno (BangType (GhcPass p)) = SrcSpanAnnA
type Anno (ConDeclField (GhcPass p)) |
Instance details Defined in GHC.Hs.Type type Anno (ConDeclField (GhcPass p)) = SrcSpanAnnA
type Anno (FieldOcc (GhcPass p)) |
Instance details Defined in GHC.Hs.Type type Anno (FieldOcc (GhcPass p)) = SrcAnn NoEpAnns
type Anno (HsKind (GhcPass p)) |
Instance details Defined in GHC.Hs.Type type Anno (HsKind (GhcPass p)) = SrcSpanAnnA
type Anno (HsSigType (GhcPass p)) |
Instance details Defined in GHC.Hs.Type type Anno (HsSigType (GhcPass p)) = SrcSpanAnnA
type Anno (HsType (GhcPass p)) |
Instance details Defined in GHC.Hs.Type type Anno (HsType (GhcPass p)) = SrcSpanAnnA
type Anno (Maybe Role) |
Instance details Defined in GHC.Hs.Decls type Anno (Maybe Role) = SrcAnn NoEpAnns
type Anno (Maybe Role) |
Instance details Defined in GHC.Hs.Decls type Anno (Maybe Role) = SrcAnn NoEpAnns
type Anno [LocatedA (Match (GhcPass p) (LocatedA (HsCmd (GhcPass p))))] |
Instance details Defined in GHC.Hs.Expr type Anno [LocatedA (Match (GhcPass p) (LocatedA (HsCmd (GhcPass p))))] = SrcSpanAnnL
type Anno [LocatedA (Match (GhcPass p) (LocatedA (HsExpr (GhcPass p))))] |
Instance details Defined in GHC.Hs.Expr type Anno [LocatedA (Match (GhcPass p) (LocatedA (HsExpr (GhcPass p))))] = SrcSpanAnnL
type Anno [LocatedA (Match GhcPs (LocatedA (PatBuilder GhcPs)))] |
Instance details Defined in GHC.Parser.PostProcess type Anno [LocatedA (Match GhcPs (LocatedA (PatBuilder GhcPs)))] = SrcSpanAnnL
type Anno [LocatedA (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (HsCmd (GhcPass pr))))] |
Instance details Defined in GHC.Hs.Expr type Anno [LocatedA (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (HsCmd (GhcPass pr))))] = SrcSpanAnnL
type Anno [LocatedA (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (HsCmd (GhcPass pr))))] |
Instance details Defined in GHC.Hs.Expr type Anno [LocatedA (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (HsCmd (GhcPass pr))))] = SrcSpanAnnL
type Anno [LocatedA (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (HsCmd (GhcPass pr))))] |
Instance details Defined in GHC.Hs.Expr type Anno [LocatedA (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (HsCmd (GhcPass pr))))] = SrcSpanAnnL
type Anno [LocatedA (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (HsExpr (GhcPass pr))))] |
Instance details Defined in GHC.Hs.Expr type Anno [LocatedA (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (HsExpr (GhcPass pr))))] = SrcSpanAnnL
type Anno [LocatedA (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (body (GhcPass pr))))] |
Instance details Defined in GHC.Hs.Expr type Anno [LocatedA (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (body (GhcPass pr))))] = SrcSpanAnnL
type Anno [LocatedA (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (body (GhcPass pr))))] |
Instance details Defined in GHC.Hs.Expr type Anno [LocatedA (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (body (GhcPass pr))))] = SrcSpanAnnL
type Anno [LocatedA (StmtLR GhcPs GhcPs (LocatedA (PatBuilder GhcPs)))] |
Instance details Defined in GHC.Parser.Types type Anno [LocatedA (StmtLR GhcPs GhcPs (LocatedA (PatBuilder GhcPs)))] = SrcSpanAnnL
type Anno [LocatedA (IE (GhcPass p))] |
Instance details Defined in GHC.Hs.ImpExp type Anno [LocatedA (IE (GhcPass p))] = SrcSpanAnnL
type Anno [LocatedA (ConDeclField (GhcPass _1))] |
Instance details Defined in GHC.Hs.Decls type Anno [LocatedA (ConDeclField (GhcPass _1))] = SrcSpanAnnL
type Anno [LocatedA (HsType (GhcPass p))] |
Instance details Defined in GHC.Hs.Type type Anno [LocatedA (HsType (GhcPass p))] = SrcSpanAnnC
type Anno [LocatedN Name] |
Instance details Defined in GHC.Hs.Binds type Anno [LocatedN Name] = SrcSpan
type Anno [LocatedN RdrName] |
Instance details Defined in GHC.Hs.Binds type Anno [LocatedN RdrName] = SrcSpan
type Anno [LocatedN Id] |
Instance details Defined in GHC.Hs.Binds type Anno [LocatedN Id] = SrcSpan
type Anno (HsBindLR (GhcPass idL) (GhcPass idR)) |
Instance details Defined in GHC.Hs.Binds type Anno (HsBindLR (GhcPass idL) (GhcPass idR)) = SrcSpanAnnA
type Anno (HsUniToken tok utok) |
Instance details Defined in GHC.Hs.Extension type Anno (HsUniToken tok utok) = TokenLocation
type Anno (FamEqn (GhcPass p) _1) |
Instance details Defined in GHC.Hs.Decls type Anno (FamEqn (GhcPass p) _1) = SrcSpanAnnA
type Anno (FamEqn (GhcPass p) _1) |
Instance details Defined in GHC.Hs.Decls type Anno (FamEqn (GhcPass p) _1) = SrcSpanAnnA
type Anno (FamEqn p (LocatedA (HsType p))) |
Instance details Defined in GHC.Hs.Decls type Anno (FamEqn p (LocatedA (HsType p))) = SrcSpanAnnA
type Anno (GRHS (GhcPass p) (LocatedA (HsCmd (GhcPass p)))) |
Instance details Defined in GHC.Hs.Expr type Anno (GRHS (GhcPass p) (LocatedA (HsCmd (GhcPass p)))) = SrcAnn NoEpAnns
type Anno (GRHS (GhcPass p) (LocatedA (HsExpr (GhcPass p)))) |
Instance details Defined in GHC.Hs.Expr type Anno (GRHS (GhcPass p) (LocatedA (HsExpr (GhcPass p)))) = SrcAnn NoEpAnns
type Anno (GRHS GhcPs (LocatedA (PatBuilder GhcPs))) |
Instance details Defined in GHC.Parser.PostProcess type Anno (GRHS GhcPs (LocatedA (PatBuilder GhcPs))) = SrcAnn NoEpAnns
type Anno (Match (GhcPass p) (LocatedA (HsCmd (GhcPass p)))) |
Instance details Defined in GHC.Hs.Expr type Anno (Match (GhcPass p) (LocatedA (HsCmd (GhcPass p)))) = SrcSpanAnnA
type Anno (Match (GhcPass p) (LocatedA (HsExpr (GhcPass p)))) |
Instance details Defined in GHC.Hs.Expr type Anno (Match (GhcPass p) (LocatedA (HsExpr (GhcPass p)))) = SrcSpanAnnA
type Anno (Match GhcPs (LocatedA (PatBuilder GhcPs))) |
Instance details Defined in GHC.Parser.PostProcess type Anno (Match GhcPs (LocatedA (PatBuilder GhcPs))) = SrcSpanAnnA
type Anno (HsFieldBind lhs rhs) |
Instance details Defined in GHC.Hs.Pat type Anno (HsFieldBind lhs rhs) = SrcSpanAnnA
type Anno (HsOuterTyVarBndrs _1 (GhcPass _2)) |
Instance details Defined in GHC.Hs.Type type Anno (HsOuterTyVarBndrs _1 (GhcPass _2)) = SrcSpanAnnA
type Anno (HsTyVarBndr _flag (GhcPass _1)) |
Instance details Defined in GHC.Hs.Type type Anno (HsTyVarBndr _flag (GhcPass _1)) = SrcSpanAnnA
type Anno (HsTyVarBndr _flag GhcPs) |
Instance details Defined in GHC.Hs.Type type Anno (HsTyVarBndr _flag GhcPs) = SrcSpanAnnA
type Anno (HsTyVarBndr _flag GhcRn) |
Instance details Defined in GHC.Hs.Type type Anno (HsTyVarBndr _flag GhcRn) = SrcSpanAnnA
type Anno (HsTyVarBndr _flag GhcTc) |
Instance details Defined in GHC.Hs.Type type Anno (HsTyVarBndr _flag GhcTc) = SrcSpanAnnA
type Anno (SourceText, RuleName) |
Instance details Defined in GHC.Hs.Decls type Anno (SourceText, RuleName) = SrcAnn NoEpAnns
type Anno (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (body (GhcPass pr)))) |
Instance details Defined in GHC.Hs.Expr type Anno (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (body (GhcPass pr)))) = SrcSpanAnnA
type Anno (StmtLR GhcPs GhcPs (LocatedA (PatBuilder GhcPs))) |
Instance details Defined in GHC.Parser.PostProcess type Anno (StmtLR GhcPs GhcPs (LocatedA (PatBuilder GhcPs))) = SrcSpanAnnA
type Anno (StmtLR GhcRn GhcRn (LocatedA (body GhcRn))) |
Instance details Defined in GHC.Hs.Expr type Anno (StmtLR GhcRn GhcRn (LocatedA (body GhcRn))) = SrcSpanAnnA

data FamilyResultSig pass #

Constructors

NoSig (XNoSig pass) |
KindSig (XCKindSig pass) (LHsKind pass) |
TyVarSig (XTyVarSig pass) (LHsTyVarBndr () pass) |
XFamilyResultSig !(XXFamilyResultSig pass) |

#### Instances

Instances details

ToHie (RScoped (LocatedAn NoEpAnns (FamilyResultSig GhcRn))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: RScoped (LocatedAn NoEpAnns (FamilyResultSig GhcRn)) -> HieM [HieAST Type]
type Anno (FamilyResultSig (GhcPass p)) |
Instance details Defined in GHC.Hs.Decls type Anno (FamilyResultSig (GhcPass p)) = SrcAnn NoEpAnns

type family ConLikeP x #

#### Instances

Instances details

type ConLikeP GhcPs |
Instance details Defined in GHC.Hs.Pat type ConLikeP GhcPs = RdrName
type ConLikeP GhcRn |
Instance details Defined in GHC.Hs.Pat type ConLikeP GhcRn = Name
type ConLikeP GhcTc |
Instance details Defined in GHC.Hs.Pat type ConLikeP GhcTc = ConLike

type HsConPatDetails p = HsConDetails (HsConPatTyArg (NoGhcTc p)) (LPat p) (HsRecFields p (LPat p)) #

type family XRec p a = (r :: Type) | r -> a #

#### Instances

Instances details

type XRec (GhcPass p) a |
Instance details Defined in GHC.Hs.Extension type XRec (GhcPass p) a = GenLocated (Anno a) a

data HsBindLR idL idR #

Constructors

FunBind |
Fields fun_ext :: XFunBind idL idR fun_id :: LIdP idL fun_matches :: MatchGroup idR (LHsExpr idR)
PatBind |
Fields pat_ext :: XPatBind idL idR pat_lhs :: LPat idL pat_rhs :: GRHSs idR (LHsExpr idR)
VarBind |
Fields var_ext :: XVarBind idL idR var_id :: IdP idL var_rhs :: LHsExpr idR
PatSynBind (XPatSynBind idL idR) (PatSynBind idL idR) |
XHsBindsLR !(XXHsBindsLR idL idR) |

#### Instances

Instances details

HiePass p => HasType (LocatedA (HsBind (GhcPass p))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods getTypeNode :: LocatedA (HsBind (GhcPass p)) -> HieM [HieAST Type]
HiePass p => ToHie (BindContext (LocatedA (HsBind (GhcPass p)))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: BindContext (LocatedA (HsBind (GhcPass p))) -> HieM [HieAST Type]
type Anno (HsBindLR (GhcPass idL) (GhcPass idR)) |
Instance details Defined in GHC.Hs.Binds type Anno (HsBindLR (GhcPass idL) (GhcPass idR)) = SrcSpanAnnA

type family IdP p #

#### Instances

Instances details

type IdP (GhcPass p) |
Instance details Defined in GHC.Hs.Extension type IdP (GhcPass p) = IdGhcP p

data HsSrcBang #

Constructors

HsSrcBang SourceText SrcUnpackedness SrcStrictness |

#### Instances

Instances details

Data HsSrcBang |
Instance details Defined in GHC.Core.DataCon Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> HsSrcBang -> c HsSrcBang gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c HsSrcBang toConstr :: HsSrcBang -> Constr dataTypeOf :: HsSrcBang -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c HsSrcBang) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c HsSrcBang) gmapT :: (forall b. Data b => b -> b) -> HsSrcBang -> HsSrcBang gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> HsSrcBang -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> HsSrcBang -> r gmapQ :: (forall d. Data d => d -> u) -> HsSrcBang -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> HsSrcBang -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> HsSrcBang -> m HsSrcBang gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> HsSrcBang -> m HsSrcBang gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> HsSrcBang -> m HsSrcBang
Outputable HsSrcBang |
Instance details Defined in GHC.Core.DataCon Methods ppr :: HsSrcBang -> SDoc #

data FixitySig pass #

Constructors

FixitySig (XFixitySig pass) [LIdP pass] Fixity |
XFixitySig !(XXFixitySig pass) |

#### Instances

Instances details

ToHie (LocatedA (FixitySig GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (FixitySig GhcRn) -> HieM [HieAST Type]
type Anno (FixitySig (GhcPass p)) |
Instance details Defined in GHC.Hs.Binds type Anno (FixitySig (GhcPass p)) = SrcSpanAnnA

type HsBind id = HsBindLR id id #

data HsIPBinds id #

Constructors

IPBinds (XIPBinds id) [LIPBind id] |
XHsIPBinds !(XXHsIPBinds id) |

type HsLocalBinds id = HsLocalBindsLR id id #

data HsLocalBindsLR idL idR #

Constructors

HsValBinds (XHsValBinds idL idR) (HsValBindsLR idL idR) |
HsIPBinds (XHsIPBinds idL idR) (HsIPBinds idR) |
EmptyLocalBinds (XEmptyLocalBinds idL idR) |
XHsLocalBindsLR !(XXHsLocalBindsLR idL idR) |

#### Instances

Instances details

HiePass p => ToHie (RScoped (HsLocalBinds (GhcPass p))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: RScoped (HsLocalBinds (GhcPass p)) -> HieM [HieAST Type]

type HsPatSynDetails pass = HsConDetails Void (LIdP pass) [RecordPatSynField pass] #

data HsPatSynDir id #

Constructors

Unidirectional |
ImplicitBidirectional |
ExplicitBidirectional (MatchGroup id (LHsExpr id)) |

#### Instances

Instances details

HiePass p => ToHie (HsPatSynDir (GhcPass p)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: HsPatSynDir (GhcPass p) -> HieM [HieAST Type]

type HsValBinds id = HsValBindsLR id id #

data HsValBindsLR idL idR #

Constructors

ValBinds (XValBinds idL idR) (LHsBindsLR idL idR) [LSig idR] |
XValBindsLR !(XXValBindsLR idL idR) |

#### Instances

Instances details

HiePass p => ToHie (RScoped (HsValBindsLR (GhcPass p) (GhcPass p))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: RScoped (HsValBindsLR (GhcPass p) (GhcPass p)) -> HieM [HieAST Type]

data IPBind id #

Constructors

IPBind (XCIPBind id) (XRec id HsIPName) (LHsExpr id) |
XIPBind !(XXIPBind id) |

#### Instances

Instances details

HiePass p => ToHie (RScoped (LocatedA (IPBind (GhcPass p)))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: RScoped (LocatedA (IPBind (GhcPass p))) -> HieM [HieAST Type]
type Anno (IPBind (GhcPass p)) |
Instance details Defined in GHC.Hs.Binds type Anno (IPBind (GhcPass p)) = SrcSpanAnnA

type LFixitySig pass = XRec pass (FixitySig pass) #

type LHsBind id = LHsBindLR id id #

type LHsBindLR idL idR = XRec idL (HsBindLR idL idR) #

type LHsBinds id = LHsBindsLR id id #

type LHsBindsLR idL idR = Bag (LHsBindLR idL idR) #

type LHsLocalBinds id = XRec id (HsLocalBinds id) #

type LHsLocalBindsLR idL idR = XRec idL (HsLocalBindsLR idL idR) #

type LIPBind id = XRec id (IPBind id) #

type LSig pass = XRec pass (Sig pass) #

data PatSynBind idL idR #

Constructors

PSB |
Fields psb_ext :: XPSB idL idR psb_id :: LIdP idL psb_args :: HsPatSynDetails idR psb_def :: LPat idR psb_dir :: HsPatSynDir idR
XPatSynBind !(XXPatSynBind idL idR) |

#### Instances

Instances details

HiePass p => ToHie (Located (PatSynBind (GhcPass p) (GhcPass p))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: Located (PatSynBind (GhcPass p) (GhcPass p)) -> HieM [HieAST Type]

data RecordPatSynField pass #

Constructors

RecordPatSynField |
Fields recordPatSynField :: FieldOcc pass recordPatSynPatVar :: LIdP pass

#### Instances

Instances details

HiePass p => ToHie (PatSynFieldContext (RecordPatSynField (GhcPass p))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: PatSynFieldContext (RecordPatSynField (GhcPass p)) -> HieM [HieAST Type]

data Sig pass #

Constructors

TypeSig (XTypeSig pass) [LIdP pass] (LHsSigWcType pass) |
PatSynSig (XPatSynSig pass) [LIdP pass] (LHsSigType pass) |
ClassOpSig (XClassOpSig pass) Bool [LIdP pass] (LHsSigType pass) |
FixSig (XFixSig pass) (FixitySig pass) |
InlineSig (XInlineSig pass) (LIdP pass) InlinePragma |
SpecSig (XSpecSig pass) (LIdP pass) [LHsSigType pass] InlinePragma |
SpecInstSig (XSpecInstSig pass) (LHsSigType pass) |
MinimalSig (XMinimalSig pass) (LBooleanFormula (LIdP pass)) |
SCCFunSig (XSCCFunSig pass) (LIdP pass) (Maybe (XRec pass StringLiteral)) |
CompleteMatchSig (XCompleteMatchSig pass) (XRec pass [LIdP pass]) (Maybe (LIdP pass)) |
XSig !(XXSig pass) |

#### Instances

Instances details

HiePass p => ToHie (SigContext (LocatedA (Sig (GhcPass p)))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: SigContext (LocatedA (Sig (GhcPass p))) -> HieM [HieAST Type]
type Anno (Sig (GhcPass p)) |
Instance details Defined in GHC.Hs.Binds type Anno (Sig (GhcPass p)) = SrcSpanAnnA

type family XFixitySig x #

#### Instances

Instances details

type XFixitySig (GhcPass p) |
Instance details Defined in GHC.Hs.Binds type XFixitySig (GhcPass p) = NoExtField

type family XHsIPBinds x x' #

#### Instances

Instances details

type XHsIPBinds (GhcPass pL) (GhcPass pR) |
Instance details Defined in GHC.Hs.Binds type XHsIPBinds (GhcPass pL) (GhcPass pR) = EpAnn AnnList

type family XPatSynBind x x' #

#### Instances

Instances details

type XPatSynBind (GhcPass pL) (GhcPass pR) |
Instance details Defined in GHC.Hs.Binds type XPatSynBind (GhcPass pL) (GhcPass pR) = NoExtField

data HsToken (tok :: Symbol) #

Constructors

HsTok |

#### Instances

Instances details

KnownSymbol tok => Data (HsToken tok) |
Instance details Defined in Language.Haskell.Syntax.Concrete Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> HsToken tok -> c (HsToken tok) gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (HsToken tok) toConstr :: HsToken tok -> Constr dataTypeOf :: HsToken tok -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (HsToken tok)) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (HsToken tok)) gmapT :: (forall b. Data b => b -> b) -> HsToken tok -> HsToken tok gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> HsToken tok -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> HsToken tok -> r gmapQ :: (forall d. Data d => d -> u) -> HsToken tok -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> HsToken tok -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> HsToken tok -> m (HsToken tok) gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> HsToken tok -> m (HsToken tok) gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> HsToken tok -> m (HsToken tok)
type Anno (HsToken tok) |
Instance details Defined in GHC.Hs.Extension type Anno (HsToken tok) = TokenLocation

data HsUniToken (tok :: Symbol) (utok :: Symbol) #

Constructors

HsNormalTok |
HsUnicodeTok |

#### Instances

Instances details

(KnownSymbol tok, KnownSymbol utok) => Data (HsUniToken tok utok) |
Instance details Defined in Language.Haskell.Syntax.Concrete Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> HsUniToken tok utok -> c (HsUniToken tok utok) gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (HsUniToken tok utok) toConstr :: HsUniToken tok utok -> Constr dataTypeOf :: HsUniToken tok utok -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (HsUniToken tok utok)) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (HsUniToken tok utok)) gmapT :: (forall b. Data b => b -> b) -> HsUniToken tok utok -> HsUniToken tok utok gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> HsUniToken tok utok -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> HsUniToken tok utok -> r gmapQ :: (forall d. Data d => d -> u) -> HsUniToken tok utok -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> HsUniToken tok utok -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> HsUniToken tok utok -> m (HsUniToken tok utok) gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> HsUniToken tok utok -> m (HsUniToken tok utok) gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> HsUniToken tok utok -> m (HsUniToken tok utok)
type Anno (HsUniToken tok utok) |
Instance details Defined in GHC.Hs.Extension type Anno (HsUniToken tok utok) = TokenLocation

type LHsToken (tok :: Symbol) p = XRec p (HsToken tok) #

type LHsUniToken (tok :: Symbol) (utok :: Symbol) p = XRec p (HsUniToken tok utok) #

data LayoutInfo pass #

Constructors

ExplicitBraces !(LHsToken "{" pass) !(LHsToken "}" pass) |
VirtualBraces !Int |
NoLayoutInfo |

#### Instances

Instances details

Typeable p => Data (LayoutInfo (GhcPass p)) |
Instance details Defined in GHC.Hs.Extension Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> LayoutInfo (GhcPass p) -> c (LayoutInfo (GhcPass p)) gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (LayoutInfo (GhcPass p)) toConstr :: LayoutInfo (GhcPass p) -> Constr dataTypeOf :: LayoutInfo (GhcPass p) -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (LayoutInfo (GhcPass p))) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (LayoutInfo (GhcPass p))) gmapT :: (forall b. Data b => b -> b) -> LayoutInfo (GhcPass p) -> LayoutInfo (GhcPass p) gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> LayoutInfo (GhcPass p) -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> LayoutInfo (GhcPass p) -> r gmapQ :: (forall d. Data d => d -> u) -> LayoutInfo (GhcPass p) -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> LayoutInfo (GhcPass p) -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> LayoutInfo (GhcPass p) -> m (LayoutInfo (GhcPass p)) gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> LayoutInfo (GhcPass p) -> m (LayoutInfo (GhcPass p)) gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> LayoutInfo (GhcPass p) -> m (LayoutInfo (GhcPass p))

data AnnDecl pass #

Constructors

HsAnnotation (XHsAnnotation pass) (AnnProvenance pass) (XRec pass (HsExpr pass)) |
XAnnDecl !(XXAnnDecl pass) |

#### Instances

Instances details

ToHie (LocatedA (AnnDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (AnnDecl GhcRn) -> HieM [HieAST Type]
type Anno (AnnDecl (GhcPass p)) |
Instance details Defined in GHC.Hs.Decls type Anno (AnnDecl (GhcPass p)) = SrcSpanAnnA

data AnnProvenance pass #

Constructors

ValueAnnProvenance (LIdP pass) |
TypeAnnProvenance (LIdP pass) |
ModuleAnnProvenance |

#### Instances

Instances details

ToHie (AnnProvenance GhcRn) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: AnnProvenance GhcRn -> HieM [HieAST Type]

data CImportSpec #

Constructors

CLabel CLabelString |
CFunction CCallTarget |
CWrapper |

#### Instances

Instances details

Data CImportSpec |
Instance details Defined in Language.Haskell.Syntax.Decls Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> CImportSpec -> c CImportSpec gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c CImportSpec toConstr :: CImportSpec -> Constr dataTypeOf :: CImportSpec -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c CImportSpec) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c CImportSpec) gmapT :: (forall b. Data b => b -> b) -> CImportSpec -> CImportSpec gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> CImportSpec -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> CImportSpec -> r gmapQ :: (forall d. Data d => d -> u) -> CImportSpec -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> CImportSpec -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> CImportSpec -> m CImportSpec gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> CImportSpec -> m CImportSpec gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> CImportSpec -> m CImportSpec

data ClsInstDecl pass #

Constructors

ClsInstDecl |
Fields cid_ext :: XCClsInstDecl pass cid_poly_ty :: LHsSigType pass cid_binds :: LHsBinds pass cid_sigs :: [LSig pass] cid_tyfam_insts :: [LTyFamInstDecl pass] cid_datafam_insts :: [LDataFamInstDecl pass] cid_overlap_mode :: Maybe (XRec pass OverlapMode)
XClsInstDecl !(XXClsInstDecl pass) |

#### Instances

Instances details

ToHie (LocatedA (ClsInstDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (ClsInstDecl GhcRn) -> HieM [HieAST Type]
type Anno (ClsInstDecl (GhcPass p)) |
Instance details Defined in GHC.Hs.Decls type Anno (ClsInstDecl (GhcPass p)) = SrcSpanAnnA

data ConDecl pass #

Constructors

ConDeclGADT |
Fields con_g_ext :: XConDeclGADT pass con_names :: NonEmpty (LIdP pass) con_dcolon :: !(LHsUniToken "::" "\8759" pass) con_bndrs :: XRec pass (HsOuterSigTyVarBndrs pass) con_mb_cxt :: Maybe (LHsContext pass) con_g_args :: HsConDeclGADTDetails pass con_res_ty :: LHsType pass con_doc :: Maybe (LHsDoc pass)
ConDeclH98 |
Fields con_ext :: XConDeclH98 pass con_name :: LIdP pass con_forall :: Bool con_ex_tvs :: [LHsTyVarBndr Specificity pass] con_mb_cxt :: Maybe (LHsContext pass) con_args :: HsConDeclH98Details pass con_doc :: Maybe (LHsDoc pass)
XConDecl !(XXConDecl pass) |

#### Instances

Instances details

ToHie (LocatedA (ConDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (ConDecl GhcRn) -> HieM [HieAST Type]
type Anno (ConDecl (GhcPass p)) |
Instance details Defined in GHC.Hs.Decls type Anno (ConDecl (GhcPass p)) = SrcSpanAnnA

data DataDefnCons a #

Constructors

NewTypeCon a |
DataTypeCons Bool [a] |

#### Instances

Instances details

Foldable DataDefnCons |
Instance details Defined in Language.Haskell.Syntax.Decls Methods fold :: Monoid m => DataDefnCons m -> m foldMap :: Monoid m => (a -> m) -> DataDefnCons a -> m foldMap' :: Monoid m => (a -> m) -> DataDefnCons a -> m foldr :: (a -> b -> b) -> b -> DataDefnCons a -> b foldr' :: (a -> b -> b) -> b -> DataDefnCons a -> b foldl :: (b -> a -> b) -> b -> DataDefnCons a -> b foldl' :: (b -> a -> b) -> b -> DataDefnCons a -> b foldr1 :: (a -> a -> a) -> DataDefnCons a -> a foldl1 :: (a -> a -> a) -> DataDefnCons a -> a toList :: DataDefnCons a -> [a] null :: DataDefnCons a -> Bool length :: DataDefnCons a -> Int elem :: Eq a => a -> DataDefnCons a -> Bool maximum :: Ord a => DataDefnCons a -> a minimum :: Ord a => DataDefnCons a -> a sum :: Num a => DataDefnCons a -> a product :: Num a => DataDefnCons a -> a
Traversable DataDefnCons |
Instance details Defined in Language.Haskell.Syntax.Decls Methods traverse :: Applicative f => (a -> f b) -> DataDefnCons a -> f (DataDefnCons b) # sequenceA :: Applicative f => DataDefnCons (f a) -> f (DataDefnCons a) mapM :: Monad m => (a -> m b) -> DataDefnCons a -> m (DataDefnCons b) # sequence :: Monad m => DataDefnCons (m a) -> m (DataDefnCons a) #
Functor DataDefnCons |
Instance details Defined in Language.Haskell.Syntax.Decls Methods fmap :: (a -> b) -> DataDefnCons a -> DataDefnCons b # (<$) :: a -> DataDefnCons b -> DataDefnCons a #
Data a => Data (DataDefnCons a) |
Instance details Defined in Language.Haskell.Syntax.Decls Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> DataDefnCons a -> c (DataDefnCons a) gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (DataDefnCons a) toConstr :: DataDefnCons a -> Constr dataTypeOf :: DataDefnCons a -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (DataDefnCons a)) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (DataDefnCons a)) gmapT :: (forall b. Data b => b -> b) -> DataDefnCons a -> DataDefnCons a gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> DataDefnCons a -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> DataDefnCons a -> r gmapQ :: (forall d. Data d => d -> u) -> DataDefnCons a -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> DataDefnCons a -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> DataDefnCons a -> m (DataDefnCons a) gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> DataDefnCons a -> m (DataDefnCons a) gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> DataDefnCons a -> m (DataDefnCons a)
HasLoc a => HasLoc (DataDefnCons a) |
Instance details Defined in GHC.Iface.Ext.Ast Methods loc :: DataDefnCons a -> SrcSpan
ToHie a => ToHie (DataDefnCons a) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: DataDefnCons a -> HieM [HieAST Type]
Eq a => Eq (DataDefnCons a) |
Instance details Defined in Language.Haskell.Syntax.Decls Methods (==) :: DataDefnCons a -> DataDefnCons a -> Bool # (/=) :: DataDefnCons a -> DataDefnCons a -> Bool #

newtype DataFamInstDecl pass #

Constructors

DataFamInstDecl |
Fields dfid_eqn :: FamEqn pass (HsDataDefn pass)

#### Instances

Instances details

ToHie (LocatedA (DataFamInstDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (DataFamInstDecl GhcRn) -> HieM [HieAST Type]
type Anno (DataFamInstDecl (GhcPass p)) |
Instance details Defined in GHC.Hs.Decls type Anno (DataFamInstDecl (GhcPass p)) = SrcSpanAnnA

data DefaultDecl pass #

Constructors

DefaultDecl (XCDefaultDecl pass) [LHsType pass] |
XDefaultDecl !(XXDefaultDecl pass) |

#### Instances

Instances details

ToHie (LocatedA (DefaultDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (DefaultDecl GhcRn) -> HieM [HieAST Type]
type Anno (DefaultDecl (GhcPass p)) |
Instance details Defined in GHC.Hs.Decls type Anno (DefaultDecl (GhcPass p)) = SrcSpanAnnA

data DerivClauseTys pass #

Constructors

DctSingle (XDctSingle pass) (LHsSigType pass) |
DctMulti (XDctMulti pass) [LHsSigType pass] |
XDerivClauseTys !(XXDerivClauseTys pass) |

#### Instances

Instances details

ToHie (LocatedC (DerivClauseTys GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedC (DerivClauseTys GhcRn) -> HieM [HieAST Type]
type Anno (DerivClauseTys (GhcPass _1)) |
Instance details Defined in GHC.Hs.Decls type Anno (DerivClauseTys (GhcPass _1)) = SrcSpanAnnC

data DerivDecl pass #

Constructors

DerivDecl |
Fields deriv_ext :: XCDerivDecl pass deriv_type :: LHsSigWcType pass deriv_strategy :: Maybe (LDerivStrategy pass) deriv_overlap_mode :: Maybe (XRec pass OverlapMode)
XDerivDecl !(XXDerivDecl pass) |

#### Instances

Instances details

ToHie (LocatedA (DerivDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (DerivDecl GhcRn) -> HieM [HieAST Type]
type Anno (DerivDecl (GhcPass p)) |
Instance details Defined in GHC.Hs.Decls type Anno (DerivDecl (GhcPass p)) = SrcSpanAnnA

data DocDecl pass #

Constructors

DocCommentNext (LHsDoc pass) |
DocCommentPrev (LHsDoc pass) |
DocCommentNamed String (LHsDoc pass) |
DocGroup Int (LHsDoc pass) |

#### Instances

Instances details

(Data pass, Data (IdP pass)) => Data (DocDecl pass) |
Instance details Defined in Language.Haskell.Syntax.Decls Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> DocDecl pass -> c (DocDecl pass) gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (DocDecl pass) toConstr :: DocDecl pass -> Constr dataTypeOf :: DocDecl pass -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (DocDecl pass)) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (DocDecl pass)) gmapT :: (forall b. Data b => b -> b) -> DocDecl pass -> DocDecl pass gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> DocDecl pass -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> DocDecl pass -> r gmapQ :: (forall d. Data d => d -> u) -> DocDecl pass -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> DocDecl pass -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> DocDecl pass -> m (DocDecl pass) gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> DocDecl pass -> m (DocDecl pass) gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> DocDecl pass -> m (DocDecl pass)
ToHie (LocatedA (DocDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (DocDecl GhcRn) -> HieM [HieAST Type]
type Anno (DocDecl (GhcPass p)) |
Instance details Defined in GHC.Hs.Decls type Anno (DocDecl (GhcPass p)) = SrcSpanAnnA

data FamEqn pass rhs #

Constructors

FamEqn |
Fields feqn_ext :: XCFamEqn pass rhs feqn_tycon :: LIdP pass feqn_bndrs :: HsOuterFamEqnTyVarBndrs pass feqn_pats :: HsTyPats pass feqn_fixity :: LexicalFixity feqn_rhs :: rhs
XFamEqn !(XXFamEqn pass rhs) |

#### Instances

Instances details

ToHie (TScoped (FamEqn GhcRn (LocatedA (HsType GhcRn)))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: TScoped (FamEqn GhcRn (LocatedA (HsType GhcRn))) -> HieM [HieAST Type]
ToHie (TScoped (FamEqn GhcRn (HsDataDefn GhcRn))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: TScoped (FamEqn GhcRn (HsDataDefn GhcRn)) -> HieM [HieAST Type]
(HasLoc a, HiePass p) => HasLoc (FamEqn (GhcPass p) a) |
Instance details Defined in GHC.Iface.Ext.Ast Methods loc :: FamEqn (GhcPass p) a -> SrcSpan
(ToHie rhs, HasLoc rhs) => ToHie (FamEqn GhcRn rhs) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: FamEqn GhcRn rhs -> HieM [HieAST Type]
type Anno (FamEqn (GhcPass p) _1) |
Instance details Defined in GHC.Hs.Decls type Anno (FamEqn (GhcPass p) _1) = SrcSpanAnnA
type Anno (FamEqn (GhcPass p) _1) |
Instance details Defined in GHC.Hs.Decls type Anno (FamEqn (GhcPass p) _1) = SrcSpanAnnA
type Anno (FamEqn p (LocatedA (HsType p))) |
Instance details Defined in GHC.Hs.Decls type Anno (FamEqn p (LocatedA (HsType p))) = SrcSpanAnnA

data FamilyDecl pass #

Constructors

FamilyDecl |
Fields fdExt :: XCFamilyDecl pass fdInfo :: FamilyInfo pass fdTopLevel :: TopLevelFlag fdLName :: LIdP pass fdTyVars :: LHsQTyVars pass fdFixity :: LexicalFixity fdResultSig :: LFamilyResultSig pass fdInjectivityAnn :: Maybe (LInjectivityAnn pass)
XFamilyDecl !(XXFamilyDecl pass) |

#### Instances

Instances details

ToHie (LocatedA (FamilyDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (FamilyDecl GhcRn) -> HieM [HieAST Type]
type Anno (FamilyDecl (GhcPass p)) |
Instance details Defined in GHC.Hs.Decls type Anno (FamilyDecl (GhcPass p)) = SrcSpanAnnA

data FamilyInfo pass #

Constructors

DataFamily |
OpenTypeFamily |
ClosedTypeFamily (Maybe [LTyFamInstEqn pass]) |

#### Instances

Instances details

ToHie (FamilyInfo GhcRn) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: FamilyInfo GhcRn -> HieM [HieAST Type]

data ForeignDecl pass #

Constructors

ForeignImport |
Fields fd_i_ext :: XForeignImport pass fd_name :: LIdP pass fd_sig_ty :: LHsSigType pass fd_fi :: ForeignImport pass
ForeignExport |
Fields fd_e_ext :: XForeignExport pass fd_name :: LIdP pass fd_sig_ty :: LHsSigType pass fd_fe :: ForeignExport pass
XForeignDecl !(XXForeignDecl pass) |

#### Instances

Instances details

ToHie (LocatedA (ForeignDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (ForeignDecl GhcRn) -> HieM [HieAST Type]
type Anno (ForeignDecl (GhcPass p)) |
Instance details Defined in GHC.Hs.Decls type Anno (ForeignDecl (GhcPass p)) = SrcSpanAnnA

data ForeignExport pass #

Constructors

CExport (XCExport pass) (XRec pass CExportSpec) |
XForeignExport !(XXForeignExport pass) |

#### Instances

Instances details

ToHie (ForeignExport GhcRn) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: ForeignExport GhcRn -> HieM [HieAST Type]

data ForeignImport pass #

Constructors

CImport (XCImport pass) (XRec pass CCallConv) (XRec pass Safety) (Maybe Header) CImportSpec |
XForeignImport !(XXForeignImport pass) |

#### Instances

Instances details

ToHie (ForeignImport GhcRn) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: ForeignImport GhcRn -> HieM [HieAST Type]

data HsConDeclGADTDetails pass #

Constructors

PrefixConGADT [HsScaled pass (LBangType pass)] |
RecConGADT (XRec pass [LConDeclField pass]) (LHsUniToken "->" "\8594" pass) |

#### Instances

Instances details

ToHie (HsConDeclGADTDetails GhcRn) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: HsConDeclGADTDetails GhcRn -> HieM [HieAST Type]

type HsConDeclH98Details pass = HsConDetails Void (HsScaled pass (LBangType pass)) (XRec pass [LConDeclField pass]) #

data HsDataDefn pass #

Constructors

HsDataDefn |
Fields dd_ext :: XCHsDataDefn pass dd_ctxt :: Maybe (LHsContext pass) dd_cType :: Maybe (XRec pass CType) dd_kindSig :: Maybe (LHsKind pass) dd_cons :: DataDefnCons (LConDecl pass) dd_derivs :: HsDeriving pass
XHsDataDefn !(XXHsDataDefn pass) |

#### Instances

Instances details

HasLoc (HsDataDefn GhcRn) |
Instance details Defined in GHC.Iface.Ext.Ast Methods loc :: HsDataDefn GhcRn -> SrcSpan
ToHie (TScoped (FamEqn GhcRn (HsDataDefn GhcRn))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: TScoped (FamEqn GhcRn (HsDataDefn GhcRn)) -> HieM [HieAST Type]
ToHie (HsDataDefn GhcRn) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: HsDataDefn GhcRn -> HieM [HieAST Type]

data HsDecl p #

Constructors

TyClD (XTyClD p) (TyClDecl p) |
InstD (XInstD p) (InstDecl p) |
DerivD (XDerivD p) (DerivDecl p) |
ValD (XValD p) (HsBind p) |
SigD (XSigD p) (Sig p) |
KindSigD (XKindSigD p) (StandaloneKindSig p) |
DefD (XDefD p) (DefaultDecl p) |
ForD (XForD p) (ForeignDecl p) |
WarningD (XWarningD p) (WarnDecls p) |
AnnD (XAnnD p) (AnnDecl p) |
RuleD (XRuleD p) (RuleDecls p) |
SpliceD (XSpliceD p) (SpliceDecl p) |
DocD (XDocD p) (DocDecl p) |
RoleAnnotD (XRoleAnnotD p) (RoleAnnotDecl p) |
XHsDecl !(XXHsDecl p) |

#### Instances

Instances details

type Anno (HsDecl (GhcPass _1)) |
Instance details Defined in GHC.Hs.Decls type Anno (HsDecl (GhcPass _1)) = SrcSpanAnnA

type HsDeriving pass = [LHsDerivingClause pass] #

data HsDerivingClause pass #

Constructors

HsDerivingClause |
Fields deriv_clause_ext :: XCHsDerivingClause pass deriv_clause_strategy :: Maybe (LDerivStrategy pass) deriv_clause_tys :: LDerivClauseTys pass
XHsDerivingClause !(XXHsDerivingClause pass) |

#### Instances

Instances details

ToHie (Located [LocatedAn NoEpAnns (HsDerivingClause GhcRn)]) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: Located [LocatedAn NoEpAnns (HsDerivingClause GhcRn)] -> HieM [HieAST Type]
ToHie (LocatedAn NoEpAnns (HsDerivingClause GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedAn NoEpAnns (HsDerivingClause GhcRn) -> HieM [HieAST Type]
type Anno (HsDerivingClause (GhcPass p)) |
Instance details Defined in GHC.Hs.Decls type Anno (HsDerivingClause (GhcPass p)) = SrcAnn NoEpAnns

data HsGroup p #

Constructors

HsGroup |
Fields hs_ext :: XCHsGroup p hs_valds :: HsValBinds p hs_splcds :: [LSpliceDecl p] hs_tyclds :: [TyClGroup p] hs_derivds :: [LDerivDecl p] hs_fixds :: [LFixitySig p] hs_defds :: [LDefaultDecl p] hs_fords :: [LForeignDecl p] hs_warnds :: [LWarnDecls p] hs_annds :: [LAnnDecl p] hs_ruleds :: [LRuleDecls p] hs_docs :: [LDocDecl p]
XHsGroup !(XXHsGroup p) |

type HsTyPats pass = [LHsTypeArg pass] #

data InstDecl pass #

Constructors

ClsInstD |
Fields cid_d_ext :: XClsInstD pass cid_inst :: ClsInstDecl pass
DataFamInstD |
Fields dfid_ext :: XDataFamInstD pass dfid_inst :: DataFamInstDecl pass
TyFamInstD |
Fields tfid_ext :: XTyFamInstD pass tfid_inst :: TyFamInstDecl pass
XInstDecl !(XXInstDecl pass) |

#### Instances

Instances details

ToHie (LocatedA (InstDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (InstDecl GhcRn) -> HieM [HieAST Type]
type Anno (InstDecl (GhcPass p)) |
Instance details Defined in GHC.Hs.Decls type Anno (InstDecl (GhcPass p)) = SrcSpanAnnA

type LAnnDecl pass = XRec pass (AnnDecl pass) #

type LClsInstDecl pass = XRec pass (ClsInstDecl pass) #

type LConDecl pass = XRec pass (ConDecl pass) #

type LDataFamInstDecl pass = XRec pass (DataFamInstDecl pass) #

type LDefaultDecl pass = XRec pass (DefaultDecl pass) #

type LDerivClauseTys pass = XRec pass (DerivClauseTys pass) #

type LDerivDecl pass = XRec pass (DerivDecl pass) #

type LDerivStrategy pass = XRec pass (DerivStrategy pass) #

type LDocDecl pass = XRec pass (DocDecl pass) #

type LFamilyDecl pass = XRec pass (FamilyDecl pass) #

type LFamilyResultSig pass = XRec pass (FamilyResultSig pass) #

type LForeignDecl pass = XRec pass (ForeignDecl pass) #

type LHsDecl p = XRec p (HsDecl p) #

type LHsDerivingClause pass = XRec pass (HsDerivingClause pass) #

type LHsFunDep pass = XRec pass (FunDep pass) #

type LInjectivityAnn pass = XRec pass (InjectivityAnn pass) #

type LInstDecl pass = XRec pass (InstDecl pass) #

type LRoleAnnotDecl pass = XRec pass (RoleAnnotDecl pass) #

type LRuleBndr pass = XRec pass (RuleBndr pass) #

type LRuleDecl pass = XRec pass (RuleDecl pass) #

type LRuleDecls pass = XRec pass (RuleDecls pass) #

type LSpliceDecl pass = XRec pass (SpliceDecl pass) #

type LStandaloneKindSig pass = XRec pass (StandaloneKindSig pass) #

type LTyClDecl pass = XRec pass (TyClDecl pass) #

type LTyFamDefltDecl pass = XRec pass (TyFamDefltDecl pass) #

type LTyFamInstDecl pass = XRec pass (TyFamInstDecl pass) #

type LTyFamInstEqn pass = XRec pass (TyFamInstEqn pass) #

type LWarnDecl pass = XRec pass (WarnDecl pass) #

type LWarnDecls pass = XRec pass (WarnDecls pass) #

data NewOrData #

Constructors

NewType |
DataType |

#### Instances

Instances details

Data NewOrData |
Instance details Defined in Language.Haskell.Syntax.Decls Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> NewOrData -> c NewOrData gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c NewOrData toConstr :: NewOrData -> Constr dataTypeOf :: NewOrData -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c NewOrData) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c NewOrData) gmapT :: (forall b. Data b => b -> b) -> NewOrData -> NewOrData gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> NewOrData -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> NewOrData -> r gmapQ :: (forall d. Data d => d -> u) -> NewOrData -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> NewOrData -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> NewOrData -> m NewOrData gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> NewOrData -> m NewOrData gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> NewOrData -> m NewOrData
Eq NewOrData |
Instance details Defined in Language.Haskell.Syntax.Decls Methods (==) :: NewOrData -> NewOrData -> Bool # (/=) :: NewOrData -> NewOrData -> Bool #

data RoleAnnotDecl pass #

Constructors

RoleAnnotDecl (XCRoleAnnotDecl pass) (LIdP pass) [XRec pass (Maybe Role)] |
XRoleAnnotDecl !(XXRoleAnnotDecl pass) |

#### Instances

Instances details

ToHie (LocatedA (RoleAnnotDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (RoleAnnotDecl GhcRn) -> HieM [HieAST Type]
type Anno (RoleAnnotDecl (GhcPass p)) |
Instance details Defined in GHC.Hs.Decls type Anno (RoleAnnotDecl (GhcPass p)) = SrcSpanAnnA

data RuleDecl pass #

Constructors

HsRule |
Fields rd_ext :: XHsRule pass rd_name :: XRec pass RuleName rd_act :: Activation rd_tyvs :: Maybe [LHsTyVarBndr () (NoGhcTc pass)] rd_tmvs :: [LRuleBndr pass] rd_lhs :: XRec pass (HsExpr pass) rd_rhs :: XRec pass (HsExpr pass)
XRuleDecl !(XXRuleDecl pass) |

#### Instances

Instances details

ToHie (LocatedA (RuleDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (RuleDecl GhcRn) -> HieM [HieAST Type]
type Anno (RuleDecl (GhcPass p)) |
Instance details Defined in GHC.Hs.Decls type Anno (RuleDecl (GhcPass p)) = SrcSpanAnnA

data RuleDecls pass #

Constructors

HsRules |
Fields rds_ext :: XCRuleDecls pass rds_rules :: [LRuleDecl pass]
XRuleDecls !(XXRuleDecls pass) |

#### Instances

Instances details

ToHie (LocatedA (RuleDecls GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (RuleDecls GhcRn) -> HieM [HieAST Type]
type Anno (RuleDecls (GhcPass p)) |
Instance details Defined in GHC.Hs.Decls type Anno (RuleDecls (GhcPass p)) = SrcSpanAnnA

data SpliceDecl p #

Constructors

SpliceDecl (XSpliceDecl p) (XRec p (HsUntypedSplice p)) SpliceDecoration |
XSpliceDecl !(XXSpliceDecl p) |

#### Instances

Instances details

ToHie (LocatedA (SpliceDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (SpliceDecl GhcRn) -> HieM [HieAST Type]
type Anno (SpliceDecl (GhcPass p)) |
Instance details Defined in GHC.Hs.Decls type Anno (SpliceDecl (GhcPass p)) = SrcSpanAnnA

data SpliceDecoration #

Constructors

DollarSplice |
BareSplice |

#### Instances

Instances details

Data SpliceDecoration |
Instance details Defined in Language.Haskell.Syntax.Decls Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> SpliceDecoration -> c SpliceDecoration gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c SpliceDecoration toConstr :: SpliceDecoration -> Constr dataTypeOf :: SpliceDecoration -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c SpliceDecoration) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c SpliceDecoration) gmapT :: (forall b. Data b => b -> b) -> SpliceDecoration -> SpliceDecoration gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> SpliceDecoration -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> SpliceDecoration -> r gmapQ :: (forall d. Data d => d -> u) -> SpliceDecoration -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> SpliceDecoration -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> SpliceDecoration -> m SpliceDecoration gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> SpliceDecoration -> m SpliceDecoration gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> SpliceDecoration -> m SpliceDecoration
Show SpliceDecoration |
Instance details Defined in Language.Haskell.Syntax.Decls Methods showsPrec :: Int -> SpliceDecoration -> ShowS # show :: SpliceDecoration -> String # showList :: [SpliceDecoration] -> ShowS #
Eq SpliceDecoration |
Instance details Defined in Language.Haskell.Syntax.Decls Methods (==) :: SpliceDecoration -> SpliceDecoration -> Bool # (/=) :: SpliceDecoration -> SpliceDecoration -> Bool #

data StandaloneKindSig pass #

Constructors

StandaloneKindSig (XStandaloneKindSig pass) (LIdP pass) (LHsSigType pass) |
XStandaloneKindSig !(XXStandaloneKindSig pass) |

#### Instances

Instances details

ToHie (LocatedA (StandaloneKindSig GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (StandaloneKindSig GhcRn) -> HieM [HieAST Type]
ToHie (StandaloneKindSig GhcRn) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: StandaloneKindSig GhcRn -> HieM [HieAST Type]
type Anno (StandaloneKindSig (GhcPass p)) |
Instance details Defined in GHC.Hs.Decls type Anno (StandaloneKindSig (GhcPass p)) = SrcSpanAnnA

data TyClDecl pass #

Constructors

FamDecl |
Fields tcdFExt :: XFamDecl pass tcdFam :: FamilyDecl pass
SynDecl |
Fields tcdSExt :: XSynDecl pass tcdLName :: LIdP pass tcdTyVars :: LHsQTyVars pass tcdFixity :: LexicalFixity tcdRhs :: LHsType pass
DataDecl |
Fields tcdDExt :: XDataDecl pass tcdLName :: LIdP pass tcdTyVars :: LHsQTyVars pass tcdFixity :: LexicalFixity tcdDataDefn :: HsDataDefn pass
ClassDecl |
Fields tcdCExt :: XClassDecl pass tcdLayout :: !(LayoutInfo pass) tcdCtxt :: Maybe (LHsContext pass) tcdLName :: LIdP pass tcdTyVars :: LHsQTyVars pass tcdFixity :: LexicalFixity tcdFDs :: [LHsFunDep pass] tcdSigs :: [LSig pass] tcdMeths :: LHsBinds pass tcdATs :: [LFamilyDecl pass] tcdATDefs :: [LTyFamDefltDecl pass] tcdDocs :: [LDocDecl pass]
XTyClDecl !(XXTyClDecl pass) |

#### Instances

Instances details

ToHie (LocatedA (TyClDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (TyClDecl GhcRn) -> HieM [HieAST Type]
type Anno (TyClDecl (GhcPass p)) |
Instance details Defined in GHC.Hs.Decls type Anno (TyClDecl (GhcPass p)) = SrcSpanAnnA

data TyClGroup pass #

Constructors

TyClGroup |
Fields group_ext :: XCTyClGroup pass group_tyclds :: [LTyClDecl pass] group_roles :: [LRoleAnnotDecl pass] group_kisigs :: [LStandaloneKindSig pass] group_instds :: [LInstDecl pass]
XTyClGroup !(XXTyClGroup pass) |

#### Instances

Instances details

ToHie (TyClGroup GhcRn) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: TyClGroup GhcRn -> HieM [HieAST Type]

type TyFamDefltDecl = TyFamInstDecl #

data TyFamInstDecl pass #

Constructors

TyFamInstDecl |
Fields tfid_xtn :: XCTyFamInstDecl pass tfid_eqn :: TyFamInstEqn pass
XTyFamInstDecl !(XXTyFamInstDecl pass) |

#### Instances

Instances details

ToHie (LocatedA (TyFamInstDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (TyFamInstDecl GhcRn) -> HieM [HieAST Type]
type Anno (TyFamInstDecl (GhcPass p)) |
Instance details Defined in GHC.Hs.Decls type Anno (TyFamInstDecl (GhcPass p)) = SrcSpanAnnA

type TyFamInstEqn pass = FamEqn pass (LHsType pass) #

data WarnDecl pass #

Constructors

Warning (XWarning pass) [LIdP pass] (WarningTxt pass) |
XWarnDecl !(XXWarnDecl pass) |

#### Instances

Instances details

ToHie (LocatedA (WarnDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (WarnDecl GhcRn) -> HieM [HieAST Type]
type Anno (WarnDecl (GhcPass p)) |
Instance details Defined in GHC.Hs.Decls type Anno (WarnDecl (GhcPass p)) = SrcSpanAnnA

data WarnDecls pass #

Constructors

Warnings |
Fields wd_ext :: XWarnings pass wd_warnings :: [LWarnDecl pass]
XWarnDecls !(XXWarnDecls pass) |

#### Instances

Instances details

ToHie (LocatedA (WarnDecls GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (WarnDecls GhcRn) -> HieM [HieAST Type]
type Anno (WarnDecls (GhcPass p)) |
Instance details Defined in GHC.Hs.Decls type Anno (WarnDecls (GhcPass p)) = SrcSpanAnnA

type family XForeignExport x #

#### Instances

Instances details

type XForeignExport GhcPs |
Instance details Defined in GHC.Hs.Decls type XForeignExport GhcPs = EpAnn [AddEpAnn]
type XForeignExport GhcRn |
Instance details Defined in GHC.Hs.Decls type XForeignExport GhcRn = NoExtField
type XForeignExport GhcTc |
Instance details Defined in GHC.Hs.Decls type XForeignExport GhcTc = Coercion

type family XForeignImport x #

#### Instances

Instances details

type XForeignImport GhcPs |
Instance details Defined in GHC.Hs.Decls type XForeignImport GhcPs = EpAnn [AddEpAnn]
type XForeignImport GhcRn |
Instance details Defined in GHC.Hs.Decls type XForeignImport GhcRn = NoExtField
type XForeignImport GhcTc |
Instance details Defined in GHC.Hs.Decls type XForeignImport GhcTc = Coercion

type family XSpliceDecl x #

#### Instances

Instances details

type XSpliceDecl (GhcPass _1) |
Instance details Defined in GHC.Hs.Decls type XSpliceDecl (GhcPass _1) = NoExtField

type family XStandaloneKindSig x #

#### Instances

Instances details

type XStandaloneKindSig GhcPs |
Instance details Defined in GHC.Hs.Decls type XStandaloneKindSig GhcPs = EpAnn [AddEpAnn]
type XStandaloneKindSig GhcRn |
Instance details Defined in GHC.Hs.Decls type XStandaloneKindSig GhcRn = NoExtField
type XStandaloneKindSig GhcTc |
Instance details Defined in GHC.Hs.Decls type XStandaloneKindSig GhcTc = NoExtField

data ApplicativeArg idL #

Constructors

ApplicativeArgOne |
Fields xarg_app_arg_one :: XApplicativeArgOne idL app_arg_pattern :: LPat idL arg_expr :: LHsExpr idL is_body_stmt :: Bool
ApplicativeArgMany |
Fields xarg_app_arg_many :: XApplicativeArgMany idL app_stmts :: [ExprLStmt idL] final_expr :: HsExpr idL bv_pattern :: LPat idL stmt_context :: HsDoFlavour
XApplicativeArg !(XXApplicativeArg idL) |

#### Instances

Instances details

HiePass p => ToHie (RScoped (ApplicativeArg (GhcPass p))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: RScoped (ApplicativeArg (GhcPass p)) -> HieM [HieAST Type]

data ArithSeqInfo id #

Constructors

From (LHsExpr id) |
FromThen (LHsExpr id) (LHsExpr id) |
FromTo (LHsExpr id) (LHsExpr id) |
FromThenTo (LHsExpr id) (LHsExpr id) (LHsExpr id) |

#### Instances

Instances details

ToHie (LHsExpr a) => ToHie (ArithSeqInfo a) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: ArithSeqInfo a -> HieM [HieAST Type]

type CmdLStmt id = LStmt id (LHsCmd id) #

type CmdStmt id = Stmt id (LHsCmd id) #

data DotFieldOcc p #

Constructors

DotFieldOcc |
Fields dfoExt :: XCDotFieldOcc p dfoLabel :: XRec p FieldLabelString
XDotFieldOcc !(XXDotFieldOcc p) |

#### Instances

Instances details

type Anno (DotFieldOcc (GhcPass p)) |
Instance details Defined in GHC.Hs.Expr type Anno (DotFieldOcc (GhcPass p)) = SrcAnn NoEpAnns

type ExprLStmt id = LStmt id (LHsExpr id) #

type ExprStmt id = Stmt id (LHsExpr id) #

type FailOperator id = Maybe (SyntaxExpr id) #

newtype FieldLabelStrings p #

Constructors

FieldLabelStrings [XRec p (DotFieldOcc p)] |

#### Instances

Instances details

type Anno (FieldLabelStrings (GhcPass p)) |
Instance details Defined in GHC.Hs.Expr type Anno (FieldLabelStrings (GhcPass p)) = SrcAnn NoEpAnns

data GRHS p body #

Constructors

GRHS (XCGRHS p body) [GuardLStmt p] body |
XGRHS !(XXGRHS p body) |

#### Instances

Instances details

(ToHie (LocatedA (body (GhcPass p))), HiePass p, AnnoBody p body) => ToHie (LocatedAn NoEpAnns (GRHS (GhcPass p) (LocatedA (body (GhcPass p))))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedAn NoEpAnns (GRHS (GhcPass p) (LocatedA (body (GhcPass p)))) -> HieM [HieAST Type]
type Anno (GRHS (GhcPass p) (LocatedA (HsCmd (GhcPass p)))) |
Instance details Defined in GHC.Hs.Expr type Anno (GRHS (GhcPass p) (LocatedA (HsCmd (GhcPass p)))) = SrcAnn NoEpAnns
type Anno (GRHS (GhcPass p) (LocatedA (HsExpr (GhcPass p)))) |
Instance details Defined in GHC.Hs.Expr type Anno (GRHS (GhcPass p) (LocatedA (HsExpr (GhcPass p)))) = SrcAnn NoEpAnns
type Anno (GRHS GhcPs (LocatedA (PatBuilder GhcPs))) |
Instance details Defined in GHC.Parser.PostProcess type Anno (GRHS GhcPs (LocatedA (PatBuilder GhcPs))) = SrcAnn NoEpAnns

data GRHSs p body #

Constructors

GRHSs |
Fields grhssExt :: XCGRHSs p body grhssGRHSs :: [LGRHS p body] grhssLocalBinds :: HsLocalBinds p
XGRHSs !(XXGRHSs p body) |

#### Instances

Instances details

(ToHie (LocatedA (body (GhcPass p))), HiePass p, AnnoBody p body) => ToHie (GRHSs (GhcPass p) (LocatedA (body (GhcPass p)))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: GRHSs (GhcPass p) (LocatedA (body (GhcPass p))) -> HieM [HieAST Type]

type GhciLStmt id = LStmt id (LHsExpr id) #

type GhciStmt id = Stmt id (LHsExpr id) #

type GuardLStmt id = LStmt id (LHsExpr id) #

type GuardStmt id = Stmt id (LHsExpr id) #

data HsArrAppType #

Constructors

HsHigherOrderApp |
HsFirstOrderApp |

#### Instances

Instances details

Data HsArrAppType |
Instance details Defined in Language.Haskell.Syntax.Expr Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> HsArrAppType -> c HsArrAppType gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c HsArrAppType toConstr :: HsArrAppType -> Constr dataTypeOf :: HsArrAppType -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c HsArrAppType) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c HsArrAppType) gmapT :: (forall b. Data b => b -> b) -> HsArrAppType -> HsArrAppType gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> HsArrAppType -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> HsArrAppType -> r gmapQ :: (forall d. Data d => d -> u) -> HsArrAppType -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> HsArrAppType -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> HsArrAppType -> m HsArrAppType gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> HsArrAppType -> m HsArrAppType gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> HsArrAppType -> m HsArrAppType

data HsArrowMatchContext #

Constructors

ProcExpr |
ArrowCaseAlt |
ArrowLamCaseAlt LamCaseVariant |
KappaExpr |

data HsCmd id #

Constructors

HsCmdArrApp (XCmdArrApp id) (LHsExpr id) (LHsExpr id) HsArrAppType Bool |
HsCmdArrForm (XCmdArrForm id) (LHsExpr id) LexicalFixity (Maybe Fixity) [LHsCmdTop id] |
HsCmdApp (XCmdApp id) (LHsCmd id) (LHsExpr id) |
HsCmdLam (XCmdLam id) (MatchGroup id (LHsCmd id)) |
HsCmdPar (XCmdPar id) !(LHsToken "(" id) (LHsCmd id) !(LHsToken ")" id) |
HsCmdCase (XCmdCase id) (LHsExpr id) (MatchGroup id (LHsCmd id)) |
HsCmdLamCase (XCmdLamCase id) LamCaseVariant (MatchGroup id (LHsCmd id)) |
HsCmdIf (XCmdIf id) (SyntaxExpr id) (LHsExpr id) (LHsCmd id) (LHsCmd id) |
HsCmdLet (XCmdLet id) !(LHsToken "let" id) (HsLocalBinds id) !(LHsToken "in" id) (LHsCmd id) |
HsCmdDo (XCmdDo id) (XRec id [CmdLStmt id]) |
XCmd !(XXCmd id) |

#### Instances

Instances details

HiePass p => ToHie (LocatedA (HsCmd (GhcPass p))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (HsCmd (GhcPass p)) -> HieM [HieAST Type]
DisambECP (HsCmd GhcPs) |
Instance details Defined in GHC.Parser.PostProcess Associated Types type Body (HsCmd GhcPs) :: Type -> Type type InfixOp (HsCmd GhcPs) type FunArg (HsCmd GhcPs) Methods ecpFromCmd' :: LHsCmd GhcPs -> PV (LocatedA (HsCmd GhcPs)) ecpFromExp' :: LHsExpr GhcPs -> PV (LocatedA (HsCmd GhcPs)) mkHsProjUpdatePV :: SrcSpan -> Located [LocatedAn NoEpAnns (DotFieldOcc GhcPs)] -> LocatedA (HsCmd GhcPs) -> Bool -> [AddEpAnn] -> PV (LHsRecProj GhcPs (LocatedA (HsCmd GhcPs))) mkHsLamPV :: SrcSpan -> (EpAnnComments -> MatchGroup GhcPs (LocatedA (HsCmd GhcPs))) -> PV (LocatedA (HsCmd GhcPs)) mkHsLetPV :: SrcSpan -> LHsToken "let" GhcPs -> HsLocalBinds GhcPs -> LHsToken "in" GhcPs -> LocatedA (HsCmd GhcPs) -> PV (LocatedA (HsCmd GhcPs)) superInfixOp :: (DisambInfixOp (InfixOp (HsCmd GhcPs)) => PV (LocatedA (HsCmd GhcPs))) -> PV (LocatedA (HsCmd GhcPs)) mkHsOpAppPV :: SrcSpan -> LocatedA (HsCmd GhcPs) -> LocatedN (InfixOp (HsCmd GhcPs)) -> LocatedA (HsCmd GhcPs) -> PV (LocatedA (HsCmd GhcPs)) mkHsCasePV :: SrcSpan -> LHsExpr GhcPs -> LocatedL [LMatch GhcPs (LocatedA (HsCmd GhcPs))] -> EpAnnHsCase -> PV (LocatedA (HsCmd GhcPs)) mkHsLamCasePV :: SrcSpan -> LamCaseVariant -> LocatedL [LMatch GhcPs (LocatedA (HsCmd GhcPs))] -> [AddEpAnn] -> PV (LocatedA (HsCmd GhcPs)) superFunArg :: (DisambECP (FunArg (HsCmd GhcPs)) => PV (LocatedA (HsCmd GhcPs))) -> PV (LocatedA (HsCmd GhcPs)) mkHsAppPV :: SrcSpanAnnA -> LocatedA (HsCmd GhcPs) -> LocatedA (FunArg (HsCmd GhcPs)) -> PV (LocatedA (HsCmd GhcPs)) mkHsAppTypePV :: SrcSpanAnnA -> LocatedA (HsCmd GhcPs) -> LHsToken "@" GhcPs -> LHsType GhcPs -> PV (LocatedA (HsCmd GhcPs)) mkHsIfPV :: SrcSpan -> LHsExpr GhcPs -> Bool -> LocatedA (HsCmd GhcPs) -> Bool -> LocatedA (HsCmd GhcPs) -> AnnsIf -> PV (LocatedA (HsCmd GhcPs)) mkHsDoPV :: SrcSpan -> Maybe ModuleName -> LocatedL [LStmt GhcPs (LocatedA (HsCmd GhcPs))] -> AnnList -> PV (LocatedA (HsCmd GhcPs)) mkHsParPV :: SrcSpan -> LHsToken "(" GhcPs -> LocatedA (HsCmd GhcPs) -> LHsToken ")" GhcPs -> PV (LocatedA (HsCmd GhcPs)) mkHsVarPV :: LocatedN RdrName -> PV (LocatedA (HsCmd GhcPs)) mkHsLitPV :: Located (HsLit GhcPs) -> PV (Located (HsCmd GhcPs)) mkHsOverLitPV :: LocatedAn a (HsOverLit GhcPs) -> PV (LocatedAn a (HsCmd GhcPs)) mkHsWildCardPV :: SrcSpan -> PV (Located (HsCmd GhcPs)) mkHsTySigPV :: SrcSpanAnnA -> LocatedA (HsCmd GhcPs) -> LHsType GhcPs -> [AddEpAnn] -> PV (LocatedA (HsCmd GhcPs)) mkHsExplicitListPV :: SrcSpan -> [LocatedA (HsCmd GhcPs)] -> AnnList -> PV (LocatedA (HsCmd GhcPs)) mkHsSplicePV :: Located (HsUntypedSplice GhcPs) -> PV (Located (HsCmd GhcPs)) mkHsRecordPV :: Bool -> SrcSpan -> SrcSpan -> LocatedA (HsCmd GhcPs) -> ([Fbind (HsCmd GhcPs)], Maybe SrcSpan) -> [AddEpAnn] -> PV (LocatedA (HsCmd GhcPs)) mkHsNegAppPV :: SrcSpan -> LocatedA (HsCmd GhcPs) -> [AddEpAnn] -> PV (LocatedA (HsCmd GhcPs)) mkHsSectionR_PV :: SrcSpan -> LocatedA (InfixOp (HsCmd GhcPs)) -> LocatedA (HsCmd GhcPs) -> PV (Located (HsCmd GhcPs)) mkHsViewPatPV :: SrcSpan -> LHsExpr GhcPs -> LocatedA (HsCmd GhcPs) -> [AddEpAnn] -> PV (LocatedA (HsCmd GhcPs)) mkHsAsPatPV :: SrcSpan -> LocatedN RdrName -> LHsToken "@" GhcPs -> LocatedA (HsCmd GhcPs) -> PV (LocatedA (HsCmd GhcPs)) mkHsLazyPatPV :: SrcSpan -> LocatedA (HsCmd GhcPs) -> [AddEpAnn] -> PV (LocatedA (HsCmd GhcPs)) mkHsBangPatPV :: SrcSpan -> LocatedA (HsCmd GhcPs) -> [AddEpAnn] -> PV (LocatedA (HsCmd GhcPs)) mkSumOrTuplePV :: SrcSpanAnnA -> Boxity -> SumOrTuple (HsCmd GhcPs) -> [AddEpAnn] -> PV (LocatedA (HsCmd GhcPs)) rejectPragmaPV :: LocatedA (HsCmd GhcPs) -> PV ()
type Body (HsCmd GhcPs) |
Instance details Defined in GHC.Parser.PostProcess type Body (HsCmd GhcPs) = HsCmd
type FunArg (HsCmd GhcPs) |
Instance details Defined in GHC.Parser.PostProcess type FunArg (HsCmd GhcPs) = HsExpr GhcPs
type InfixOp (HsCmd GhcPs) |
Instance details Defined in GHC.Parser.PostProcess type InfixOp (HsCmd GhcPs) = HsExpr GhcPs
type Anno (HsCmd (GhcPass p)) |
Instance details Defined in GHC.Hs.Expr type Anno (HsCmd (GhcPass p)) = SrcSpanAnnA
type Anno [LocatedA (Match (GhcPass p) (LocatedA (HsCmd (GhcPass p))))] |
Instance details Defined in GHC.Hs.Expr type Anno [LocatedA (Match (GhcPass p) (LocatedA (HsCmd (GhcPass p))))] = SrcSpanAnnL
type Anno [LocatedA (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (HsCmd (GhcPass pr))))] |
Instance details Defined in GHC.Hs.Expr type Anno [LocatedA (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (HsCmd (GhcPass pr))))] = SrcSpanAnnL
type Anno [LocatedA (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (HsCmd (GhcPass pr))))] |
Instance details Defined in GHC.Hs.Expr type Anno [LocatedA (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (HsCmd (GhcPass pr))))] = SrcSpanAnnL
type Anno [LocatedA (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (HsCmd (GhcPass pr))))] |
Instance details Defined in GHC.Hs.Expr type Anno [LocatedA (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (HsCmd (GhcPass pr))))] = SrcSpanAnnL
type Anno (GRHS (GhcPass p) (LocatedA (HsCmd (GhcPass p)))) |
Instance details Defined in GHC.Hs.Expr type Anno (GRHS (GhcPass p) (LocatedA (HsCmd (GhcPass p)))) = SrcAnn NoEpAnns
type Anno (Match (GhcPass p) (LocatedA (HsCmd (GhcPass p)))) |
Instance details Defined in GHC.Hs.Expr type Anno (Match (GhcPass p) (LocatedA (HsCmd (GhcPass p)))) = SrcSpanAnnA

data HsCmdTop p #

Constructors

HsCmdTop (XCmdTop p) (LHsCmd p) |
XCmdTop !(XXCmdTop p) |

#### Instances

Instances details

HiePass p => ToHie (LocatedAn NoEpAnns (HsCmdTop (GhcPass p))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedAn NoEpAnns (HsCmdTop (GhcPass p)) -> HieM [HieAST Type]
type Anno (HsCmdTop (GhcPass p)) |
Instance details Defined in GHC.Hs.Expr type Anno (HsCmdTop (GhcPass p)) = SrcAnn NoEpAnns

data HsDoFlavour #

Constructors

DoExpr (Maybe ModuleName) |
MDoExpr (Maybe ModuleName) |
GhciStmtCtxt |
ListComp |
MonadComp |

data HsExpr p #

Constructors

HsVar (XVar p) (LIdP p) |
HsUnboundVar (XUnboundVar p) RdrName |
HsRecSel (XRecSel p) (FieldOcc p) |
HsOverLabel (XOverLabel p) SourceText FastString |
HsIPVar (XIPVar p) HsIPName |
HsOverLit (XOverLitE p) (HsOverLit p) |
HsLit (XLitE p) (HsLit p) |
HsLam (XLam p) (MatchGroup p (LHsExpr p)) |
HsLamCase (XLamCase p) LamCaseVariant (MatchGroup p (LHsExpr p)) |
HsApp (XApp p) (LHsExpr p) (LHsExpr p) |
HsAppType (XAppTypeE p) (LHsExpr p) !(LHsToken "@" p) (LHsWcType (NoGhcTc p)) |
OpApp (XOpApp p) (LHsExpr p) (LHsExpr p) (LHsExpr p) |
NegApp (XNegApp p) (LHsExpr p) (SyntaxExpr p) |
HsPar (XPar p) !(LHsToken "(" p) (LHsExpr p) !(LHsToken ")" p) |
SectionL (XSectionL p) (LHsExpr p) (LHsExpr p) |
SectionR (XSectionR p) (LHsExpr p) (LHsExpr p) |
ExplicitTuple (XExplicitTuple p) [HsTupArg p] Boxity |
ExplicitSum (XExplicitSum p) ConTag SumWidth (LHsExpr p) |
HsCase (XCase p) (LHsExpr p) (MatchGroup p (LHsExpr p)) |
HsIf (XIf p) (LHsExpr p) (LHsExpr p) (LHsExpr p) |
HsMultiIf (XMultiIf p) [LGRHS p (LHsExpr p)] |
HsLet (XLet p) !(LHsToken "let" p) (HsLocalBinds p) !(LHsToken "in" p) (LHsExpr p) |
HsDo (XDo p) HsDoFlavour (XRec p [ExprLStmt p]) |
ExplicitList (XExplicitList p) [LHsExpr p] |
RecordCon |
Fields rcon_ext :: XRecordCon p rcon_con :: XRec p (ConLikeP p) rcon_flds :: HsRecordBinds p
RecordUpd |
Fields rupd_ext :: XRecordUpd p rupd_expr :: LHsExpr p rupd_flds :: Either [LHsRecUpdField p] [LHsRecUpdProj p]
HsGetField |
Fields gf_ext :: XGetField p gf_expr :: LHsExpr p gf_field :: XRec p (DotFieldOcc p)
HsProjection |
Fields proj_ext :: XProjection p proj_flds :: NonEmpty (XRec p (DotFieldOcc p))
ExprWithTySig (XExprWithTySig p) (LHsExpr p) (LHsSigWcType (NoGhcTc p)) |
ArithSeq (XArithSeq p) (Maybe (SyntaxExpr p)) (ArithSeqInfo p) |
HsTypedBracket (XTypedBracket p) (LHsExpr p) |
HsUntypedBracket (XUntypedBracket p) (HsQuote p) |
HsTypedSplice (XTypedSplice p) (LHsExpr p) |
HsUntypedSplice (XUntypedSplice p) (HsUntypedSplice p) |
HsProc (XProc p) (LPat p) (LHsCmdTop p) |
HsStatic (XStatic p) (LHsExpr p) |
HsPragE (XPragE p) (HsPragE p) (LHsExpr p) |
XExpr !(XXExpr p) |

#### Instances

Instances details

NFData (HsExpr (GhcPass 'Renamed)) # |
Instance details Defined in Development.IDE.GHC.Orphans Methods rnf :: HsExpr (GhcPass 'Renamed) -> () #
HiePass p => HasType (LocatedA (HsExpr (GhcPass p))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods getTypeNode :: LocatedA (HsExpr (GhcPass p)) -> HieM [HieAST Type]
HiePass p => ToHie (LocatedA (HsExpr (GhcPass p))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (HsExpr (GhcPass p)) -> HieM [HieAST Type]
DisambECP (HsExpr GhcPs) |
Instance details Defined in GHC.Parser.PostProcess Associated Types type Body (HsExpr GhcPs) :: Type -> Type type InfixOp (HsExpr GhcPs) type FunArg (HsExpr GhcPs) Methods ecpFromCmd' :: LHsCmd GhcPs -> PV (LocatedA (HsExpr GhcPs)) ecpFromExp' :: LHsExpr GhcPs -> PV (LocatedA (HsExpr GhcPs)) mkHsProjUpdatePV :: SrcSpan -> Located [LocatedAn NoEpAnns (DotFieldOcc GhcPs)] -> LocatedA (HsExpr GhcPs) -> Bool -> [AddEpAnn] -> PV (LHsRecProj GhcPs (LocatedA (HsExpr GhcPs))) mkHsLamPV :: SrcSpan -> (EpAnnComments -> MatchGroup GhcPs (LocatedA (HsExpr GhcPs))) -> PV (LocatedA (HsExpr GhcPs)) mkHsLetPV :: SrcSpan -> LHsToken "let" GhcPs -> HsLocalBinds GhcPs -> LHsToken "in" GhcPs -> LocatedA (HsExpr GhcPs) -> PV (LocatedA (HsExpr GhcPs)) superInfixOp :: (DisambInfixOp (InfixOp (HsExpr GhcPs)) => PV (LocatedA (HsExpr GhcPs))) -> PV (LocatedA (HsExpr GhcPs)) mkHsOpAppPV :: SrcSpan -> LocatedA (HsExpr GhcPs) -> LocatedN (InfixOp (HsExpr GhcPs)) -> LocatedA (HsExpr GhcPs) -> PV (LocatedA (HsExpr GhcPs)) mkHsCasePV :: SrcSpan -> LHsExpr GhcPs -> LocatedL [LMatch GhcPs (LocatedA (HsExpr GhcPs))] -> EpAnnHsCase -> PV (LocatedA (HsExpr GhcPs)) mkHsLamCasePV :: SrcSpan -> LamCaseVariant -> LocatedL [LMatch GhcPs (LocatedA (HsExpr GhcPs))] -> [AddEpAnn] -> PV (LocatedA (HsExpr GhcPs)) superFunArg :: (DisambECP (FunArg (HsExpr GhcPs)) => PV (LocatedA (HsExpr GhcPs))) -> PV (LocatedA (HsExpr GhcPs)) mkHsAppPV :: SrcSpanAnnA -> LocatedA (HsExpr GhcPs) -> LocatedA (FunArg (HsExpr GhcPs)) -> PV (LocatedA (HsExpr GhcPs)) mkHsAppTypePV :: SrcSpanAnnA -> LocatedA (HsExpr GhcPs) -> LHsToken "@" GhcPs -> LHsType GhcPs -> PV (LocatedA (HsExpr GhcPs)) mkHsIfPV :: SrcSpan -> LHsExpr GhcPs -> Bool -> LocatedA (HsExpr GhcPs) -> Bool -> LocatedA (HsExpr GhcPs) -> AnnsIf -> PV (LocatedA (HsExpr GhcPs)) mkHsDoPV :: SrcSpan -> Maybe ModuleName -> LocatedL [LStmt GhcPs (LocatedA (HsExpr GhcPs))] -> AnnList -> PV (LocatedA (HsExpr GhcPs)) mkHsParPV :: SrcSpan -> LHsToken "(" GhcPs -> LocatedA (HsExpr GhcPs) -> LHsToken ")" GhcPs -> PV (LocatedA (HsExpr GhcPs)) mkHsVarPV :: LocatedN RdrName -> PV (LocatedA (HsExpr GhcPs)) mkHsLitPV :: Located (HsLit GhcPs) -> PV (Located (HsExpr GhcPs)) mkHsOverLitPV :: LocatedAn a (HsOverLit GhcPs) -> PV (LocatedAn a (HsExpr GhcPs)) mkHsWildCardPV :: SrcSpan -> PV (Located (HsExpr GhcPs)) mkHsTySigPV :: SrcSpanAnnA -> LocatedA (HsExpr GhcPs) -> LHsType GhcPs -> [AddEpAnn] -> PV (LocatedA (HsExpr GhcPs)) mkHsExplicitListPV :: SrcSpan -> [LocatedA (HsExpr GhcPs)] -> AnnList -> PV (LocatedA (HsExpr GhcPs)) mkHsSplicePV :: Located (HsUntypedSplice GhcPs) -> PV (Located (HsExpr GhcPs)) mkHsRecordPV :: Bool -> SrcSpan -> SrcSpan -> LocatedA (HsExpr GhcPs) -> ([Fbind (HsExpr GhcPs)], Maybe SrcSpan) -> [AddEpAnn] -> PV (LocatedA (HsExpr GhcPs)) mkHsNegAppPV :: SrcSpan -> LocatedA (HsExpr GhcPs) -> [AddEpAnn] -> PV (LocatedA (HsExpr GhcPs)) mkHsSectionR_PV :: SrcSpan -> LocatedA (InfixOp (HsExpr GhcPs)) -> LocatedA (HsExpr GhcPs) -> PV (Located (HsExpr GhcPs)) mkHsViewPatPV :: SrcSpan -> LHsExpr GhcPs -> LocatedA (HsExpr GhcPs) -> [AddEpAnn] -> PV (LocatedA (HsExpr GhcPs)) mkHsAsPatPV :: SrcSpan -> LocatedN RdrName -> LHsToken "@" GhcPs -> LocatedA (HsExpr GhcPs) -> PV (LocatedA (HsExpr GhcPs)) mkHsLazyPatPV :: SrcSpan -> LocatedA (HsExpr GhcPs) -> [AddEpAnn] -> PV (LocatedA (HsExpr GhcPs)) mkHsBangPatPV :: SrcSpan -> LocatedA (HsExpr GhcPs) -> [AddEpAnn] -> PV (LocatedA (HsExpr GhcPs)) mkSumOrTuplePV :: SrcSpanAnnA -> Boxity -> SumOrTuple (HsExpr GhcPs) -> [AddEpAnn] -> PV (LocatedA (HsExpr GhcPs)) rejectPragmaPV :: LocatedA (HsExpr GhcPs) -> PV ()
DisambInfixOp (HsExpr GhcPs) |
Instance details Defined in GHC.Parser.PostProcess Methods mkHsVarOpPV :: LocatedN RdrName -> PV (LocatedN (HsExpr GhcPs)) mkHsConOpPV :: LocatedN RdrName -> PV (LocatedN (HsExpr GhcPs)) mkHsInfixHolePV :: SrcSpan -> (EpAnnComments -> EpAnn EpAnnUnboundVar) -> PV (Located (HsExpr GhcPs))
type Body (HsExpr GhcPs) |
Instance details Defined in GHC.Parser.PostProcess type Body (HsExpr GhcPs) = HsExpr
type FunArg (HsExpr GhcPs) |
Instance details Defined in GHC.Parser.PostProcess type FunArg (HsExpr GhcPs) = HsExpr GhcPs
type InfixOp (HsExpr GhcPs) |
Instance details Defined in GHC.Parser.PostProcess type InfixOp (HsExpr GhcPs) = HsExpr GhcPs
type Anno (HsExpr (GhcPass p)) |
Instance details Defined in GHC.Hs.Expr type Anno (HsExpr (GhcPass p)) = SrcSpanAnnA
type Anno [LocatedA (Match (GhcPass p) (LocatedA (HsExpr (GhcPass p))))] |
Instance details Defined in GHC.Hs.Expr type Anno [LocatedA (Match (GhcPass p) (LocatedA (HsExpr (GhcPass p))))] = SrcSpanAnnL
type Anno [LocatedA (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (HsExpr (GhcPass pr))))] |
Instance details Defined in GHC.Hs.Expr type Anno [LocatedA (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (HsExpr (GhcPass pr))))] = SrcSpanAnnL
type Anno (GRHS (GhcPass p) (LocatedA (HsExpr (GhcPass p)))) |
Instance details Defined in GHC.Hs.Expr type Anno (GRHS (GhcPass p) (LocatedA (HsExpr (GhcPass p)))) = SrcAnn NoEpAnns
type Anno (Match (GhcPass p) (LocatedA (HsExpr (GhcPass p)))) |
Instance details Defined in GHC.Hs.Expr type Anno (Match (GhcPass p) (LocatedA (HsExpr (GhcPass p)))) = SrcSpanAnnA

data HsLit x #

Constructors

HsChar (XHsChar x) Char |
HsCharPrim (XHsCharPrim x) Char |
HsString (XHsString x) FastString |
HsStringPrim (XHsStringPrim x) !ByteString |
HsInt (XHsInt x) IntegralLit |
HsIntPrim (XHsIntPrim x) Integer |
HsWordPrim (XHsWordPrim x) Integer |
HsInt64Prim (XHsInt64Prim x) Integer |
HsWord64Prim (XHsWord64Prim x) Integer |
HsInteger (XHsInteger x) Integer Type |
HsRat (XHsRat x) FractionalLit Type |
HsFloatPrim (XHsFloatPrim x) FractionalLit |
HsDoublePrim (XHsDoublePrim x) FractionalLit |
XLit !(XXLit x) |

#### Instances

Instances details

Eq (HsLit x) |
Instance details Defined in Language.Haskell.Syntax.Lit Methods (==) :: HsLit x -> HsLit x -> Bool # (/=) :: HsLit x -> HsLit x -> Bool #

data HsMatchContext p #

Constructors

FunRhs |
Fields mc_fun :: LIdP (NoGhcTc p) mc_fixity :: LexicalFixity mc_strictness :: SrcStrictness
LambdaExpr |
CaseAlt |
LamCaseAlt LamCaseVariant |
IfAlt |
ArrowMatchCtxt HsArrowMatchContext |
PatBindRhs |
PatBindGuards |
RecUpd |
StmtCtxt (HsStmtContext p) |
ThPatSplice |
ThPatQuote |
PatSyn |

#### Instances

Instances details

HiePass p => ToHie (HsMatchContext (GhcPass p)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: HsMatchContext (GhcPass p) -> HieM [HieAST Type]

data HsOverLit p #

Constructors

OverLit |
Fields ol_ext :: XOverLit p ol_val :: OverLitVal
XOverLit !(XXOverLit p) |

#### Instances

Instances details

Eq (XXOverLit p) => Eq (HsOverLit p) |
Instance details Defined in Language.Haskell.Syntax.Lit Methods (==) :: HsOverLit p -> HsOverLit p -> Bool # (/=) :: HsOverLit p -> HsOverLit p -> Bool #
Ord (XXOverLit p) => Ord (HsOverLit p) |
Instance details Defined in Language.Haskell.Syntax.Lit Methods compare :: HsOverLit p -> HsOverLit p -> Ordering (<) :: HsOverLit p -> HsOverLit p -> Bool (<=) :: HsOverLit p -> HsOverLit p -> Bool (>) :: HsOverLit p -> HsOverLit p -> Bool (>=) :: HsOverLit p -> HsOverLit p -> Bool max :: HsOverLit p -> HsOverLit p -> HsOverLit p min :: HsOverLit p -> HsOverLit p -> HsOverLit p
type Anno (HsOverLit (GhcPass p)) |
Instance details Defined in GHC.Hs.Pat type Anno (HsOverLit (GhcPass p)) = SrcAnn NoEpAnns

data HsPragE p #

Constructors

HsPragSCC (XSCC p) StringLiteral |
XHsPragE !(XXPragE p) |

data HsQuote p #

Constructors

ExpBr (XExpBr p) (LHsExpr p) |
PatBr (XPatBr p) (LPat p) |
DecBrL (XDecBrL p) [LHsDecl p] |
DecBrG (XDecBrG p) (HsGroup p) |
TypBr (XTypBr p) (LHsType p) |
VarBr (XVarBr p) Bool (LIdP p) |
XQuote !(XXQuote p) |

#### Instances

Instances details

ToHie (HsQuote GhcRn) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: HsQuote GhcRn -> HieM [HieAST Type]

type HsRecordBinds p = HsRecFields p (LHsExpr p) #

data HsStmtContext p #

Constructors

HsDoStmt HsDoFlavour |
PatGuard (HsMatchContext p) |
ParStmtCtxt (HsStmtContext p) |
TransStmtCtxt (HsStmtContext p) |
ArrowExpr |

#### Instances

Instances details

HiePass p => ToHie (HsStmtContext (GhcPass p)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: HsStmtContext (GhcPass p) -> HieM [HieAST Type]

data HsTupArg id #

Constructors

Present (XPresent id) (LHsExpr id) |
Missing (XMissing id) |
XTupArg !(XXTupArg id) |

#### Instances

Instances details

HiePass p => ToHie (HsTupArg (GhcPass p)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: HsTupArg (GhcPass p) -> HieM [HieAST Type]

data HsUntypedSplice id #

Constructors

HsUntypedSpliceExpr (XUntypedSpliceExpr id) (LHsExpr id) |
HsQuasiQuote (XQuasiQuote id) (IdP id) (XRec id FastString) |
XUntypedSplice !(XXUntypedSplice id) |

#### Instances

Instances details

HiePass p => ToHie (LocatedA (HsUntypedSplice (GhcPass p))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (HsUntypedSplice (GhcPass p)) -> HieM [HieAST Type]
type Anno (HsUntypedSplice (GhcPass p)) |
Instance details Defined in GHC.Hs.Expr type Anno (HsUntypedSplice (GhcPass p)) = SrcSpanAnnA

type LFieldLabelStrings p = XRec p (FieldLabelStrings p) #

type LGRHS id body = XRec id (GRHS id body) #

type LHsCmd id = XRec id (HsCmd id) #

type LHsCmdTop p = XRec p (HsCmdTop p) #

type LHsExpr p = XRec p (HsExpr p) #

type LHsRecProj p arg = XRec p (RecProj p arg) #

type LHsRecUpdProj p = XRec p (RecUpdProj p) #

type LHsTupArg id = XRec id (HsTupArg id) #

type LMatch id body = XRec id (Match id body) #

type LStmt id body = XRec id (StmtLR id id body) #

type LStmtLR idL idR body = XRec idL (StmtLR idL idR body) #

data LamCaseVariant #

Constructors

LamCase |
LamCases |

#### Instances

Instances details

Data LamCaseVariant |
Instance details Defined in Language.Haskell.Syntax.Expr Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> LamCaseVariant -> c LamCaseVariant gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c LamCaseVariant toConstr :: LamCaseVariant -> Constr dataTypeOf :: LamCaseVariant -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c LamCaseVariant) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c LamCaseVariant) gmapT :: (forall b. Data b => b -> b) -> LamCaseVariant -> LamCaseVariant gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> LamCaseVariant -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> LamCaseVariant -> r gmapQ :: (forall d. Data d => d -> u) -> LamCaseVariant -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> LamCaseVariant -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> LamCaseVariant -> m LamCaseVariant gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> LamCaseVariant -> m LamCaseVariant gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> LamCaseVariant -> m LamCaseVariant
Eq LamCaseVariant |
Instance details Defined in Language.Haskell.Syntax.Expr Methods (==) :: LamCaseVariant -> LamCaseVariant -> Bool # (/=) :: LamCaseVariant -> LamCaseVariant -> Bool #

data MatchGroup p body #

Constructors

MG |
Fields mg_ext :: XMG p body mg_alts :: XRec p [LMatch p body]
XMatchGroup !(XXMatchGroup p body) |

#### Instances

Instances details

(HiePass p, AnnoBody p body, ToHie (LocatedA (body (GhcPass p)))) => ToHie (MatchGroup (GhcPass p) (LocatedA (body (GhcPass p)))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: MatchGroup (GhcPass p) (LocatedA (body (GhcPass p))) -> HieM [HieAST Type]

data ParStmtBlock idL idR #

Constructors

ParStmtBlock (XParStmtBlock idL idR) [ExprLStmt idL] [IdP idR] (SyntaxExpr idR) |
XParStmtBlock !(XXParStmtBlock idL idR) |

type RecProj p arg = HsFieldBind (LFieldLabelStrings p) arg #

type RecUpdProj p = RecProj p (LHsExpr p) #

data StmtLR idL idR body #

Constructors

LastStmt (XLastStmt idL idR body) body (Maybe Bool) (SyntaxExpr idR) |
BindStmt (XBindStmt idL idR body) (LPat idL) body |
ApplicativeStmt (XApplicativeStmt idL idR body) [(SyntaxExpr idR, ApplicativeArg idL)] (Maybe (SyntaxExpr idR)) |
BodyStmt (XBodyStmt idL idR body) body (SyntaxExpr idR) (SyntaxExpr idR) |
LetStmt (XLetStmt idL idR body) (HsLocalBindsLR idL idR) |
ParStmt (XParStmt idL idR body) [ParStmtBlock idL idR] (HsExpr idR) (SyntaxExpr idR) |
TransStmt |
Fields trS_ext :: XTransStmt idL idR body trS_form :: TransForm trS_stmts :: [ExprLStmt idL] trS_bndrs :: [(IdP idR, IdP idR)] trS_using :: LHsExpr idR trS_by :: Maybe (LHsExpr idR) trS_ret :: SyntaxExpr idR trS_bind :: SyntaxExpr idR trS_fmap :: HsExpr idR
RecStmt |
Fields recS_ext :: XRecStmt idL idR body recS_stmts :: XRec idR [LStmtLR idL idR body] recS_later_ids :: [IdP idR] recS_rec_ids :: [IdP idR] recS_bind_fn :: SyntaxExpr idR recS_ret_fn :: SyntaxExpr idR recS_mfix_fn :: SyntaxExpr idR
XStmtLR !(XXStmtLR idL idR body) |

#### Instances

Instances details

(ToHie (LocatedA (body (GhcPass p))), AnnoBody p body, HiePass p) => ToHie (RScoped (LocatedA (Stmt (GhcPass p) (LocatedA (body (GhcPass p)))))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: RScoped (LocatedA (Stmt (GhcPass p) (LocatedA (body (GhcPass p))))) -> HieM [HieAST Type]
type Anno [LocatedA (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (HsCmd (GhcPass pr))))] |
Instance details Defined in GHC.Hs.Expr type Anno [LocatedA (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (HsCmd (GhcPass pr))))] = SrcSpanAnnL
type Anno [LocatedA (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (HsCmd (GhcPass pr))))] |
Instance details Defined in GHC.Hs.Expr type Anno [LocatedA (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (HsCmd (GhcPass pr))))] = SrcSpanAnnL
type Anno [LocatedA (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (HsCmd (GhcPass pr))))] |
Instance details Defined in GHC.Hs.Expr type Anno [LocatedA (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (HsCmd (GhcPass pr))))] = SrcSpanAnnL
type Anno [LocatedA (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (HsExpr (GhcPass pr))))] |
Instance details Defined in GHC.Hs.Expr type Anno [LocatedA (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (HsExpr (GhcPass pr))))] = SrcSpanAnnL
type Anno [LocatedA (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (body (GhcPass pr))))] |
Instance details Defined in GHC.Hs.Expr type Anno [LocatedA (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (body (GhcPass pr))))] = SrcSpanAnnL
type Anno [LocatedA (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (body (GhcPass pr))))] |
Instance details Defined in GHC.Hs.Expr type Anno [LocatedA (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (body (GhcPass pr))))] = SrcSpanAnnL
type Anno [LocatedA (StmtLR GhcPs GhcPs (LocatedA (PatBuilder GhcPs)))] |
Instance details Defined in GHC.Parser.Types type Anno [LocatedA (StmtLR GhcPs GhcPs (LocatedA (PatBuilder GhcPs)))] = SrcSpanAnnL
type Anno (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (body (GhcPass pr)))) |
Instance details Defined in GHC.Hs.Expr type Anno (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (body (GhcPass pr)))) = SrcSpanAnnA
type Anno (StmtLR GhcPs GhcPs (LocatedA (PatBuilder GhcPs))) |
Instance details Defined in GHC.Parser.PostProcess type Anno (StmtLR GhcPs GhcPs (LocatedA (PatBuilder GhcPs))) = SrcSpanAnnA
type Anno (StmtLR GhcRn GhcRn (LocatedA (body GhcRn))) |
Instance details Defined in GHC.Hs.Expr type Anno (StmtLR GhcRn GhcRn (LocatedA (body GhcRn))) = SrcSpanAnnA

type family SyntaxExpr p #

#### Instances

Instances details

type SyntaxExpr (GhcPass p) |
Instance details Defined in GHC.Hs.Expr type SyntaxExpr (GhcPass p) = SyntaxExprGhc p

data TransForm #

Constructors

ThenForm |
GroupForm |

#### Instances

Instances details

Data TransForm |
Instance details Defined in Language.Haskell.Syntax.Expr Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> TransForm -> c TransForm gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c TransForm toConstr :: TransForm -> Constr dataTypeOf :: TransForm -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c TransForm) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c TransForm) gmapT :: (forall b. Data b => b -> b) -> TransForm -> TransForm gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> TransForm -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> TransForm -> r gmapQ :: (forall d. Data d => d -> u) -> TransForm -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> TransForm -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> TransForm -> m TransForm gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> TransForm -> m TransForm gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> TransForm -> m TransForm

type family XCmdTop x #

#### Instances

Instances details

type XCmdTop GhcPs |
Instance details Defined in GHC.Hs.Expr type XCmdTop GhcPs = NoExtField
type XCmdTop GhcRn |
Instance details Defined in GHC.Hs.Expr type XCmdTop GhcRn = CmdSyntaxTable GhcRn
type XCmdTop GhcTc |
Instance details Defined in GHC.Hs.Expr type XCmdTop GhcTc = CmdTopTc

type family XParStmtBlock x x' #

#### Instances

Instances details

type XParStmtBlock (GhcPass pL) (GhcPass pR) |
Instance details Defined in GHC.Hs.Expr type XParStmtBlock (GhcPass pL) (GhcPass pR) = NoExtField

type family XUntypedSplice x #

#### Instances

Instances details

type XUntypedSplice GhcPs |
Instance details Defined in GHC.Hs.Expr type XUntypedSplice GhcPs = EpAnnCO
type XUntypedSplice GhcRn |
Instance details Defined in GHC.Hs.Expr type XUntypedSplice GhcRn = HsUntypedSpliceResult (HsExpr GhcRn)
type XUntypedSplice GhcTc |
Instance details Defined in GHC.Hs.Expr type XUntypedSplice GhcTc = DataConCantHappen

data DataConCantHappen #

#### Instances

Instances details

Data DataConCantHappen |
Instance details Defined in Language.Haskell.Syntax.Extension Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> DataConCantHappen -> c DataConCantHappen gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c DataConCantHappen toConstr :: DataConCantHappen -> Constr dataTypeOf :: DataConCantHappen -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c DataConCantHappen) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c DataConCantHappen) gmapT :: (forall b. Data b => b -> b) -> DataConCantHappen -> DataConCantHappen gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> DataConCantHappen -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> DataConCantHappen -> r gmapQ :: (forall d. Data d => d -> u) -> DataConCantHappen -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> DataConCantHappen -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> DataConCantHappen -> m DataConCantHappen gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> DataConCantHappen -> m DataConCantHappen gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> DataConCantHappen -> m DataConCantHappen
Eq DataConCantHappen |
Instance details Defined in Language.Haskell.Syntax.Extension Methods (==) :: DataConCantHappen -> DataConCantHappen -> Bool # (/=) :: DataConCantHappen -> DataConCantHappen -> Bool #
Ord DataConCantHappen |
Instance details Defined in Language.Haskell.Syntax.Extension Methods compare :: DataConCantHappen -> DataConCantHappen -> Ordering (<) :: DataConCantHappen -> DataConCantHappen -> Bool (<=) :: DataConCantHappen -> DataConCantHappen -> Bool (>) :: DataConCantHappen -> DataConCantHappen -> Bool (>=) :: DataConCantHappen -> DataConCantHappen -> Bool max :: DataConCantHappen -> DataConCantHappen -> DataConCantHappen min :: DataConCantHappen -> DataConCantHappen -> DataConCantHappen

type family ImportDeclPkgQual x #

#### Instances

Instances details

type ImportDeclPkgQual GhcPs |
Instance details Defined in GHC.Hs.ImpExp type ImportDeclPkgQual GhcPs = RawPkgQual
type ImportDeclPkgQual GhcRn |
Instance details Defined in GHC.Hs.ImpExp type ImportDeclPkgQual GhcRn = PkgQual
type ImportDeclPkgQual GhcTc |
Instance details Defined in GHC.Hs.ImpExp type ImportDeclPkgQual GhcTc = PkgQual

type LIdP p = XRec p (IdP p) #

class MapXRec p where #

Methods

mapXRec :: Anno a ~ Anno b => (a -> b) -> XRec p a -> XRec p b #

#### Instances

Instances details

MapXRec (GhcPass p) |
Instance details Defined in GHC.Hs.Extension Methods mapXRec :: Anno a ~ Anno b => (a -> b) -> XRec (GhcPass p) a -> XRec (GhcPass p) b #

data NoExtField #

Constructors

NoExtField |

#### Instances

Instances details

Data NoExtField |
Instance details Defined in Language.Haskell.Syntax.Extension Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> NoExtField -> c NoExtField gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c NoExtField toConstr :: NoExtField -> Constr dataTypeOf :: NoExtField -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c NoExtField) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c NoExtField) gmapT :: (forall b. Data b => b -> b) -> NoExtField -> NoExtField gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> NoExtField -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> NoExtField -> r gmapQ :: (forall d. Data d => d -> u) -> NoExtField -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> NoExtField -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> NoExtField -> m NoExtField gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> NoExtField -> m NoExtField gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> NoExtField -> m NoExtField
Eq NoExtField |
Instance details Defined in Language.Haskell.Syntax.Extension Methods (==) :: NoExtField -> NoExtField -> Bool # (/=) :: NoExtField -> NoExtField -> Bool #
Ord NoExtField |
Instance details Defined in Language.Haskell.Syntax.Extension Methods compare :: NoExtField -> NoExtField -> Ordering (<) :: NoExtField -> NoExtField -> Bool (<=) :: NoExtField -> NoExtField -> Bool (>) :: NoExtField -> NoExtField -> Bool (>=) :: NoExtField -> NoExtField -> Bool max :: NoExtField -> NoExtField -> NoExtField min :: NoExtField -> NoExtField -> NoExtField
ToHie (Context (Located NoExtField)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: Context (Located NoExtField) -> HieM [HieAST Type]

type family NoGhcTc p #

#### Instances

Instances details

type NoGhcTc (GhcPass pass) |
Instance details Defined in GHC.Hs.Extension type NoGhcTc (GhcPass pass) = GhcPass (NoGhcTcPass pass)

class UnXRec p where #

Methods

unXRec :: XRec p a -> a #

#### Instances

Instances details

UnXRec (GhcPass p) |
Instance details Defined in GHC.Hs.Extension Methods unXRec :: XRec (GhcPass p) a -> a #

class WrapXRec p a where #

Methods

wrapXRec :: a -> XRec p a #

type family XAmbiguous x #

#### Instances

Instances details

type XAmbiguous GhcPs |
Instance details Defined in GHC.Hs.Type type XAmbiguous GhcPs = NoExtField
type XAmbiguous GhcRn |
Instance details Defined in GHC.Hs.Type type XAmbiguous GhcRn = NoExtField
type XAmbiguous GhcTc |
Instance details Defined in GHC.Hs.Type type XAmbiguous GhcTc = Id

type family XAnnD x #

#### Instances

Instances details

type XAnnD (GhcPass _1) |
Instance details Defined in GHC.Hs.Decls type XAnnD (GhcPass _1) = NoExtField

type family XAnyClassStrategy x #

#### Instances

Instances details

type XAnyClassStrategy GhcPs |
Instance details Defined in GHC.Hs.Decls type XAnyClassStrategy GhcPs = EpAnn [AddEpAnn]
type XAnyClassStrategy GhcRn |
Instance details Defined in GHC.Hs.Decls type XAnyClassStrategy GhcRn = NoExtField
type XAnyClassStrategy GhcTc |
Instance details Defined in GHC.Hs.Decls type XAnyClassStrategy GhcTc = NoExtField

type family XApp x #

#### Instances

Instances details

type XApp (GhcPass _1) |
Instance details Defined in GHC.Hs.Expr type XApp (GhcPass _1) = EpAnnCO

type family XAppKindTy x #

#### Instances

Instances details

type XAppKindTy (GhcPass _1) |
Instance details Defined in GHC.Hs.Type type XAppKindTy (GhcPass _1) = SrcSpan

type family XAppTy x #

#### Instances

Instances details

type XAppTy (GhcPass _1) |
Instance details Defined in GHC.Hs.Type type XAppTy (GhcPass _1) = NoExtField

type family XAppTypeE x #

#### Instances

Instances details

type XAppTypeE GhcPs |
Instance details Defined in GHC.Hs.Expr type XAppTypeE GhcPs = NoExtField
type XAppTypeE GhcRn |
Instance details Defined in GHC.Hs.Expr type XAppTypeE GhcRn = NoExtField
type XAppTypeE GhcTc |
Instance details Defined in GHC.Hs.Expr type XAppTypeE GhcTc = Type

type family XApplicativeArgMany x #

#### Instances

Instances details

type XApplicativeArgMany (GhcPass _1) |
Instance details Defined in GHC.Hs.Expr type XApplicativeArgMany (GhcPass _1) = NoExtField

type family XApplicativeArgOne x #

#### Instances

Instances details

type XApplicativeArgOne GhcPs |
Instance details Defined in GHC.Hs.Expr type XApplicativeArgOne GhcPs = NoExtField
type XApplicativeArgOne GhcRn |
Instance details Defined in GHC.Hs.Expr type XApplicativeArgOne GhcRn = FailOperator GhcRn
type XApplicativeArgOne GhcTc |
Instance details Defined in GHC.Hs.Expr type XApplicativeArgOne GhcTc = FailOperator GhcTc

type family XApplicativeStmt x x' b #

#### Instances

Instances details

type XApplicativeStmt (GhcPass _1) GhcPs b |
Instance details Defined in GHC.Hs.Expr type XApplicativeStmt (GhcPass _1) GhcPs b = NoExtField
type XApplicativeStmt (GhcPass _1) GhcRn b |
Instance details Defined in GHC.Hs.Expr type XApplicativeStmt (GhcPass _1) GhcRn b = NoExtField
type XApplicativeStmt (GhcPass _1) GhcTc b |
Instance details Defined in GHC.Hs.Expr type XApplicativeStmt (GhcPass _1) GhcTc b = Type

type family XArithSeq x #

#### Instances

Instances details

type XArithSeq GhcPs |
Instance details Defined in GHC.Hs.Expr type XArithSeq GhcPs = EpAnn [AddEpAnn]
type XArithSeq GhcRn |
Instance details Defined in GHC.Hs.Expr type XArithSeq GhcRn = NoExtField
type XArithSeq GhcTc |
Instance details Defined in GHC.Hs.Expr type XArithSeq GhcTc = PostTcExpr

type family XAsPat x #

#### Instances

Instances details

type XAsPat GhcPs |
Instance details Defined in GHC.Hs.Pat type XAsPat GhcPs = EpAnnCO
type XAsPat GhcRn |
Instance details Defined in GHC.Hs.Pat type XAsPat GhcRn = NoExtField
type XAsPat GhcTc |
Instance details Defined in GHC.Hs.Pat type XAsPat GhcTc = NoExtField

type family XBangPat x #

#### Instances

Instances details

type XBangPat GhcPs |
Instance details Defined in GHC.Hs.Pat type XBangPat GhcPs = EpAnn [AddEpAnn]
type XBangPat GhcRn |
Instance details Defined in GHC.Hs.Pat type XBangPat GhcRn = NoExtField
type XBangPat GhcTc |
Instance details Defined in GHC.Hs.Pat type XBangPat GhcTc = NoExtField

type family XBangTy x #

#### Instances

Instances details

type XBangTy (GhcPass _1) |
Instance details Defined in GHC.Hs.Type type XBangTy (GhcPass _1) = EpAnn [AddEpAnn]

type family XBinTick x #

type family XBindStmt x x' b #

#### Instances

Instances details

type XBindStmt (GhcPass _1) GhcPs b |
Instance details Defined in GHC.Hs.Expr type XBindStmt (GhcPass _1) GhcPs b = EpAnn [AddEpAnn]
type XBindStmt (GhcPass _1) GhcRn b |
Instance details Defined in GHC.Hs.Expr type XBindStmt (GhcPass _1) GhcRn b = XBindStmtRn
type XBindStmt (GhcPass _1) GhcTc b |
Instance details Defined in GHC.Hs.Expr type XBindStmt (GhcPass _1) GhcTc b = XBindStmtTc

type family XBodyStmt x x' b #

#### Instances

Instances details

type XBodyStmt (GhcPass _1) GhcPs b |
Instance details Defined in GHC.Hs.Expr type XBodyStmt (GhcPass _1) GhcPs b = NoExtField
type XBodyStmt (GhcPass _1) GhcRn b |
Instance details Defined in GHC.Hs.Expr type XBodyStmt (GhcPass _1) GhcRn b = NoExtField
type XBodyStmt (GhcPass _1) GhcTc b |
Instance details Defined in GHC.Hs.Expr type XBodyStmt (GhcPass _1) GhcTc b = Type

type family XCClsInstDecl x #

#### Instances

Instances details

type XCClsInstDecl GhcPs |
Instance details Defined in GHC.Hs.Decls type XCClsInstDecl GhcPs = (EpAnn [AddEpAnn], AnnSortKey)
type XCClsInstDecl GhcRn |
Instance details Defined in GHC.Hs.Decls type XCClsInstDecl GhcRn = NoExtField
type XCClsInstDecl GhcTc |
Instance details Defined in GHC.Hs.Decls type XCClsInstDecl GhcTc = NoExtField

type family XCDefaultDecl x #

#### Instances

Instances details

type XCDefaultDecl GhcPs |
Instance details Defined in GHC.Hs.Decls type XCDefaultDecl GhcPs = EpAnn [AddEpAnn]
type XCDefaultDecl GhcRn |
Instance details Defined in GHC.Hs.Decls type XCDefaultDecl GhcRn = NoExtField
type XCDefaultDecl GhcTc |
Instance details Defined in GHC.Hs.Decls type XCDefaultDecl GhcTc = NoExtField

type family XCDerivDecl x #

#### Instances

Instances details

type XCDerivDecl (GhcPass _1) |
Instance details Defined in GHC.Hs.Decls type XCDerivDecl (GhcPass _1) = EpAnn [AddEpAnn]

type family XCDotFieldOcc x #

#### Instances

Instances details

type XCDotFieldOcc (GhcPass _1) |
Instance details Defined in GHC.Hs.Expr type XCDotFieldOcc (GhcPass _1) = EpAnn AnnFieldLabel

type family XCExport x #

#### Instances

Instances details

type XCExport (GhcPass _1) |
Instance details Defined in GHC.Hs.Decls type XCExport (GhcPass _1) = Located SourceText

type family XCFamEqn x r #

#### Instances

Instances details

type XCFamEqn (GhcPass _1) r |
Instance details Defined in GHC.Hs.Decls type XCFamEqn (GhcPass _1) r = EpAnn [AddEpAnn]

type family XCFamilyDecl x #

#### Instances

Instances details

type XCFamilyDecl (GhcPass _1) |
Instance details Defined in GHC.Hs.Decls type XCFamilyDecl (GhcPass _1) = EpAnn [AddEpAnn]

type family XCFieldOcc x #

#### Instances

Instances details

type XCFieldOcc GhcPs |
Instance details Defined in GHC.Hs.Type type XCFieldOcc GhcPs = NoExtField
type XCFieldOcc GhcRn |
Instance details Defined in GHC.Hs.Type type XCFieldOcc GhcRn = Name
type XCFieldOcc GhcTc |
Instance details Defined in GHC.Hs.Type type XCFieldOcc GhcTc = Id

type family XCFunDep x #

#### Instances

Instances details

type XCFunDep (GhcPass _1) |
Instance details Defined in GHC.Hs.Decls type XCFunDep (GhcPass _1) = EpAnn [AddEpAnn]

type family XCGRHS x b #

#### Instances

Instances details

type XCGRHS (GhcPass _1) _2 |
Instance details Defined in GHC.Hs.Expr type XCGRHS (GhcPass _1) _2 = EpAnn GrhsAnn

type family XCGRHSs x b #

#### Instances

Instances details

type XCGRHSs (GhcPass _1) _2 |
Instance details Defined in GHC.Hs.Expr type XCGRHSs (GhcPass _1) _2 = EpAnnComments

type family XCHsDataDefn x #

#### Instances

Instances details

type XCHsDataDefn (GhcPass _1) |
Instance details Defined in GHC.Hs.Decls type XCHsDataDefn (GhcPass _1) = NoExtField

type family XCHsDerivingClause x #

#### Instances

Instances details

type XCHsDerivingClause (GhcPass _1) |
Instance details Defined in GHC.Hs.Decls type XCHsDerivingClause (GhcPass _1) = EpAnn [AddEpAnn]

type family XCHsGroup x #

#### Instances

Instances details

type XCHsGroup (GhcPass _1) |
Instance details Defined in GHC.Hs.Decls type XCHsGroup (GhcPass _1) = NoExtField

type family XCIPBind x #

#### Instances

Instances details

type XCIPBind GhcPs |
Instance details Defined in GHC.Hs.Binds type XCIPBind GhcPs = EpAnn [AddEpAnn]
type XCIPBind GhcRn |
Instance details Defined in GHC.Hs.Binds type XCIPBind GhcRn = NoExtField
type XCIPBind GhcTc |
Instance details Defined in GHC.Hs.Binds type XCIPBind GhcTc = Id

type family XCImport x #

#### Instances

Instances details

type XCImport (GhcPass _1) |
Instance details Defined in GHC.Hs.Decls type XCImport (GhcPass _1) = Located SourceText

type family XCImportDecl x #

#### Instances

Instances details

type XCImportDecl GhcPs |
Instance details Defined in GHC.Hs.ImpExp type XCImportDecl GhcPs = XImportDeclPass
type XCImportDecl GhcRn |
Instance details Defined in GHC.Hs.ImpExp type XCImportDecl GhcRn = XImportDeclPass
type XCImportDecl GhcTc |
Instance details Defined in GHC.Hs.ImpExp type XCImportDecl GhcTc = DataConCantHappen

type family XCInjectivityAnn x #

#### Instances

Instances details

type XCInjectivityAnn (GhcPass _1) |
Instance details Defined in GHC.Hs.Decls type XCInjectivityAnn (GhcPass _1) = EpAnn [AddEpAnn]

type family XCKindSig x #

#### Instances

Instances details

type XCKindSig (GhcPass _1) |
Instance details Defined in GHC.Hs.Decls type XCKindSig (GhcPass _1) = NoExtField

type family XCMatch x b #

#### Instances

Instances details

type XCMatch (GhcPass _1) b |
Instance details Defined in GHC.Hs.Expr type XCMatch (GhcPass _1) b = EpAnn [AddEpAnn]

type family XCModule x #

#### Instances

Instances details

type XCModule GhcPs |
Instance details Defined in GHC.Hs type XCModule GhcPs = XModulePs
type XCModule GhcRn |
Instance details Defined in GHC.Hs type XCModule GhcRn = DataConCantHappen
type XCModule GhcTc |
Instance details Defined in GHC.Hs type XCModule GhcTc = DataConCantHappen

type family XCRoleAnnotDecl x #

#### Instances

Instances details

type XCRoleAnnotDecl GhcPs |
Instance details Defined in GHC.Hs.Decls type XCRoleAnnotDecl GhcPs = EpAnn [AddEpAnn]
type XCRoleAnnotDecl GhcRn |
Instance details Defined in GHC.Hs.Decls type XCRoleAnnotDecl GhcRn = NoExtField
type XCRoleAnnotDecl GhcTc |
Instance details Defined in GHC.Hs.Decls type XCRoleAnnotDecl GhcTc = NoExtField

type family XCRuleBndr x #

#### Instances

Instances details

type XCRuleBndr (GhcPass _1) |
Instance details Defined in GHC.Hs.Decls type XCRuleBndr (GhcPass _1) = EpAnn [AddEpAnn]

type family XCRuleDecls x #

#### Instances

Instances details

type XCRuleDecls GhcPs |
Instance details Defined in GHC.Hs.Decls type XCRuleDecls GhcPs = (EpAnn [AddEpAnn], SourceText)
type XCRuleDecls GhcRn |
Instance details Defined in GHC.Hs.Decls type XCRuleDecls GhcRn = SourceText
type XCRuleDecls GhcTc |
Instance details Defined in GHC.Hs.Decls type XCRuleDecls GhcTc = SourceText

type family XCTyClGroup x #

#### Instances

Instances details

type XCTyClGroup (GhcPass _1) |
Instance details Defined in GHC.Hs.Decls type XCTyClGroup (GhcPass _1) = NoExtField

type family XCTyFamInstDecl x #

#### Instances

Instances details

type XCTyFamInstDecl (GhcPass _1) |
Instance details Defined in GHC.Hs.Decls type XCTyFamInstDecl (GhcPass _1) = EpAnn [AddEpAnn]

type family XCase x #

#### Instances

Instances details

type XCase GhcPs |
Instance details Defined in GHC.Hs.Expr type XCase GhcPs = EpAnn EpAnnHsCase
type XCase GhcRn |
Instance details Defined in GHC.Hs.Expr type XCase GhcRn = NoExtField
type XCase GhcTc |
Instance details Defined in GHC.Hs.Expr type XCase GhcTc = NoExtField

type family XCharTy x #

#### Instances

Instances details

type XCharTy (GhcPass _1) |
Instance details Defined in GHC.Hs.Type type XCharTy (GhcPass _1) = SourceText

type family XClassDecl x #

#### Instances

Instances details

type XClassDecl GhcPs |
Instance details Defined in GHC.Hs.Decls type XClassDecl GhcPs = (EpAnn [AddEpAnn], AnnSortKey)
type XClassDecl GhcRn |
Instance details Defined in GHC.Hs.Decls type XClassDecl GhcRn = NameSet
type XClassDecl GhcTc |
Instance details Defined in GHC.Hs.Decls type XClassDecl GhcTc = NameSet

type family XClassOpSig x #

#### Instances

Instances details

type XClassOpSig (GhcPass p) |
Instance details Defined in GHC.Hs.Binds type XClassOpSig (GhcPass p) = EpAnn AnnSig

type family XClsInstD x #

#### Instances

Instances details

type XClsInstD (GhcPass _1) |
Instance details Defined in GHC.Hs.Decls type XClsInstD (GhcPass _1) = NoExtField

type family XCmdApp x #

#### Instances

Instances details

type XCmdApp (GhcPass _1) |
Instance details Defined in GHC.Hs.Expr type XCmdApp (GhcPass _1) = EpAnnCO

type family XCmdArrApp x #

#### Instances

Instances details

type XCmdArrApp GhcPs |
Instance details Defined in GHC.Hs.Expr type XCmdArrApp GhcPs = EpAnn AddEpAnn
type XCmdArrApp GhcRn |
Instance details Defined in GHC.Hs.Expr type XCmdArrApp GhcRn = NoExtField
type XCmdArrApp GhcTc |
Instance details Defined in GHC.Hs.Expr type XCmdArrApp GhcTc = Type

type family XCmdArrForm x #

#### Instances

Instances details

type XCmdArrForm GhcPs |
Instance details Defined in GHC.Hs.Expr type XCmdArrForm GhcPs = EpAnn AnnList
type XCmdArrForm GhcRn |
Instance details Defined in GHC.Hs.Expr type XCmdArrForm GhcRn = NoExtField
type XCmdArrForm GhcTc |
Instance details Defined in GHC.Hs.Expr type XCmdArrForm GhcTc = NoExtField

type family XCmdCase x #

#### Instances

Instances details

type XCmdCase GhcPs |
Instance details Defined in GHC.Hs.Expr type XCmdCase GhcPs = EpAnn EpAnnHsCase
type XCmdCase GhcRn |
Instance details Defined in GHC.Hs.Expr type XCmdCase GhcRn = NoExtField
type XCmdCase GhcTc |
Instance details Defined in GHC.Hs.Expr type XCmdCase GhcTc = NoExtField

type family XCmdDo x #

#### Instances

Instances details

type XCmdDo GhcPs |
Instance details Defined in GHC.Hs.Expr type XCmdDo GhcPs = EpAnn AnnList
type XCmdDo GhcRn |
Instance details Defined in GHC.Hs.Expr type XCmdDo GhcRn = NoExtField
type XCmdDo GhcTc |
Instance details Defined in GHC.Hs.Expr type XCmdDo GhcTc = Type

type family XCmdIf x #

#### Instances

Instances details

type XCmdIf GhcPs |
Instance details Defined in GHC.Hs.Expr type XCmdIf GhcPs = EpAnn AnnsIf
type XCmdIf GhcRn |
Instance details Defined in GHC.Hs.Expr type XCmdIf GhcRn = NoExtField
type XCmdIf GhcTc |
Instance details Defined in GHC.Hs.Expr type XCmdIf GhcTc = NoExtField

type family XCmdLam x #

#### Instances

Instances details

type XCmdLam (GhcPass _1) |
Instance details Defined in GHC.Hs.Expr type XCmdLam (GhcPass _1) = NoExtField

type family XCmdLamCase x #

#### Instances

Instances details

type XCmdLamCase (GhcPass _1) |
Instance details Defined in GHC.Hs.Expr type XCmdLamCase (GhcPass _1) = EpAnn [AddEpAnn]

type family XCmdLet x #

#### Instances

Instances details

type XCmdLet GhcPs |
Instance details Defined in GHC.Hs.Expr type XCmdLet GhcPs = EpAnnCO
type XCmdLet GhcRn |
Instance details Defined in GHC.Hs.Expr type XCmdLet GhcRn = NoExtField
type XCmdLet GhcTc |
Instance details Defined in GHC.Hs.Expr type XCmdLet GhcTc = NoExtField

type family XCmdPar x #

#### Instances

Instances details

type XCmdPar (GhcPass _1) |
Instance details Defined in GHC.Hs.Expr type XCmdPar (GhcPass _1) = EpAnnCO

type family XCmdWrap x #

#### Instances

Instances details

type XCmdWrap (GhcPass _1) |
Instance details Defined in GHC.Hs.Expr type XCmdWrap (GhcPass _1) = NoExtField

type family XCoPat x #

type family XCompleteMatchSig x #

#### Instances

Instances details

type XCompleteMatchSig (GhcPass p) |
Instance details Defined in GHC.Hs.Binds type XCompleteMatchSig (GhcPass p) = (EpAnn [AddEpAnn], SourceText)

type family XConDeclField x #

#### Instances

Instances details

type XConDeclField (GhcPass _1) |
Instance details Defined in GHC.Hs.Type type XConDeclField (GhcPass _1) = EpAnn [AddEpAnn]

type family XConDeclGADT x #

#### Instances

Instances details

type XConDeclGADT (GhcPass _1) |
Instance details Defined in GHC.Hs.Decls type XConDeclGADT (GhcPass _1) = EpAnn [AddEpAnn]

type family XConDeclH98 x #

#### Instances

Instances details

type XConDeclH98 (GhcPass _1) |
Instance details Defined in GHC.Hs.Decls type XConDeclH98 (GhcPass _1) = EpAnn [AddEpAnn]

type family XConPat x #

#### Instances

Instances details

type XConPat GhcPs |
Instance details Defined in GHC.Hs.Pat type XConPat GhcPs = EpAnn [AddEpAnn]
type XConPat GhcRn |
Instance details Defined in GHC.Hs.Pat type XConPat GhcRn = NoExtField
type XConPat GhcTc |
Instance details Defined in GHC.Hs.Pat type XConPat GhcTc = ConPatTc

type family XDataDecl x #

#### Instances

Instances details

type XDataDecl GhcPs |
Instance details Defined in GHC.Hs.Decls type XDataDecl GhcPs = EpAnn [AddEpAnn]
type XDataDecl GhcRn |
Instance details Defined in GHC.Hs.Decls type XDataDecl GhcRn = DataDeclRn
type XDataDecl GhcTc |
Instance details Defined in GHC.Hs.Decls type XDataDecl GhcTc = DataDeclRn

type family XDataFamInstD x #

#### Instances

Instances details

type XDataFamInstD (GhcPass _1) |
Instance details Defined in GHC.Hs.Decls type XDataFamInstD (GhcPass _1) = NoExtField

type family XDctMulti x #

#### Instances

Instances details

type XDctMulti (GhcPass _1) |
Instance details Defined in GHC.Hs.Decls type XDctMulti (GhcPass _1) = NoExtField

type family XDctSingle x #

#### Instances

Instances details

type XDctSingle (GhcPass _1) |
Instance details Defined in GHC.Hs.Decls type XDctSingle (GhcPass _1) = NoExtField

type family XDecBrG x #

#### Instances

Instances details

type XDecBrG GhcPs |
Instance details Defined in GHC.Hs.Expr type XDecBrG GhcPs = NoExtField
type XDecBrG GhcRn |
Instance details Defined in GHC.Hs.Expr type XDecBrG GhcRn = NoExtField
type XDecBrG GhcTc |
Instance details Defined in GHC.Hs.Expr type XDecBrG GhcTc = DataConCantHappen

type family XDecBrL x #

#### Instances

Instances details

type XDecBrL GhcPs |
Instance details Defined in GHC.Hs.Expr type XDecBrL GhcPs = NoExtField
type XDecBrL GhcRn |
Instance details Defined in GHC.Hs.Expr type XDecBrL GhcRn = NoExtField
type XDecBrL GhcTc |
Instance details Defined in GHC.Hs.Expr type XDecBrL GhcTc = DataConCantHappen

type family XDefD x #

#### Instances

Instances details

type XDefD (GhcPass _1) |
Instance details Defined in GHC.Hs.Decls type XDefD (GhcPass _1) = NoExtField

type family XDerivD x #

#### Instances

Instances details

type XDerivD (GhcPass _1) |
Instance details Defined in GHC.Hs.Decls type XDerivD (GhcPass _1) = NoExtField

type family XDo x #

#### Instances

Instances details

type XDo GhcPs |
Instance details Defined in GHC.Hs.Expr type XDo GhcPs = EpAnn AnnList
type XDo GhcRn |
Instance details Defined in GHC.Hs.Expr type XDo GhcRn = NoExtField
type XDo GhcTc |
Instance details Defined in GHC.Hs.Expr type XDo GhcTc = Type

type family XDocD x #

#### Instances

Instances details

type XDocD (GhcPass _1) |
Instance details Defined in GHC.Hs.Decls type XDocD (GhcPass _1) = NoExtField

type family XDocTy x #

#### Instances

Instances details

type XDocTy (GhcPass _1) |
Instance details Defined in GHC.Hs.Type type XDocTy (GhcPass _1) = EpAnn [AddEpAnn]

type family XEmptyLocalBinds x x' #

#### Instances

Instances details

type XEmptyLocalBinds (GhcPass pL) (GhcPass pR) |
Instance details Defined in GHC.Hs.Binds type XEmptyLocalBinds (GhcPass pL) (GhcPass pR) = NoExtField

type family XExpBr x #

#### Instances

Instances details

type XExpBr GhcPs |
Instance details Defined in GHC.Hs.Expr type XExpBr GhcPs = NoExtField
type XExpBr GhcRn |
Instance details Defined in GHC.Hs.Expr type XExpBr GhcRn = NoExtField
type XExpBr GhcTc |
Instance details Defined in GHC.Hs.Expr type XExpBr GhcTc = DataConCantHappen

type family XExplicitList x #

#### Instances

Instances details

type XExplicitList GhcPs |
Instance details Defined in GHC.Hs.Expr type XExplicitList GhcPs = EpAnn AnnList
type XExplicitList GhcRn |
Instance details Defined in GHC.Hs.Expr type XExplicitList GhcRn = NoExtField
type XExplicitList GhcTc |
Instance details Defined in GHC.Hs.Expr type XExplicitList GhcTc = Type

type family XExplicitListTy x #

#### Instances

Instances details

type XExplicitListTy GhcPs |
Instance details Defined in GHC.Hs.Type type XExplicitListTy GhcPs = EpAnn [AddEpAnn]
type XExplicitListTy GhcRn |
Instance details Defined in GHC.Hs.Type type XExplicitListTy GhcRn = NoExtField
type XExplicitListTy GhcTc |
Instance details Defined in GHC.Hs.Type type XExplicitListTy GhcTc = Kind

type family XExplicitSum x #

#### Instances

Instances details

type XExplicitSum GhcPs |
Instance details Defined in GHC.Hs.Expr type XExplicitSum GhcPs = EpAnn AnnExplicitSum
type XExplicitSum GhcRn |
Instance details Defined in GHC.Hs.Expr type XExplicitSum GhcRn = NoExtField
type XExplicitSum GhcTc |
Instance details Defined in GHC.Hs.Expr type XExplicitSum GhcTc = [Type]

type family XExplicitTuple x #

#### Instances

Instances details

type XExplicitTuple GhcPs |
Instance details Defined in GHC.Hs.Expr type XExplicitTuple GhcPs = EpAnn [AddEpAnn]
type XExplicitTuple GhcRn |
Instance details Defined in GHC.Hs.Expr type XExplicitTuple GhcRn = NoExtField
type XExplicitTuple GhcTc |
Instance details Defined in GHC.Hs.Expr type XExplicitTuple GhcTc = NoExtField

type family XExplicitTupleTy x #

#### Instances

Instances details

type XExplicitTupleTy GhcPs |
Instance details Defined in GHC.Hs.Type type XExplicitTupleTy GhcPs = EpAnn [AddEpAnn]
type XExplicitTupleTy GhcRn |
Instance details Defined in GHC.Hs.Type type XExplicitTupleTy GhcRn = NoExtField
type XExplicitTupleTy GhcTc |
Instance details Defined in GHC.Hs.Type type XExplicitTupleTy GhcTc = [Kind]

type family XExprWithTySig x #

#### Instances

Instances details

type XExprWithTySig GhcPs |
Instance details Defined in GHC.Hs.Expr type XExprWithTySig GhcPs = EpAnn [AddEpAnn]
type XExprWithTySig GhcRn |
Instance details Defined in GHC.Hs.Expr type XExprWithTySig GhcRn = NoExtField
type XExprWithTySig GhcTc |
Instance details Defined in GHC.Hs.Expr type XExprWithTySig GhcTc = NoExtField

type family XFamDecl x #

#### Instances

Instances details

type XFamDecl (GhcPass _1) |
Instance details Defined in GHC.Hs.Decls type XFamDecl (GhcPass _1) = NoExtField

type family XFixSig x #

#### Instances

Instances details

type XFixSig (GhcPass p) |
Instance details Defined in GHC.Hs.Binds type XFixSig (GhcPass p) = EpAnn [AddEpAnn]

type family XForAllTy x #

#### Instances

Instances details

type XForAllTy (GhcPass _1) |
Instance details Defined in GHC.Hs.Type type XForAllTy (GhcPass _1) = NoExtField

type family XForD x #

#### Instances

Instances details

type XForD (GhcPass _1) |
Instance details Defined in GHC.Hs.Decls type XForD (GhcPass _1) = NoExtField

type family XFunBind x x' #

#### Instances

Instances details

type XFunBind (GhcPass pL) GhcPs |
Instance details Defined in GHC.Hs.Binds type XFunBind (GhcPass pL) GhcPs = NoExtField
type XFunBind (GhcPass pL) GhcRn |
Instance details Defined in GHC.Hs.Binds type XFunBind (GhcPass pL) GhcRn = NameSet
type XFunBind (GhcPass pL) GhcTc |
Instance details Defined in GHC.Hs.Binds type XFunBind (GhcPass pL) GhcTc = (HsWrapper, [CoreTickish])

type family XFunTy x #

#### Instances

Instances details

type XFunTy (GhcPass _1) |
Instance details Defined in GHC.Hs.Type type XFunTy (GhcPass _1) = EpAnnCO

type family XGetField x #

#### Instances

Instances details

type XGetField GhcPs |
Instance details Defined in GHC.Hs.Expr type XGetField GhcPs = EpAnnCO
type XGetField GhcRn |
Instance details Defined in GHC.Hs.Expr type XGetField GhcRn = NoExtField
type XGetField GhcTc |
Instance details Defined in GHC.Hs.Expr type XGetField GhcTc = DataConCantHappen

type family XHsAnnotation x #

#### Instances

Instances details

type XHsAnnotation (GhcPass _1) |
Instance details Defined in GHC.Hs.Decls type XHsAnnotation (GhcPass _1) = (EpAnn AnnPragma, SourceText)

type family XHsChar x #

#### Instances

Instances details

type XHsChar (GhcPass _1) |
Instance details Defined in GHC.Hs.Lit type XHsChar (GhcPass _1) = SourceText

type family XHsCharPrim x #

#### Instances

Instances details

type XHsCharPrim (GhcPass _1) |
Instance details Defined in GHC.Hs.Lit type XHsCharPrim (GhcPass _1) = SourceText

type family XHsDoublePrim x #

#### Instances

Instances details

type XHsDoublePrim (GhcPass _1) |
Instance details Defined in GHC.Hs.Lit type XHsDoublePrim (GhcPass _1) = NoExtField

type family XHsFieldBind x #

#### Instances

Instances details

type XHsFieldBind _1 |
Instance details Defined in GHC.Hs.Pat type XHsFieldBind _1 = EpAnn [AddEpAnn]

type family XHsFloatPrim x #

#### Instances

Instances details

type XHsFloatPrim (GhcPass _1) |
Instance details Defined in GHC.Hs.Lit type XHsFloatPrim (GhcPass _1) = NoExtField

type family XHsForAllInvis x #

#### Instances

Instances details

type XHsForAllInvis (GhcPass _1) |
Instance details Defined in GHC.Hs.Type type XHsForAllInvis (GhcPass _1) = EpAnnForallTy

type family XHsForAllVis x #

#### Instances

Instances details

type XHsForAllVis (GhcPass _1) |
Instance details Defined in GHC.Hs.Type type XHsForAllVis (GhcPass _1) = EpAnnForallTy

type family XHsInt x #

#### Instances

Instances details

type XHsInt (GhcPass _1) |
Instance details Defined in GHC.Hs.Lit type XHsInt (GhcPass _1) = NoExtField

type family XHsInt64Prim x #

#### Instances

Instances details

type XHsInt64Prim (GhcPass _1) |
Instance details Defined in GHC.Hs.Lit type XHsInt64Prim (GhcPass _1) = SourceText

type family XHsIntPrim x #

#### Instances

Instances details

type XHsIntPrim (GhcPass _1) |
Instance details Defined in GHC.Hs.Lit type XHsIntPrim (GhcPass _1) = SourceText

type family XHsInteger x #

#### Instances

Instances details

type XHsInteger (GhcPass _1) |
Instance details Defined in GHC.Hs.Lit type XHsInteger (GhcPass _1) = SourceText

type family XHsOuterExplicit x flag #

#### Instances

Instances details

type XHsOuterExplicit GhcPs _1 |
Instance details Defined in GHC.Hs.Type type XHsOuterExplicit GhcPs _1 = EpAnnForallTy
type XHsOuterExplicit GhcRn _1 |
Instance details Defined in GHC.Hs.Type type XHsOuterExplicit GhcRn _1 = NoExtField
type XHsOuterExplicit GhcTc flag |
Instance details Defined in GHC.Hs.Type type XHsOuterExplicit GhcTc flag = [VarBndr TyVar flag]

type family XHsOuterImplicit x #

#### Instances

Instances details

type XHsOuterImplicit GhcPs |
Instance details Defined in GHC.Hs.Type type XHsOuterImplicit GhcPs = NoExtField
type XHsOuterImplicit GhcRn |
Instance details Defined in GHC.Hs.Type type XHsOuterImplicit GhcRn = [Name]
type XHsOuterImplicit GhcTc |
Instance details Defined in GHC.Hs.Type type XHsOuterImplicit GhcTc = [TyVar]

type family XHsPS x #

#### Instances

Instances details

type XHsPS GhcPs |
Instance details Defined in GHC.Hs.Type type XHsPS GhcPs = EpAnnCO
type XHsPS GhcRn |
Instance details Defined in GHC.Hs.Type type XHsPS GhcRn = HsPSRn
type XHsPS GhcTc |
Instance details Defined in GHC.Hs.Type type XHsPS GhcTc = HsPSRn

type family XHsQTvs x #

#### Instances

Instances details

type XHsQTvs GhcPs |
Instance details Defined in GHC.Hs.Type type XHsQTvs GhcPs = NoExtField
type XHsQTvs GhcRn |
Instance details Defined in GHC.Hs.Type type XHsQTvs GhcRn = HsQTvsRn
type XHsQTvs GhcTc |
Instance details Defined in GHC.Hs.Type type XHsQTvs GhcTc = HsQTvsRn

type family XHsRat x #

#### Instances

Instances details

type XHsRat (GhcPass _1) |
Instance details Defined in GHC.Hs.Lit type XHsRat (GhcPass _1) = NoExtField

type family XHsRule x #

#### Instances

Instances details

type XHsRule GhcPs |
Instance details Defined in GHC.Hs.Decls type XHsRule GhcPs = (EpAnn HsRuleAnn, SourceText)
type XHsRule GhcRn |
Instance details Defined in GHC.Hs.Decls type XHsRule GhcRn = (HsRuleRn, SourceText)
type XHsRule GhcTc |
Instance details Defined in GHC.Hs.Decls type XHsRule GhcTc = (HsRuleRn, SourceText)

type family XHsSig x #

#### Instances

Instances details

type XHsSig (GhcPass _1) |
Instance details Defined in GHC.Hs.Type type XHsSig (GhcPass _1) = NoExtField

type family XHsString x #

#### Instances

Instances details

type XHsString (GhcPass _1) |
Instance details Defined in GHC.Hs.Lit type XHsString (GhcPass _1) = SourceText

type family XHsStringPrim x #

#### Instances

Instances details

type XHsStringPrim (GhcPass _1) |
Instance details Defined in GHC.Hs.Lit type XHsStringPrim (GhcPass _1) = SourceText

type family XHsValBinds x x' #

#### Instances

Instances details

type XHsValBinds (GhcPass pL) (GhcPass pR) |
Instance details Defined in GHC.Hs.Binds type XHsValBinds (GhcPass pL) (GhcPass pR) = EpAnn AnnList

type family XHsWC x b #

#### Instances

Instances details

type XHsWC GhcPs b |
Instance details Defined in GHC.Hs.Type type XHsWC GhcPs b = NoExtField
type XHsWC GhcRn b |
Instance details Defined in GHC.Hs.Type type XHsWC GhcRn b = [Name]
type XHsWC GhcTc b |
Instance details Defined in GHC.Hs.Type type XHsWC GhcTc b = [Name]

type family XHsWord64Prim x #

#### Instances

Instances details

type XHsWord64Prim (GhcPass _1) |
Instance details Defined in GHC.Hs.Lit type XHsWord64Prim (GhcPass _1) = SourceText

type family XHsWordPrim x #

#### Instances

Instances details

type XHsWordPrim (GhcPass _1) |
Instance details Defined in GHC.Hs.Lit type XHsWordPrim (GhcPass _1) = SourceText

type family XIEDoc x #

#### Instances

Instances details

type XIEDoc (GhcPass _1) |
Instance details Defined in GHC.Hs.ImpExp type XIEDoc (GhcPass _1) = NoExtField

type family XIEDocNamed x #

#### Instances

Instances details

type XIEDocNamed (GhcPass _1) |
Instance details Defined in GHC.Hs.ImpExp type XIEDocNamed (GhcPass _1) = NoExtField

type family XIEGroup x #

#### Instances

Instances details

type XIEGroup (GhcPass _1) |
Instance details Defined in GHC.Hs.ImpExp type XIEGroup (GhcPass _1) = NoExtField

type family XIEModuleContents x #

#### Instances

Instances details

type XIEModuleContents GhcPs |
Instance details Defined in GHC.Hs.ImpExp type XIEModuleContents GhcPs = EpAnn [AddEpAnn]
type XIEModuleContents GhcRn |
Instance details Defined in GHC.Hs.ImpExp type XIEModuleContents GhcRn = NoExtField
type XIEModuleContents GhcTc |
Instance details Defined in GHC.Hs.ImpExp type XIEModuleContents GhcTc = NoExtField

type family XIEName p #

#### Instances

Instances details

type XIEName (GhcPass _1) |
Instance details Defined in GHC.Hs.ImpExp type XIEName (GhcPass _1) = NoExtField

type family XIEPattern p #

#### Instances

Instances details

type XIEPattern (GhcPass _1) |
Instance details Defined in GHC.Hs.ImpExp type XIEPattern (GhcPass _1) = EpaLocation

type family XIEThingAbs x #

#### Instances

Instances details

type XIEThingAbs (GhcPass _1) |
Instance details Defined in GHC.Hs.ImpExp type XIEThingAbs (GhcPass _1) = EpAnn [AddEpAnn]

type family XIEThingAll x #

#### Instances

Instances details

type XIEThingAll (GhcPass _1) |
Instance details Defined in GHC.Hs.ImpExp type XIEThingAll (GhcPass _1) = EpAnn [AddEpAnn]

type family XIEThingWith x #

#### Instances

Instances details

type XIEThingWith (GhcPass 'Parsed) |
Instance details Defined in GHC.Hs.ImpExp type XIEThingWith (GhcPass 'Parsed) = EpAnn [AddEpAnn]
type XIEThingWith (GhcPass 'Renamed) |
Instance details Defined in GHC.Hs.ImpExp type XIEThingWith (GhcPass 'Renamed) = [Located FieldLabel]
type XIEThingWith (GhcPass 'Typechecked) |
Instance details Defined in GHC.Hs.ImpExp type XIEThingWith (GhcPass 'Typechecked) = NoExtField

type family XIEType p #

#### Instances

Instances details

type XIEType (GhcPass _1) |
Instance details Defined in GHC.Hs.ImpExp type XIEType (GhcPass _1) = EpaLocation

type family XIEVar x #

#### Instances

Instances details

type XIEVar GhcPs |
Instance details Defined in GHC.Hs.ImpExp type XIEVar GhcPs = NoExtField
type XIEVar GhcRn |
Instance details Defined in GHC.Hs.ImpExp type XIEVar GhcRn = NoExtField
type XIEVar GhcTc |
Instance details Defined in GHC.Hs.ImpExp type XIEVar GhcTc = NoExtField

type family XIPBinds x #

#### Instances

Instances details

type XIPBinds GhcPs |
Instance details Defined in GHC.Hs.Binds type XIPBinds GhcPs = NoExtField
type XIPBinds GhcRn |
Instance details Defined in GHC.Hs.Binds type XIPBinds GhcRn = NoExtField
type XIPBinds GhcTc |
Instance details Defined in GHC.Hs.Binds type XIPBinds GhcTc = TcEvBinds

type family XIPVar x #

#### Instances

Instances details

type XIPVar GhcPs |
Instance details Defined in GHC.Hs.Expr type XIPVar GhcPs = EpAnnCO
type XIPVar GhcRn |
Instance details Defined in GHC.Hs.Expr type XIPVar GhcRn = EpAnnCO
type XIPVar GhcTc |
Instance details Defined in GHC.Hs.Expr type XIPVar GhcTc = DataConCantHappen

type family XIParamTy x #

#### Instances

Instances details

type XIParamTy (GhcPass _1) |
Instance details Defined in GHC.Hs.Type type XIParamTy (GhcPass _1) = EpAnn [AddEpAnn]

type family XIdSig x #

type family XIf x #

#### Instances

Instances details

type XIf GhcPs |
Instance details Defined in GHC.Hs.Expr type XIf GhcPs = EpAnn AnnsIf
type XIf GhcRn |
Instance details Defined in GHC.Hs.Expr type XIf GhcRn = NoExtField
type XIf GhcTc |
Instance details Defined in GHC.Hs.Expr type XIf GhcTc = NoExtField

type family XInlineSig x #

#### Instances

Instances details

type XInlineSig (GhcPass p) |
Instance details Defined in GHC.Hs.Binds type XInlineSig (GhcPass p) = EpAnn [AddEpAnn]

type family XInstD x #

#### Instances

Instances details

type XInstD (GhcPass _1) |
Instance details Defined in GHC.Hs.Decls type XInstD (GhcPass _1) = NoExtField

type family XKindSig x #

#### Instances

Instances details

type XKindSig (GhcPass _1) |
Instance details Defined in GHC.Hs.Type type XKindSig (GhcPass _1) = EpAnn [AddEpAnn]

type family XKindSigD x #

#### Instances

Instances details

type XKindSigD (GhcPass _1) |
Instance details Defined in GHC.Hs.Decls type XKindSigD (GhcPass _1) = NoExtField

type family XKindedTyVar x #

#### Instances

Instances details

type XKindedTyVar (GhcPass _1) |
Instance details Defined in GHC.Hs.Type type XKindedTyVar (GhcPass _1) = EpAnn [AddEpAnn]

type family XLam x #

#### Instances

Instances details

type XLam (GhcPass _1) |
Instance details Defined in GHC.Hs.Expr type XLam (GhcPass _1) = NoExtField
type XLam (GhcPass _1) |
Instance details Defined in GHC.Hs.Expr type XLam (GhcPass _1) = NoExtField

type family XLamCase x #

#### Instances

Instances details

type XLamCase (GhcPass _1) |
Instance details Defined in GHC.Hs.Expr type XLamCase (GhcPass _1) = EpAnn [AddEpAnn]

type family XLastStmt x x' b #

#### Instances

Instances details

type XLastStmt (GhcPass _1) (GhcPass _2) b |
Instance details Defined in GHC.Hs.Expr type XLastStmt (GhcPass _1) (GhcPass _2) b = NoExtField

type family XLazyPat x #

#### Instances

Instances details

type XLazyPat GhcPs |
Instance details Defined in GHC.Hs.Pat type XLazyPat GhcPs = EpAnn [AddEpAnn]
type XLazyPat GhcRn |
Instance details Defined in GHC.Hs.Pat type XLazyPat GhcRn = NoExtField
type XLazyPat GhcTc |
Instance details Defined in GHC.Hs.Pat type XLazyPat GhcTc = NoExtField

type family XLet x #

#### Instances

Instances details

type XLet GhcPs |
Instance details Defined in GHC.Hs.Expr type XLet GhcPs = EpAnnCO
type XLet GhcRn |
Instance details Defined in GHC.Hs.Expr type XLet GhcRn = NoExtField
type XLet GhcTc |
Instance details Defined in GHC.Hs.Expr type XLet GhcTc = NoExtField

type family XLetStmt x x' b #

#### Instances

Instances details

type XLetStmt (GhcPass _1) (GhcPass _2) b |
Instance details Defined in GHC.Hs.Expr type XLetStmt (GhcPass _1) (GhcPass _2) b = EpAnn [AddEpAnn]

type family XListPat x #

#### Instances

Instances details

type XListPat GhcPs |
Instance details Defined in GHC.Hs.Pat type XListPat GhcPs = EpAnn AnnList
type XListPat GhcRn |
Instance details Defined in GHC.Hs.Pat type XListPat GhcRn = NoExtField
type XListPat GhcTc |
Instance details Defined in GHC.Hs.Pat type XListPat GhcTc = Type

type family XListTy x #

#### Instances

Instances details

type XListTy (GhcPass _1) |
Instance details Defined in GHC.Hs.Type type XListTy (GhcPass _1) = EpAnn AnnParen

type family XLitE x #

#### Instances

Instances details

type XLitE (GhcPass _1) |
Instance details Defined in GHC.Hs.Expr type XLitE (GhcPass _1) = EpAnnCO

type family XLitPat x #

#### Instances

Instances details

type XLitPat (GhcPass _1) |
Instance details Defined in GHC.Hs.Pat type XLitPat (GhcPass _1) = NoExtField

type family XMG x b #

#### Instances

Instances details

type XMG GhcPs b |
Instance details Defined in GHC.Hs.Expr type XMG GhcPs b = Origin
type XMG GhcRn b |
Instance details Defined in GHC.Hs.Expr type XMG GhcRn b = Origin
type XMG GhcTc b |
Instance details Defined in GHC.Hs.Expr type XMG GhcTc b = MatchGroupTc

type family XMinimalSig x #

#### Instances

Instances details

type XMinimalSig (GhcPass p) |
Instance details Defined in GHC.Hs.Binds type XMinimalSig (GhcPass p) = (EpAnn [AddEpAnn], SourceText)

type family XMissing x #

#### Instances

Instances details

type XMissing GhcPs |
Instance details Defined in GHC.Hs.Expr type XMissing GhcPs = EpAnn EpaLocation
type XMissing GhcRn |
Instance details Defined in GHC.Hs.Expr type XMissing GhcRn = NoExtField
type XMissing GhcTc |
Instance details Defined in GHC.Hs.Expr type XMissing GhcTc = Scaled Type

type family XMultiIf x #

#### Instances

Instances details

type XMultiIf GhcPs |
Instance details Defined in GHC.Hs.Expr type XMultiIf GhcPs = EpAnn [AddEpAnn]
type XMultiIf GhcRn |
Instance details Defined in GHC.Hs.Expr type XMultiIf GhcRn = NoExtField
type XMultiIf GhcTc |
Instance details Defined in GHC.Hs.Expr type XMultiIf GhcTc = Type

type family XNPat x #

#### Instances

Instances details

type XNPat GhcPs |
Instance details Defined in GHC.Hs.Pat type XNPat GhcPs = EpAnn [AddEpAnn]
type XNPat GhcRn |
Instance details Defined in GHC.Hs.Pat type XNPat GhcRn = EpAnn [AddEpAnn]
type XNPat GhcTc |
Instance details Defined in GHC.Hs.Pat type XNPat GhcTc = Type

type family XNPlusKPat x #

#### Instances

Instances details

type XNPlusKPat GhcPs |
Instance details Defined in GHC.Hs.Pat type XNPlusKPat GhcPs = EpAnn EpaLocation
type XNPlusKPat GhcRn |
Instance details Defined in GHC.Hs.Pat type XNPlusKPat GhcRn = NoExtField
type XNPlusKPat GhcTc |
Instance details Defined in GHC.Hs.Pat type XNPlusKPat GhcTc = Type

type family XNegApp x #

#### Instances

Instances details

type XNegApp GhcPs |
Instance details Defined in GHC.Hs.Expr type XNegApp GhcPs = EpAnn [AddEpAnn]
type XNegApp GhcRn |
Instance details Defined in GHC.Hs.Expr type XNegApp GhcRn = NoExtField
type XNegApp GhcTc |
Instance details Defined in GHC.Hs.Expr type XNegApp GhcTc = NoExtField

type family XNewtypeStrategy x #

#### Instances

Instances details

type XNewtypeStrategy GhcPs |
Instance details Defined in GHC.Hs.Decls type XNewtypeStrategy GhcPs = EpAnn [AddEpAnn]
type XNewtypeStrategy GhcRn |
Instance details Defined in GHC.Hs.Decls type XNewtypeStrategy GhcRn = NoExtField
type XNewtypeStrategy GhcTc |
Instance details Defined in GHC.Hs.Decls type XNewtypeStrategy GhcTc = NoExtField

type family XNoSig x #

#### Instances

Instances details

type XNoSig (GhcPass _1) |
Instance details Defined in GHC.Hs.Decls type XNoSig (GhcPass _1) = NoExtField

type family XNumTy x #

#### Instances

Instances details

type XNumTy (GhcPass _1) |
Instance details Defined in GHC.Hs.Type type XNumTy (GhcPass _1) = SourceText

type family XOpApp x #

#### Instances

Instances details

type XOpApp GhcPs |
Instance details Defined in GHC.Hs.Expr type XOpApp GhcPs = EpAnn [AddEpAnn]
type XOpApp GhcRn |
Instance details Defined in GHC.Hs.Expr type XOpApp GhcRn = Fixity
type XOpApp GhcTc |
Instance details Defined in GHC.Hs.Expr type XOpApp GhcTc = DataConCantHappen

type family XOpTy x #

#### Instances

Instances details

type XOpTy (GhcPass _1) |
Instance details Defined in GHC.Hs.Type type XOpTy (GhcPass _1) = EpAnn [AddEpAnn]

type family XOverLabel x #

#### Instances

Instances details

type XOverLabel GhcPs |
Instance details Defined in GHC.Hs.Expr type XOverLabel GhcPs = EpAnnCO
type XOverLabel GhcRn |
Instance details Defined in GHC.Hs.Expr type XOverLabel GhcRn = EpAnnCO
type XOverLabel GhcTc |
Instance details Defined in GHC.Hs.Expr type XOverLabel GhcTc = DataConCantHappen

type family XOverLit x #

#### Instances

Instances details

type XOverLit GhcPs |
Instance details Defined in GHC.Hs.Lit type XOverLit GhcPs = NoExtField
type XOverLit GhcRn |
Instance details Defined in GHC.Hs.Lit type XOverLit GhcRn = OverLitRn
type XOverLit GhcTc |
Instance details Defined in GHC.Hs.Lit type XOverLit GhcTc = OverLitTc

type family XOverLitE x #

#### Instances

Instances details

type XOverLitE (GhcPass _1) |
Instance details Defined in GHC.Hs.Expr type XOverLitE (GhcPass _1) = EpAnnCO

type family XPSB x x' #

#### Instances

Instances details

type XPSB (GhcPass idL) GhcPs |
Instance details Defined in GHC.Hs.Binds type XPSB (GhcPass idL) GhcPs = EpAnn [AddEpAnn]
type XPSB (GhcPass idL) GhcRn |
Instance details Defined in GHC.Hs.Binds type XPSB (GhcPass idL) GhcRn = NameSet
type XPSB (GhcPass idL) GhcTc |
Instance details Defined in GHC.Hs.Binds type XPSB (GhcPass idL) GhcTc = NameSet

type family XPar x #

#### Instances

Instances details

type XPar (GhcPass _1) |
Instance details Defined in GHC.Hs.Expr type XPar (GhcPass _1) = EpAnnCO

type family XParPat x #

#### Instances

Instances details

type XParPat (GhcPass _1) |
Instance details Defined in GHC.Hs.Pat type XParPat (GhcPass _1) = EpAnnCO

type family XParStmt x x' b #

#### Instances

Instances details

type XParStmt (GhcPass _1) GhcPs b |
Instance details Defined in GHC.Hs.Expr type XParStmt (GhcPass _1) GhcPs b = NoExtField
type XParStmt (GhcPass _1) GhcRn b |
Instance details Defined in GHC.Hs.Expr type XParStmt (GhcPass _1) GhcRn b = NoExtField
type XParStmt (GhcPass _1) GhcTc b |
Instance details Defined in GHC.Hs.Expr type XParStmt (GhcPass _1) GhcTc b = Type

type family XParTy x #

#### Instances

Instances details

type XParTy (GhcPass _1) |
Instance details Defined in GHC.Hs.Type type XParTy (GhcPass _1) = EpAnn AnnParen

type family XPatBind x x' #

#### Instances

Instances details

type XPatBind GhcPs (GhcPass pR) |
Instance details Defined in GHC.Hs.Binds type XPatBind GhcPs (GhcPass pR) = EpAnn [AddEpAnn]
type XPatBind GhcRn (GhcPass pR) |
Instance details Defined in GHC.Hs.Binds type XPatBind GhcRn (GhcPass pR) = NameSet
type XPatBind GhcTc (GhcPass pR) |
Instance details Defined in GHC.Hs.Binds type XPatBind GhcTc (GhcPass pR) = (Type, ([CoreTickish], [[CoreTickish]]))

type family XPatBr x #

#### Instances

Instances details

type XPatBr GhcPs |
Instance details Defined in GHC.Hs.Expr type XPatBr GhcPs = NoExtField
type XPatBr GhcRn |
Instance details Defined in GHC.Hs.Expr type XPatBr GhcRn = NoExtField
type XPatBr GhcTc |
Instance details Defined in GHC.Hs.Expr type XPatBr GhcTc = DataConCantHappen

type family XPatSynSig x #

#### Instances

Instances details

type XPatSynSig (GhcPass p) |
Instance details Defined in GHC.Hs.Binds type XPatSynSig (GhcPass p) = EpAnn AnnSig

type family XPragE x #

#### Instances

Instances details

type XPragE (GhcPass _1) |
Instance details Defined in GHC.Hs.Expr type XPragE (GhcPass _1) = NoExtField

type family XPresent x #

#### Instances

Instances details

type XPresent (GhcPass _1) |
Instance details Defined in GHC.Hs.Expr type XPresent (GhcPass _1) = EpAnn [AddEpAnn]

type family XProc x #

#### Instances

Instances details

type XProc (GhcPass _1) |
Instance details Defined in GHC.Hs.Expr type XProc (GhcPass _1) = EpAnn [AddEpAnn]

type family XProjection x #

#### Instances

Instances details

type XProjection GhcPs |
Instance details Defined in GHC.Hs.Expr type XProjection GhcPs = EpAnn AnnProjection
type XProjection GhcRn |
Instance details Defined in GHC.Hs.Expr type XProjection GhcRn = NoExtField
type XProjection GhcTc |
Instance details Defined in GHC.Hs.Expr type XProjection GhcTc = DataConCantHappen

type family XQualTy x #

#### Instances

Instances details

type XQualTy (GhcPass _1) |
Instance details Defined in GHC.Hs.Type type XQualTy (GhcPass _1) = NoExtField

type family XQuasiQuote x #

#### Instances

Instances details

type XQuasiQuote p |
Instance details Defined in GHC.Hs.Expr type XQuasiQuote p = NoExtField

type family XRecSel x #

#### Instances

Instances details

type XRecSel GhcPs |
Instance details Defined in GHC.Hs.Expr type XRecSel GhcPs = DataConCantHappen
type XRecSel GhcRn |
Instance details Defined in GHC.Hs.Expr type XRecSel GhcRn = NoExtField
type XRecSel GhcTc |
Instance details Defined in GHC.Hs.Expr type XRecSel GhcTc = NoExtField

type family XRecStmt x x' b #

#### Instances

Instances details

type XRecStmt (GhcPass _1) GhcPs b |
Instance details Defined in GHC.Hs.Expr type XRecStmt (GhcPass _1) GhcPs b = EpAnn AnnList
type XRecStmt (GhcPass _1) GhcRn b |
Instance details Defined in GHC.Hs.Expr type XRecStmt (GhcPass _1) GhcRn b = NoExtField
type XRecStmt (GhcPass _1) GhcTc b |
Instance details Defined in GHC.Hs.Expr type XRecStmt (GhcPass _1) GhcTc b = RecStmtTc

type family XRecTy x #

#### Instances

Instances details

type XRecTy GhcPs |
Instance details Defined in GHC.Hs.Type type XRecTy GhcPs = EpAnn AnnList
type XRecTy GhcRn |
Instance details Defined in GHC.Hs.Type type XRecTy GhcRn = NoExtField
type XRecTy GhcTc |
Instance details Defined in GHC.Hs.Type type XRecTy GhcTc = NoExtField

type family XRecordCon x #

#### Instances

Instances details

type XRecordCon GhcPs |
Instance details Defined in GHC.Hs.Expr type XRecordCon GhcPs = EpAnn [AddEpAnn]
type XRecordCon GhcRn |
Instance details Defined in GHC.Hs.Expr type XRecordCon GhcRn = NoExtField
type XRecordCon GhcTc |
Instance details Defined in GHC.Hs.Expr type XRecordCon GhcTc = PostTcExpr

type family XRecordUpd x #

#### Instances

Instances details

type XRecordUpd GhcPs |
Instance details Defined in GHC.Hs.Expr type XRecordUpd GhcPs = EpAnn [AddEpAnn]
type XRecordUpd GhcRn |
Instance details Defined in GHC.Hs.Expr type XRecordUpd GhcRn = NoExtField
type XRecordUpd GhcTc |
Instance details Defined in GHC.Hs.Expr type XRecordUpd GhcTc = DataConCantHappen

type family XRoleAnnotD x #

#### Instances

Instances details

type XRoleAnnotD (GhcPass _1) |
Instance details Defined in GHC.Hs.Decls type XRoleAnnotD (GhcPass _1) = NoExtField

type family XRuleBndrSig x #

#### Instances

Instances details

type XRuleBndrSig (GhcPass _1) |
Instance details Defined in GHC.Hs.Decls type XRuleBndrSig (GhcPass _1) = EpAnn [AddEpAnn]

type family XRuleD x #

#### Instances

Instances details

type XRuleD (GhcPass _1) |
Instance details Defined in GHC.Hs.Decls type XRuleD (GhcPass _1) = NoExtField

type family XSCC x #

#### Instances

Instances details

type XSCC (GhcPass _1) |
Instance details Defined in GHC.Hs.Expr type XSCC (GhcPass _1) = (EpAnn AnnPragma, SourceText)

type family XSCCFunSig x #

#### Instances

Instances details

type XSCCFunSig (GhcPass p) |
Instance details Defined in GHC.Hs.Binds type XSCCFunSig (GhcPass p) = (EpAnn [AddEpAnn], SourceText)

type family XSectionL x #

#### Instances

Instances details

type XSectionL GhcPs |
Instance details Defined in GHC.Hs.Expr type XSectionL GhcPs = EpAnnCO
type XSectionL GhcRn |
Instance details Defined in GHC.Hs.Expr type XSectionL GhcRn = EpAnnCO
type XSectionL GhcTc |
Instance details Defined in GHC.Hs.Expr type XSectionL GhcTc = DataConCantHappen

type family XSectionR x #

#### Instances

Instances details

type XSectionR GhcPs |
Instance details Defined in GHC.Hs.Expr type XSectionR GhcPs = EpAnnCO
type XSectionR GhcRn |
Instance details Defined in GHC.Hs.Expr type XSectionR GhcRn = EpAnnCO
type XSectionR GhcTc |
Instance details Defined in GHC.Hs.Expr type XSectionR GhcTc = DataConCantHappen

type family XSigD x #

#### Instances

Instances details

type XSigD (GhcPass _1) |
Instance details Defined in GHC.Hs.Decls type XSigD (GhcPass _1) = NoExtField

type family XSigPat x #

#### Instances

Instances details

type XSigPat GhcPs |
Instance details Defined in GHC.Hs.Pat type XSigPat GhcPs = EpAnn [AddEpAnn]
type XSigPat GhcRn |
Instance details Defined in GHC.Hs.Pat type XSigPat GhcRn = NoExtField
type XSigPat GhcTc |
Instance details Defined in GHC.Hs.Pat type XSigPat GhcTc = Type

type family XSpecInstSig x #

#### Instances

Instances details

type XSpecInstSig (GhcPass p) |
Instance details Defined in GHC.Hs.Binds type XSpecInstSig (GhcPass p) = (EpAnn [AddEpAnn], SourceText)

type family XSpecSig x #

#### Instances

Instances details

type XSpecSig (GhcPass p) |
Instance details Defined in GHC.Hs.Binds type XSpecSig (GhcPass p) = EpAnn [AddEpAnn]

type family XSpliceD x #

#### Instances

Instances details

type XSpliceD (GhcPass _1) |
Instance details Defined in GHC.Hs.Decls type XSpliceD (GhcPass _1) = NoExtField

type family XSplicePat x #

#### Instances

Instances details

type XSplicePat GhcPs |
Instance details Defined in GHC.Hs.Pat type XSplicePat GhcPs = NoExtField
type XSplicePat GhcRn |
Instance details Defined in GHC.Hs.Pat type XSplicePat GhcRn = HsUntypedSpliceResult (Pat GhcRn)
type XSplicePat GhcTc |
Instance details Defined in GHC.Hs.Pat type XSplicePat GhcTc = DataConCantHappen

type family XSpliceTy x #

#### Instances

Instances details

type XSpliceTy GhcPs |
Instance details Defined in GHC.Hs.Type type XSpliceTy GhcPs = NoExtField
type XSpliceTy GhcRn |
Instance details Defined in GHC.Hs.Type type XSpliceTy GhcRn = HsUntypedSpliceResult (LHsType GhcRn)
type XSpliceTy GhcTc |
Instance details Defined in GHC.Hs.Type type XSpliceTy GhcTc = Kind

type family XStarTy x #

#### Instances

Instances details

type XStarTy (GhcPass _1) |
Instance details Defined in GHC.Hs.Type type XStarTy (GhcPass _1) = NoExtField

type family XStatic x #

#### Instances

Instances details

type XStatic GhcPs |
Instance details Defined in GHC.Hs.Expr type XStatic GhcPs = EpAnn [AddEpAnn]
type XStatic GhcRn |
Instance details Defined in GHC.Hs.Expr type XStatic GhcRn = NameSet
type XStatic GhcTc |
Instance details Defined in GHC.Hs.Expr type XStatic GhcTc = (NameSet, Type)

type family XStockStrategy x #

#### Instances

Instances details

type XStockStrategy GhcPs |
Instance details Defined in GHC.Hs.Decls type XStockStrategy GhcPs = EpAnn [AddEpAnn]
type XStockStrategy GhcRn |
Instance details Defined in GHC.Hs.Decls type XStockStrategy GhcRn = NoExtField
type XStockStrategy GhcTc |
Instance details Defined in GHC.Hs.Decls type XStockStrategy GhcTc = NoExtField

type family XStrTy x #

#### Instances

Instances details

type XStrTy (GhcPass _1) |
Instance details Defined in GHC.Hs.Type type XStrTy (GhcPass _1) = SourceText

type family XSumPat x #

#### Instances

Instances details

type XSumPat GhcPs |
Instance details Defined in GHC.Hs.Pat type XSumPat GhcPs = EpAnn EpAnnSumPat
type XSumPat GhcRn |
Instance details Defined in GHC.Hs.Pat type XSumPat GhcRn = NoExtField
type XSumPat GhcTc |
Instance details Defined in GHC.Hs.Pat type XSumPat GhcTc = [Type]

type family XSumTy x #

#### Instances

Instances details

type XSumTy (GhcPass _1) |
Instance details Defined in GHC.Hs.Type type XSumTy (GhcPass _1) = EpAnn AnnParen

type family XSynDecl x #

#### Instances

Instances details

type XSynDecl GhcPs |
Instance details Defined in GHC.Hs.Decls type XSynDecl GhcPs = EpAnn [AddEpAnn]
type XSynDecl GhcRn |
Instance details Defined in GHC.Hs.Decls type XSynDecl GhcRn = NameSet
type XSynDecl GhcTc |
Instance details Defined in GHC.Hs.Decls type XSynDecl GhcTc = NameSet

type family XTick x #

type family XTransStmt x x' b #

#### Instances

Instances details

type XTransStmt (GhcPass _1) GhcPs b |
Instance details Defined in GHC.Hs.Expr type XTransStmt (GhcPass _1) GhcPs b = EpAnn [AddEpAnn]
type XTransStmt (GhcPass _1) GhcRn b |
Instance details Defined in GHC.Hs.Expr type XTransStmt (GhcPass _1) GhcRn b = NoExtField
type XTransStmt (GhcPass _1) GhcTc b |
Instance details Defined in GHC.Hs.Expr type XTransStmt (GhcPass _1) GhcTc b = Type

type family XTuplePat x #

#### Instances

Instances details

type XTuplePat GhcPs |
Instance details Defined in GHC.Hs.Pat type XTuplePat GhcPs = EpAnn [AddEpAnn]
type XTuplePat GhcRn |
Instance details Defined in GHC.Hs.Pat type XTuplePat GhcRn = NoExtField
type XTuplePat GhcTc |
Instance details Defined in GHC.Hs.Pat type XTuplePat GhcTc = [Type]

type family XTupleTy x #

#### Instances

Instances details

type XTupleTy (GhcPass _1) |
Instance details Defined in GHC.Hs.Type type XTupleTy (GhcPass _1) = EpAnn AnnParen

type family XTyClD x #

#### Instances

Instances details

type XTyClD (GhcPass _1) |
Instance details Defined in GHC.Hs.Decls type XTyClD (GhcPass _1) = NoExtField

type family XTyFamInstD x #

#### Instances

Instances details

type XTyFamInstD GhcPs |
Instance details Defined in GHC.Hs.Decls type XTyFamInstD GhcPs = NoExtField
type XTyFamInstD GhcRn |
Instance details Defined in GHC.Hs.Decls type XTyFamInstD GhcRn = NoExtField
type XTyFamInstD GhcTc |
Instance details Defined in GHC.Hs.Decls type XTyFamInstD GhcTc = NoExtField

type family XTyLit x #

#### Instances

Instances details

type XTyLit (GhcPass _1) |
Instance details Defined in GHC.Hs.Type type XTyLit (GhcPass _1) = NoExtField

type family XTyVar x #

#### Instances

Instances details

type XTyVar (GhcPass _1) |
Instance details Defined in GHC.Hs.Type type XTyVar (GhcPass _1) = EpAnn [AddEpAnn]

type family XTyVarSig x #

#### Instances

Instances details

type XTyVarSig (GhcPass _1) |
Instance details Defined in GHC.Hs.Decls type XTyVarSig (GhcPass _1) = NoExtField

type family XTypBr x #

#### Instances

Instances details

type XTypBr GhcPs |
Instance details Defined in GHC.Hs.Expr type XTypBr GhcPs = NoExtField
type XTypBr GhcRn |
Instance details Defined in GHC.Hs.Expr type XTypBr GhcRn = NoExtField
type XTypBr GhcTc |
Instance details Defined in GHC.Hs.Expr type XTypBr GhcTc = DataConCantHappen

type family XTypeSig x #

#### Instances

Instances details

type XTypeSig (GhcPass p) |
Instance details Defined in GHC.Hs.Binds type XTypeSig (GhcPass p) = EpAnn AnnSig

type family XTypedBracket x #

#### Instances

Instances details

type XTypedBracket GhcPs |
Instance details Defined in GHC.Hs.Expr type XTypedBracket GhcPs = EpAnn [AddEpAnn]
type XTypedBracket GhcRn |
Instance details Defined in GHC.Hs.Expr type XTypedBracket GhcRn = NoExtField
type XTypedBracket GhcTc |
Instance details Defined in GHC.Hs.Expr type XTypedBracket GhcTc = HsBracketTc

type family XTypedSplice x #

#### Instances

Instances details

type XTypedSplice GhcPs |
Instance details Defined in GHC.Hs.Expr type XTypedSplice GhcPs = (EpAnnCO, EpAnn [AddEpAnn])
type XTypedSplice GhcRn |
Instance details Defined in GHC.Hs.Expr type XTypedSplice GhcRn = SplicePointName
type XTypedSplice GhcTc |
Instance details Defined in GHC.Hs.Expr type XTypedSplice GhcTc = DelayedSplice

type family XUnambiguous x #

#### Instances

Instances details

type XUnambiguous GhcPs |
Instance details Defined in GHC.Hs.Type type XUnambiguous GhcPs = NoExtField
type XUnambiguous GhcRn |
Instance details Defined in GHC.Hs.Type type XUnambiguous GhcRn = Name
type XUnambiguous GhcTc |
Instance details Defined in GHC.Hs.Type type XUnambiguous GhcTc = Id

type family XUnboundVar x #

#### Instances

Instances details

type XUnboundVar GhcPs |
Instance details Defined in GHC.Hs.Expr type XUnboundVar GhcPs = EpAnn EpAnnUnboundVar
type XUnboundVar GhcRn |
Instance details Defined in GHC.Hs.Expr type XUnboundVar GhcRn = NoExtField
type XUnboundVar GhcTc |
Instance details Defined in GHC.Hs.Expr type XUnboundVar GhcTc = HoleExprRef

type family XUntypedBracket x #

#### Instances

Instances details

type XUntypedBracket GhcPs |
Instance details Defined in GHC.Hs.Expr type XUntypedBracket GhcPs = EpAnn [AddEpAnn]
type XUntypedBracket GhcRn |
Instance details Defined in GHC.Hs.Expr type XUntypedBracket GhcRn = [PendingRnSplice]
type XUntypedBracket GhcTc |
Instance details Defined in GHC.Hs.Expr type XUntypedBracket GhcTc = HsBracketTc

type family XUntypedSpliceExpr x #

#### Instances

Instances details

type XUntypedSpliceExpr GhcPs |
Instance details Defined in GHC.Hs.Expr type XUntypedSpliceExpr GhcPs = EpAnn [AddEpAnn]
type XUntypedSpliceExpr GhcRn |
Instance details Defined in GHC.Hs.Expr type XUntypedSpliceExpr GhcRn = EpAnn [AddEpAnn]
type XUntypedSpliceExpr GhcTc |
Instance details Defined in GHC.Hs.Expr type XUntypedSpliceExpr GhcTc = DataConCantHappen

type family XUserTyVar x #

#### Instances

Instances details

type XUserTyVar (GhcPass _1) |
Instance details Defined in GHC.Hs.Type type XUserTyVar (GhcPass _1) = EpAnn [AddEpAnn]

type family XValBinds x x' #

#### Instances

Instances details

type XValBinds (GhcPass pL) (GhcPass pR) |
Instance details Defined in GHC.Hs.Binds type XValBinds (GhcPass pL) (GhcPass pR) = AnnSortKey

type family XValD x #

#### Instances

Instances details

type XValD (GhcPass _1) |
Instance details Defined in GHC.Hs.Decls type XValD (GhcPass _1) = NoExtField

type family XVar x #

#### Instances

Instances details

type XVar (GhcPass _1) |
Instance details Defined in GHC.Hs.Expr type XVar (GhcPass _1) = NoExtField
type XVar (GhcPass _1) |
Instance details Defined in GHC.Hs.Expr type XVar (GhcPass _1) = NoExtField

type family XVarBind x x' #

#### Instances

Instances details

type XVarBind (GhcPass pL) (GhcPass pR) |
Instance details Defined in GHC.Hs.Binds type XVarBind (GhcPass pL) (GhcPass pR) = NoExtField

type family XVarBr x #

#### Instances

Instances details

type XVarBr GhcPs |
Instance details Defined in GHC.Hs.Expr type XVarBr GhcPs = NoExtField
type XVarBr GhcRn |
Instance details Defined in GHC.Hs.Expr type XVarBr GhcRn = NoExtField
type XVarBr GhcTc |
Instance details Defined in GHC.Hs.Expr type XVarBr GhcTc = DataConCantHappen

type family XVarPat x #

#### Instances

Instances details

type XVarPat (GhcPass _1) |
Instance details Defined in GHC.Hs.Pat type XVarPat (GhcPass _1) = NoExtField

type family XViaStrategy x #

#### Instances

Instances details

type XViaStrategy GhcPs |
Instance details Defined in GHC.Hs.Decls type XViaStrategy GhcPs = XViaStrategyPs
type XViaStrategy GhcRn |
Instance details Defined in GHC.Hs.Decls type XViaStrategy GhcRn = LHsSigType GhcRn
type XViaStrategy GhcTc |
Instance details Defined in GHC.Hs.Decls type XViaStrategy GhcTc = Type

type family XViewPat x #

#### Instances

Instances details

type XViewPat GhcPs |
Instance details Defined in GHC.Hs.Pat type XViewPat GhcPs = EpAnn [AddEpAnn]
type XViewPat GhcRn |
Instance details Defined in GHC.Hs.Pat type XViewPat GhcRn = Maybe (HsExpr GhcRn)
type XViewPat GhcTc |
Instance details Defined in GHC.Hs.Pat type XViewPat GhcTc = Type

type family XWarning x #

#### Instances

Instances details

type XWarning (GhcPass _1) |
Instance details Defined in GHC.Hs.Decls type XWarning (GhcPass _1) = EpAnn [AddEpAnn]

type family XWarningD x #

#### Instances

Instances details

type XWarningD (GhcPass _1) |
Instance details Defined in GHC.Hs.Decls type XWarningD (GhcPass _1) = NoExtField

type family XWarnings x #

#### Instances

Instances details

type XWarnings GhcPs |
Instance details Defined in GHC.Hs.Decls type XWarnings GhcPs = (EpAnn [AddEpAnn], SourceText)
type XWarnings GhcRn |
Instance details Defined in GHC.Hs.Decls type XWarnings GhcRn = SourceText
type XWarnings GhcTc |
Instance details Defined in GHC.Hs.Decls type XWarnings GhcTc = SourceText

type family XWildCardTy x #

#### Instances

Instances details

type XWildCardTy (GhcPass _1) |
Instance details Defined in GHC.Hs.Type type XWildCardTy (GhcPass _1) = NoExtField

type family XWildPat x #

#### Instances

Instances details

type XWildPat GhcPs |
Instance details Defined in GHC.Hs.Pat type XWildPat GhcPs = NoExtField
type XWildPat GhcRn |
Instance details Defined in GHC.Hs.Pat type XWildPat GhcRn = NoExtField
type XWildPat GhcTc |
Instance details Defined in GHC.Hs.Pat type XWildPat GhcTc = Type

type family XXAmbiguousFieldOcc x #

#### Instances

Instances details

type XXAmbiguousFieldOcc (GhcPass _1) |
Instance details Defined in GHC.Hs.Type type XXAmbiguousFieldOcc (GhcPass _1) = DataConCantHappen

type family XXAnnDecl x #

#### Instances

Instances details

type XXAnnDecl (GhcPass _1) |
Instance details Defined in GHC.Hs.Decls type XXAnnDecl (GhcPass _1) = DataConCantHappen

type family XXApplicativeArg x #

#### Instances

Instances details

type XXApplicativeArg (GhcPass _1) |
Instance details Defined in GHC.Hs.Expr type XXApplicativeArg (GhcPass _1) = DataConCantHappen

type family XXClsInstDecl x #

#### Instances

Instances details

type XXClsInstDecl (GhcPass _1) |
Instance details Defined in GHC.Hs.Decls type XXClsInstDecl (GhcPass _1) = DataConCantHappen

type family XXCmd x #

#### Instances

Instances details

type XXCmd GhcPs |
Instance details Defined in GHC.Hs.Expr type XXCmd GhcPs = DataConCantHappen
type XXCmd GhcRn |
Instance details Defined in GHC.Hs.Expr type XXCmd GhcRn = DataConCantHappen
type XXCmd GhcTc |
Instance details Defined in GHC.Hs.Expr type XXCmd GhcTc = HsWrap HsCmd

type family XXCmdTop x #

#### Instances

Instances details

type XXCmdTop (GhcPass _1) |
Instance details Defined in GHC.Hs.Expr type XXCmdTop (GhcPass _1) = DataConCantHappen

type family XXConDecl x #

#### Instances

Instances details

type XXConDecl (GhcPass _1) |
Instance details Defined in GHC.Hs.Decls type XXConDecl (GhcPass _1) = DataConCantHappen

type family XXConDeclField x #

#### Instances

Instances details

type XXConDeclField (GhcPass _1) |
Instance details Defined in GHC.Hs.Type type XXConDeclField (GhcPass _1) = DataConCantHappen

type family XXDefaultDecl x #

#### Instances

Instances details

type XXDefaultDecl (GhcPass _1) |
Instance details Defined in GHC.Hs.Decls type XXDefaultDecl (GhcPass _1) = DataConCantHappen

type family XXDerivClauseTys x #

#### Instances

Instances details

type XXDerivClauseTys (GhcPass _1) |
Instance details Defined in GHC.Hs.Decls type XXDerivClauseTys (GhcPass _1) = DataConCantHappen

type family XXDerivDecl x #

#### Instances

Instances details

type XXDerivDecl (GhcPass _1) |
Instance details Defined in GHC.Hs.Decls type XXDerivDecl (GhcPass _1) = DataConCantHappen

type family XXDotFieldOcc x #

#### Instances

Instances details

type XXDotFieldOcc (GhcPass _1) |
Instance details Defined in GHC.Hs.Expr type XXDotFieldOcc (GhcPass _1) = DataConCantHappen

type family XXExpr x #

#### Instances

Instances details

type XXExpr GhcPs |
Instance details Defined in GHC.Hs.Expr type XXExpr GhcPs = DataConCantHappen
type XXExpr GhcRn |
Instance details Defined in GHC.Hs.Expr type XXExpr GhcRn = HsExpansion (HsExpr GhcRn) (HsExpr GhcRn)
type XXExpr GhcTc |
Instance details Defined in GHC.Hs.Expr type XXExpr GhcTc = XXExprGhcTc

type family XXFamEqn x r #

#### Instances

Instances details

type XXFamEqn (GhcPass _1) r |
Instance details Defined in GHC.Hs.Decls type XXFamEqn (GhcPass _1) r = DataConCantHappen

type family XXFamilyDecl x #

#### Instances

Instances details

type XXFamilyDecl (GhcPass _1) |
Instance details Defined in GHC.Hs.Decls type XXFamilyDecl (GhcPass _1) = DataConCantHappen

type family XXFamilyResultSig x #

#### Instances

Instances details

type XXFamilyResultSig (GhcPass _1) |
Instance details Defined in GHC.Hs.Decls type XXFamilyResultSig (GhcPass _1) = DataConCantHappen

type family XXFieldOcc x #

#### Instances

Instances details

type XXFieldOcc (GhcPass _1) |
Instance details Defined in GHC.Hs.Type type XXFieldOcc (GhcPass _1) = DataConCantHappen

type family XXFixitySig x #

#### Instances

Instances details

type XXFixitySig (GhcPass p) |
Instance details Defined in GHC.Hs.Binds type XXFixitySig (GhcPass p) = DataConCantHappen

type family XXForeignDecl x #

#### Instances

Instances details

type XXForeignDecl (GhcPass _1) |
Instance details Defined in GHC.Hs.Decls type XXForeignDecl (GhcPass _1) = DataConCantHappen

type family XXForeignExport x #

#### Instances

Instances details

type XXForeignExport (GhcPass _1) |
Instance details Defined in GHC.Hs.Decls type XXForeignExport (GhcPass _1) = DataConCantHappen

type family XXForeignImport x #

#### Instances

Instances details

type XXForeignImport (GhcPass _1) |
Instance details Defined in GHC.Hs.Decls type XXForeignImport (GhcPass _1) = DataConCantHappen

type family XXFunDep x #

#### Instances

Instances details

type XXFunDep (GhcPass _1) |
Instance details Defined in GHC.Hs.Decls type XXFunDep (GhcPass _1) = DataConCantHappen

type family XXGRHS x b #

#### Instances

Instances details

type XXGRHS (GhcPass _1) b |
Instance details Defined in GHC.Hs.Expr type XXGRHS (GhcPass _1) b = DataConCantHappen

type family XXGRHSs x b #

#### Instances

Instances details

type XXGRHSs (GhcPass _1) _2 |
Instance details Defined in GHC.Hs.Expr type XXGRHSs (GhcPass _1) _2 = DataConCantHappen

type family XXHsBindsLR x x' #

#### Instances

Instances details

type XXHsBindsLR GhcPs pR |
Instance details Defined in GHC.Hs.Binds type XXHsBindsLR GhcPs pR = DataConCantHappen
type XXHsBindsLR GhcRn pR |
Instance details Defined in GHC.Hs.Binds type XXHsBindsLR GhcRn pR = DataConCantHappen
type XXHsBindsLR GhcTc pR |
Instance details Defined in GHC.Hs.Binds type XXHsBindsLR GhcTc pR = AbsBinds

type family XXHsDataDefn x #

#### Instances

Instances details

type XXHsDataDefn (GhcPass _1) |
Instance details Defined in GHC.Hs.Decls type XXHsDataDefn (GhcPass _1) = DataConCantHappen

type family XXHsDecl x #

#### Instances

Instances details

type XXHsDecl (GhcPass _1) |
Instance details Defined in GHC.Hs.Decls type XXHsDecl (GhcPass _1) = DataConCantHappen

type family XXHsDerivingClause x #

#### Instances

Instances details

type XXHsDerivingClause (GhcPass _1) |
Instance details Defined in GHC.Hs.Decls type XXHsDerivingClause (GhcPass _1) = DataConCantHappen

type family XXHsForAllTelescope x #

#### Instances

Instances details

type XXHsForAllTelescope (GhcPass _1) |
Instance details Defined in GHC.Hs.Type type XXHsForAllTelescope (GhcPass _1) = DataConCantHappen

type family XXHsGroup x #

#### Instances

Instances details

type XXHsGroup (GhcPass _1) |
Instance details Defined in GHC.Hs.Decls type XXHsGroup (GhcPass _1) = DataConCantHappen

type family XXHsIPBinds x #

#### Instances

Instances details

type XXHsIPBinds (GhcPass p) |
Instance details Defined in GHC.Hs.Binds type XXHsIPBinds (GhcPass p) = DataConCantHappen

type family XXHsLocalBindsLR x x' #

#### Instances

Instances details

type XXHsLocalBindsLR (GhcPass pL) (GhcPass pR) |
Instance details Defined in GHC.Hs.Binds type XXHsLocalBindsLR (GhcPass pL) (GhcPass pR) = DataConCantHappen

type family XXHsOuterTyVarBndrs x #

#### Instances

Instances details

type XXHsOuterTyVarBndrs (GhcPass _1) |
Instance details Defined in GHC.Hs.Type type XXHsOuterTyVarBndrs (GhcPass _1) = DataConCantHappen

type family XXHsPatSigType x #

#### Instances

Instances details

type XXHsPatSigType (GhcPass _1) |
Instance details Defined in GHC.Hs.Type type XXHsPatSigType (GhcPass _1) = DataConCantHappen

type family XXHsSigType x #

#### Instances

Instances details

type XXHsSigType (GhcPass _1) |
Instance details Defined in GHC.Hs.Type type XXHsSigType (GhcPass _1) = DataConCantHappen

type family XXHsWildCardBndrs x b #

#### Instances

Instances details

type XXHsWildCardBndrs (GhcPass _1) _2 |
Instance details Defined in GHC.Hs.Type type XXHsWildCardBndrs (GhcPass _1) _2 = DataConCantHappen

type family XXIE x #

#### Instances

Instances details

type XXIE (GhcPass _1) |
Instance details Defined in GHC.Hs.ImpExp type XXIE (GhcPass _1) = DataConCantHappen

type family XXIEWrappedName p #

#### Instances

Instances details

type XXIEWrappedName (GhcPass _1) |
Instance details Defined in GHC.Hs.ImpExp type XXIEWrappedName (GhcPass _1) = DataConCantHappen

type family XXIPBind x #

#### Instances

Instances details

type XXIPBind (GhcPass p) |
Instance details Defined in GHC.Hs.Binds type XXIPBind (GhcPass p) = DataConCantHappen

type family XXImportDecl x #

#### Instances

Instances details

type XXImportDecl (GhcPass _1) |
Instance details Defined in GHC.Hs.ImpExp type XXImportDecl (GhcPass _1) = DataConCantHappen

type family XXInjectivityAnn x #

#### Instances

Instances details

type XXInjectivityAnn (GhcPass _1) |
Instance details Defined in GHC.Hs.Decls type XXInjectivityAnn (GhcPass _1) = DataConCantHappen

type family XXInstDecl x #

#### Instances

Instances details

type XXInstDecl (GhcPass _1) |
Instance details Defined in GHC.Hs.Decls type XXInstDecl (GhcPass _1) = DataConCantHappen

type family XXLHsQTyVars x #

#### Instances

Instances details

type XXLHsQTyVars (GhcPass _1) |
Instance details Defined in GHC.Hs.Type type XXLHsQTyVars (GhcPass _1) = DataConCantHappen

type family XXLit x #

#### Instances

Instances details

type XXLit (GhcPass _1) |
Instance details Defined in GHC.Hs.Lit type XXLit (GhcPass _1) = DataConCantHappen

type family XXMatch x b #

#### Instances

Instances details

type XXMatch (GhcPass _1) b |
Instance details Defined in GHC.Hs.Expr type XXMatch (GhcPass _1) b = DataConCantHappen

type family XXMatchGroup x b #

#### Instances

Instances details

type XXMatchGroup (GhcPass _1) b |
Instance details Defined in GHC.Hs.Expr type XXMatchGroup (GhcPass _1) b = DataConCantHappen

type family XXModule x #

#### Instances

Instances details

type XXModule p |
Instance details Defined in GHC.Hs type XXModule p = DataConCantHappen

type family XXOverLit x #

#### Instances

Instances details

type XXOverLit (GhcPass _1) |
Instance details Defined in GHC.Hs.Lit type XXOverLit (GhcPass _1) = DataConCantHappen

type family XXParStmtBlock x x' #

#### Instances

Instances details

type XXParStmtBlock (GhcPass pL) (GhcPass pR) |
Instance details Defined in GHC.Hs.Expr type XXParStmtBlock (GhcPass pL) (GhcPass pR) = DataConCantHappen

type family XXPat x #

#### Instances

Instances details

type XXPat GhcPs |
Instance details Defined in GHC.Hs.Pat type XXPat GhcPs = DataConCantHappen
type XXPat GhcRn |
Instance details Defined in GHC.Hs.Pat type XXPat GhcRn = HsPatExpansion (Pat GhcRn) (Pat GhcRn)
type XXPat GhcTc |
Instance details Defined in GHC.Hs.Pat type XXPat GhcTc = XXPatGhcTc

type family XXPatSynBind x x' #

#### Instances

Instances details

type XXPatSynBind (GhcPass idL) (GhcPass idR) |
Instance details Defined in GHC.Hs.Binds type XXPatSynBind (GhcPass idL) (GhcPass idR) = DataConCantHappen

type family XXPragE x #

#### Instances

Instances details

type XXPragE (GhcPass _1) |
Instance details Defined in GHC.Hs.Expr type XXPragE (GhcPass _1) = DataConCantHappen

type family XXQuote x #

#### Instances

Instances details

type XXQuote GhcPs |
Instance details Defined in GHC.Hs.Expr type XXQuote GhcPs = DataConCantHappen
type XXQuote GhcRn |
Instance details Defined in GHC.Hs.Expr type XXQuote GhcRn = DataConCantHappen
type XXQuote GhcTc |
Instance details Defined in GHC.Hs.Expr type XXQuote GhcTc = NoExtField

type family XXRoleAnnotDecl x #

#### Instances

Instances details

type XXRoleAnnotDecl (GhcPass _1) |
Instance details Defined in GHC.Hs.Decls type XXRoleAnnotDecl (GhcPass _1) = DataConCantHappen

type family XXRuleBndr x #

#### Instances

Instances details

type XXRuleBndr (GhcPass _1) |
Instance details Defined in GHC.Hs.Decls type XXRuleBndr (GhcPass _1) = DataConCantHappen

type family XXRuleDecl x #

#### Instances

Instances details

type XXRuleDecl (GhcPass _1) |
Instance details Defined in GHC.Hs.Decls type XXRuleDecl (GhcPass _1) = DataConCantHappen

type family XXRuleDecls x #

#### Instances

Instances details

type XXRuleDecls (GhcPass _1) |
Instance details Defined in GHC.Hs.Decls type XXRuleDecls (GhcPass _1) = DataConCantHappen

type family XXSig x #

#### Instances

Instances details

type XXSig GhcPs |
Instance details Defined in GHC.Hs.Binds type XXSig GhcPs = DataConCantHappen
type XXSig GhcRn |
Instance details Defined in GHC.Hs.Binds type XXSig GhcRn = IdSig
type XXSig GhcTc |
Instance details Defined in GHC.Hs.Binds type XXSig GhcTc = IdSig

type family XXSpliceDecl x #

#### Instances

Instances details

type XXSpliceDecl (GhcPass _1) |
Instance details Defined in GHC.Hs.Decls type XXSpliceDecl (GhcPass _1) = DataConCantHappen

type family XXStandaloneKindSig x #

#### Instances

Instances details

type XXStandaloneKindSig (GhcPass p) |
Instance details Defined in GHC.Hs.Decls type XXStandaloneKindSig (GhcPass p) = DataConCantHappen

type family XXStmtLR x x' b #

#### Instances

Instances details

type XXStmtLR (GhcPass _1) (GhcPass _2) b |
Instance details Defined in GHC.Hs.Expr type XXStmtLR (GhcPass _1) (GhcPass _2) b = DataConCantHappen

type family XXTupArg x #

#### Instances

Instances details

type XXTupArg (GhcPass _1) |
Instance details Defined in GHC.Hs.Expr type XXTupArg (GhcPass _1) = DataConCantHappen

type family XXTyClDecl x #

#### Instances

Instances details

type XXTyClDecl (GhcPass _1) |
Instance details Defined in GHC.Hs.Decls type XXTyClDecl (GhcPass _1) = DataConCantHappen

type family XXTyClGroup x #

#### Instances

Instances details

type XXTyClGroup (GhcPass _1) |
Instance details Defined in GHC.Hs.Decls type XXTyClGroup (GhcPass _1) = DataConCantHappen

type family XXTyFamInstDecl x #

#### Instances

Instances details

type XXTyFamInstDecl (GhcPass _1) |
Instance details Defined in GHC.Hs.Decls type XXTyFamInstDecl (GhcPass _1) = DataConCantHappen

type family XXTyLit x #

#### Instances

Instances details

type XXTyLit (GhcPass _1) |
Instance details Defined in GHC.Hs.Type type XXTyLit (GhcPass _1) = DataConCantHappen

type family XXTyVarBndr x #

#### Instances

Instances details

type XXTyVarBndr (GhcPass _1) |
Instance details Defined in GHC.Hs.Type type XXTyVarBndr (GhcPass _1) = DataConCantHappen

type family XXType x #

#### Instances

Instances details

type XXType (GhcPass _1) |
Instance details Defined in GHC.Hs.Type type XXType (GhcPass _1) = HsCoreTy

type family XXUntypedSplice x #

#### Instances

Instances details

type XXUntypedSplice p |
Instance details Defined in GHC.Hs.Expr type XXUntypedSplice p = DataConCantHappen

type family XXValBindsLR x x' #

#### Instances

Instances details

type XXValBindsLR (GhcPass pL) pR |
Instance details Defined in GHC.Hs.Binds type XXValBindsLR (GhcPass pL) pR = NHsValBindsLR (GhcPass pL)

type family XXWarnDecl x #

#### Instances

Instances details

type XXWarnDecl (GhcPass _1) |
Instance details Defined in GHC.Hs.Decls type XXWarnDecl (GhcPass _1) = DataConCantHappen

type family XXWarnDecls x #

#### Instances

Instances details

type XXWarnDecls (GhcPass _1) |
Instance details Defined in GHC.Hs.Decls type XXWarnDecls (GhcPass _1) = DataConCantHappen

data IE pass #

Constructors

IEVar (XIEVar pass) (LIEWrappedName pass) |
IEThingAbs (XIEThingAbs pass) (LIEWrappedName pass) |
IEThingAll (XIEThingAll pass) (LIEWrappedName pass) |
IEThingWith (XIEThingWith pass) (LIEWrappedName pass) IEWildcard [LIEWrappedName pass] |
IEModuleContents (XIEModuleContents pass) (XRec pass ModuleName) |
IEGroup (XIEGroup pass) Int (LHsDoc pass) |
IEDoc (XIEDoc pass) (LHsDoc pass) |
IEDocNamed (XIEDocNamed pass) String |
XIE !(XXIE pass) |

#### Instances

Instances details

ToHie (IEContext (LocatedA (IE GhcRn))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: IEContext (LocatedA (IE GhcRn)) -> HieM [HieAST Type]
type Anno (LocatedA (IE (GhcPass p))) |
Instance details Defined in GHC.Hs.ImpExp type Anno (LocatedA (IE (GhcPass p))) = SrcSpanAnnA
type Anno (IE (GhcPass p)) |
Instance details Defined in GHC.Hs.ImpExp type Anno (IE (GhcPass p)) = SrcSpanAnnA
type Anno [LocatedA (IE (GhcPass p))] |
Instance details Defined in GHC.Hs.ImpExp type Anno [LocatedA (IE (GhcPass p))] = SrcSpanAnnL

data IEWildcard #

Constructors

NoIEWildcard |
IEWildcard Int |

#### Instances

Instances details

Data IEWildcard |
Instance details Defined in Language.Haskell.Syntax.ImpExp Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> IEWildcard -> c IEWildcard gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c IEWildcard toConstr :: IEWildcard -> Constr dataTypeOf :: IEWildcard -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c IEWildcard) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c IEWildcard) gmapT :: (forall b. Data b => b -> b) -> IEWildcard -> IEWildcard gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> IEWildcard -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> IEWildcard -> r gmapQ :: (forall d. Data d => d -> u) -> IEWildcard -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> IEWildcard -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> IEWildcard -> m IEWildcard gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> IEWildcard -> m IEWildcard gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> IEWildcard -> m IEWildcard
Eq IEWildcard |
Instance details Defined in Language.Haskell.Syntax.ImpExp Methods (==) :: IEWildcard -> IEWildcard -> Bool # (/=) :: IEWildcard -> IEWildcard -> Bool #

data IEWrappedName p #

Constructors

IEName (XIEName p) (LIdP p) |
IEPattern (XIEPattern p) (LIdP p) |
IEType (XIEType p) (LIdP p) |
XIEWrappedName !(XXIEWrappedName p) |

#### Instances

Instances details

ToHie (IEContext (LocatedA (IEWrappedName GhcRn))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: IEContext (LocatedA (IEWrappedName GhcRn)) -> HieM [HieAST Type]
type Anno (IEWrappedName (GhcPass _1)) |
Instance details Defined in GHC.Hs.ImpExp type Anno (IEWrappedName (GhcPass _1)) = SrcSpanAnnA

data ImportDecl pass #

Constructors

ImportDecl |
Fields ideclExt :: XCImportDecl pass ideclName :: XRec pass ModuleName ideclPkgQual :: ImportDeclPkgQual pass ideclSource :: IsBootInterface ideclSafe :: Bool ideclQualified :: ImportDeclQualifiedStyle ideclAs :: Maybe (XRec pass ModuleName) ideclImportList :: Maybe (ImportListInterpretation, XRec pass [LIE pass])
XImportDecl !(XXImportDecl pass) |

#### Instances

Instances details

NFData (ImportDecl GhcPs) # |
Instance details Defined in Development.IDE.GHC.Orphans Methods rnf :: ImportDecl GhcPs -> () #
ToHie (LocatedA (ImportDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (ImportDecl GhcRn) -> HieM [HieAST Type]
type Anno (ImportDecl (GhcPass p)) |
Instance details Defined in GHC.Hs.ImpExp type Anno (ImportDecl (GhcPass p)) = SrcSpanAnnA

data ImportDeclQualifiedStyle #

Constructors

QualifiedPre |
QualifiedPost |
NotQualified |

#### Instances

Instances details

Data ImportDeclQualifiedStyle |
Instance details Defined in Language.Haskell.Syntax.ImpExp Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> ImportDeclQualifiedStyle -> c ImportDeclQualifiedStyle gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c ImportDeclQualifiedStyle toConstr :: ImportDeclQualifiedStyle -> Constr dataTypeOf :: ImportDeclQualifiedStyle -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c ImportDeclQualifiedStyle) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c ImportDeclQualifiedStyle) gmapT :: (forall b. Data b => b -> b) -> ImportDeclQualifiedStyle -> ImportDeclQualifiedStyle gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> ImportDeclQualifiedStyle -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> ImportDeclQualifiedStyle -> r gmapQ :: (forall d. Data d => d -> u) -> ImportDeclQualifiedStyle -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> ImportDeclQualifiedStyle -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> ImportDeclQualifiedStyle -> m ImportDeclQualifiedStyle gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> ImportDeclQualifiedStyle -> m ImportDeclQualifiedStyle gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> ImportDeclQualifiedStyle -> m ImportDeclQualifiedStyle
Eq ImportDeclQualifiedStyle |
Instance details Defined in Language.Haskell.Syntax.ImpExp Methods (==) :: ImportDeclQualifiedStyle -> ImportDeclQualifiedStyle -> Bool # (/=) :: ImportDeclQualifiedStyle -> ImportDeclQualifiedStyle -> Bool #

data ImportListInterpretation #

Constructors

Exactly |
EverythingBut |

#### Instances

Instances details

Data ImportListInterpretation |
Instance details Defined in Language.Haskell.Syntax.ImpExp Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> ImportListInterpretation -> c ImportListInterpretation gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c ImportListInterpretation toConstr :: ImportListInterpretation -> Constr dataTypeOf :: ImportListInterpretation -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c ImportListInterpretation) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c ImportListInterpretation) gmapT :: (forall b. Data b => b -> b) -> ImportListInterpretation -> ImportListInterpretation gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> ImportListInterpretation -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> ImportListInterpretation -> r gmapQ :: (forall d. Data d => d -> u) -> ImportListInterpretation -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> ImportListInterpretation -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> ImportListInterpretation -> m ImportListInterpretation gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> ImportListInterpretation -> m ImportListInterpretation gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> ImportListInterpretation -> m ImportListInterpretation
Eq ImportListInterpretation |
Instance details Defined in Language.Haskell.Syntax.ImpExp Methods (==) :: ImportListInterpretation -> ImportListInterpretation -> Bool # (/=) :: ImportListInterpretation -> ImportListInterpretation -> Bool #

type LIE pass = XRec pass (IE pass) #

type LIEWrappedName p = XRec p (IEWrappedName p) #

type LImportDecl pass = XRec pass (ImportDecl pass) #

data OverLitVal #

Constructors

HsIntegral !IntegralLit |
HsFractional !FractionalLit |
HsIsString !SourceText !FastString |

#### Instances

Instances details

Data OverLitVal |
Instance details Defined in Language.Haskell.Syntax.Lit Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> OverLitVal -> c OverLitVal gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c OverLitVal toConstr :: OverLitVal -> Constr dataTypeOf :: OverLitVal -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c OverLitVal) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c OverLitVal) gmapT :: (forall b. Data b => b -> b) -> OverLitVal -> OverLitVal gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> OverLitVal -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> OverLitVal -> r gmapQ :: (forall d. Data d => d -> u) -> OverLitVal -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> OverLitVal -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> OverLitVal -> m OverLitVal gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> OverLitVal -> m OverLitVal gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> OverLitVal -> m OverLitVal
Eq OverLitVal |
Instance details Defined in Language.Haskell.Syntax.Lit Methods (==) :: OverLitVal -> OverLitVal -> Bool # (/=) :: OverLitVal -> OverLitVal -> Bool #
Ord OverLitVal |
Instance details Defined in Language.Haskell.Syntax.Lit Methods compare :: OverLitVal -> OverLitVal -> Ordering (<) :: OverLitVal -> OverLitVal -> Bool (<=) :: OverLitVal -> OverLitVal -> Bool (>) :: OverLitVal -> OverLitVal -> Bool (>=) :: OverLitVal -> OverLitVal -> Bool max :: OverLitVal -> OverLitVal -> OverLitVal min :: OverLitVal -> OverLitVal -> OverLitVal

data HsConPatTyArg p #

Constructors

HsConPatTyArg !(LHsToken "@" p) (HsPatSigType p) |

data HsFieldBind lhs rhs #

Constructors

HsFieldBind |
Fields hfbAnn :: XHsFieldBind lhs hfbLHS :: lhs hfbRHS :: rhs hfbPun :: Bool

#### Instances

Instances details

Foldable (HsFieldBind lhs) |
Instance details Defined in Language.Haskell.Syntax.Pat Methods fold :: Monoid m => HsFieldBind lhs m -> m foldMap :: Monoid m => (a -> m) -> HsFieldBind lhs a -> m foldMap' :: Monoid m => (a -> m) -> HsFieldBind lhs a -> m foldr :: (a -> b -> b) -> b -> HsFieldBind lhs a -> b foldr' :: (a -> b -> b) -> b -> HsFieldBind lhs a -> b foldl :: (b -> a -> b) -> b -> HsFieldBind lhs a -> b foldl' :: (b -> a -> b) -> b -> HsFieldBind lhs a -> b foldr1 :: (a -> a -> a) -> HsFieldBind lhs a -> a foldl1 :: (a -> a -> a) -> HsFieldBind lhs a -> a toList :: HsFieldBind lhs a -> [a] null :: HsFieldBind lhs a -> Bool length :: HsFieldBind lhs a -> Int elem :: Eq a => a -> HsFieldBind lhs a -> Bool maximum :: Ord a => HsFieldBind lhs a -> a minimum :: Ord a => HsFieldBind lhs a -> a sum :: Num a => HsFieldBind lhs a -> a product :: Num a => HsFieldBind lhs a -> a
Traversable (HsFieldBind lhs) |
Instance details Defined in Language.Haskell.Syntax.Pat Methods traverse :: Applicative f => (a -> f b) -> HsFieldBind lhs a -> f (HsFieldBind lhs b) # sequenceA :: Applicative f => HsFieldBind lhs (f a) -> f (HsFieldBind lhs a) mapM :: Monad m => (a -> m b) -> HsFieldBind lhs a -> m (HsFieldBind lhs b) # sequence :: Monad m => HsFieldBind lhs (m a) -> m (HsFieldBind lhs a) #
Functor (HsFieldBind lhs) |
Instance details Defined in Language.Haskell.Syntax.Pat Methods fmap :: (a -> b) -> HsFieldBind lhs a -> HsFieldBind lhs b # (<$) :: a -> HsFieldBind lhs b -> HsFieldBind lhs a #
(ToHie (RFContext label), ToHie arg, HasLoc arg, Data arg, Data label) => ToHie (RContext (LocatedA (HsFieldBind label arg))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: RContext (LocatedA (HsFieldBind label arg)) -> HieM [HieAST Type]
type Anno (HsFieldBind lhs rhs) |
Instance details Defined in GHC.Hs.Pat type Anno (HsFieldBind lhs rhs) = SrcSpanAnnA

type HsRecField p arg = HsFieldBind (LFieldOcc p) arg #

data HsRecFields p arg #

Constructors

HsRecFields |
Fields rec_flds :: [LHsRecField p arg] rec_dotdot :: Maybe (XRec p RecFieldsDotDot)

#### Instances

Instances details

(ToHie arg, HasLoc arg, Data arg, HiePass p) => ToHie (RContext (HsRecFields (GhcPass p) arg)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: RContext (HsRecFields (GhcPass p) arg) -> HieM [HieAST Type]

type HsRecUpdField p = HsFieldBind (LAmbiguousFieldOcc p) (LHsExpr p) #

type LHsFieldBind p id arg = XRec p (HsFieldBind id arg) #

type LHsRecField p arg = XRec p (HsRecField p arg) #

type LHsRecUpdField p = XRec p (HsRecUpdField p) #

type LPat p = XRec p (Pat p) #

newtype RecFieldsDotDot #

Constructors

RecFieldsDotDot |
Fields unRecFieldsDotDot :: Int

#### Instances

Instances details

Data RecFieldsDotDot |
Instance details Defined in Language.Haskell.Syntax.Pat Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> RecFieldsDotDot -> c RecFieldsDotDot gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c RecFieldsDotDot toConstr :: RecFieldsDotDot -> Constr dataTypeOf :: RecFieldsDotDot -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c RecFieldsDotDot) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c RecFieldsDotDot) gmapT :: (forall b. Data b => b -> b) -> RecFieldsDotDot -> RecFieldsDotDot gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> RecFieldsDotDot -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> RecFieldsDotDot -> r gmapQ :: (forall d. Data d => d -> u) -> RecFieldsDotDot -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> RecFieldsDotDot -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> RecFieldsDotDot -> m RecFieldsDotDot gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> RecFieldsDotDot -> m RecFieldsDotDot gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> RecFieldsDotDot -> m RecFieldsDotDot
Eq RecFieldsDotDot |
Instance details Defined in Language.Haskell.Syntax.Pat Methods (==) :: RecFieldsDotDot -> RecFieldsDotDot -> Bool # (/=) :: RecFieldsDotDot -> RecFieldsDotDot -> Bool #
Ord RecFieldsDotDot |
Instance details Defined in Language.Haskell.Syntax.Pat Methods compare :: RecFieldsDotDot -> RecFieldsDotDot -> Ordering (<) :: RecFieldsDotDot -> RecFieldsDotDot -> Bool (<=) :: RecFieldsDotDot -> RecFieldsDotDot -> Bool (>) :: RecFieldsDotDot -> RecFieldsDotDot -> Bool (>=) :: RecFieldsDotDot -> RecFieldsDotDot -> Bool max :: RecFieldsDotDot -> RecFieldsDotDot -> RecFieldsDotDot min :: RecFieldsDotDot -> RecFieldsDotDot -> RecFieldsDotDot
type Anno RecFieldsDotDot |
Instance details Defined in GHC.Hs.Pat type Anno RecFieldsDotDot = SrcSpan

data AmbiguousFieldOcc pass #

Constructors

Unambiguous (XUnambiguous pass) (XRec pass RdrName) |
Ambiguous (XAmbiguous pass) (XRec pass RdrName) |
XAmbiguousFieldOcc !(XXAmbiguousFieldOcc pass) |

#### Instances

Instances details

HiePass p => ToHie (RFContext (LocatedAn NoEpAnns (AmbiguousFieldOcc (GhcPass p)))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: RFContext (LocatedAn NoEpAnns (AmbiguousFieldOcc (GhcPass p))) -> HieM [HieAST Type]
type Anno (AmbiguousFieldOcc (GhcPass p)) |
Instance details Defined in GHC.Hs.Type type Anno (AmbiguousFieldOcc (GhcPass p)) = SrcAnn NoEpAnns

data ConDeclField pass #

Constructors

ConDeclField |
Fields cd_fld_ext :: XConDeclField pass cd_fld_names :: [LFieldOcc pass] cd_fld_type :: LBangType pass cd_fld_doc :: Maybe (LHsDoc pass)
XConDeclField !(XXConDeclField pass) |

#### Instances

Instances details

ToHie (LocatedA (ConDeclField GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (ConDeclField GhcRn) -> HieM [HieAST Type]
ToHie (LocatedL [LocatedA (ConDeclField GhcRn)]) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedL [LocatedA (ConDeclField GhcRn)] -> HieM [HieAST Type]
type Anno (ConDeclField (GhcPass p)) |
Instance details Defined in GHC.Hs.Type type Anno (ConDeclField (GhcPass p)) = SrcSpanAnnA
type Anno [LocatedA (ConDeclField (GhcPass _1))] |
Instance details Defined in GHC.Hs.Decls type Anno [LocatedA (ConDeclField (GhcPass _1))] = SrcSpanAnnL

data FieldOcc pass #

Constructors

FieldOcc |
Fields foExt :: XCFieldOcc pass foLabel :: XRec pass RdrName
XFieldOcc !(XXFieldOcc pass) |

#### Instances

Instances details

HiePass p => ToHie (Context (FieldOcc (GhcPass p))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: Context (FieldOcc (GhcPass p)) -> HieM [HieAST Type]
HiePass p => ToHie (RFContext (LocatedAn NoEpAnns (FieldOcc (GhcPass p)))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: RFContext (LocatedAn NoEpAnns (FieldOcc (GhcPass p))) -> HieM [HieAST Type]
(Eq (XRec pass RdrName), Eq (XCFieldOcc pass), Eq (XXFieldOcc pass)) => Eq (FieldOcc pass) |
Instance details Defined in Language.Haskell.Syntax.Type Methods (==) :: FieldOcc pass -> FieldOcc pass -> Bool # (/=) :: FieldOcc pass -> FieldOcc pass -> Bool #
type Anno (FieldOcc (GhcPass p)) |
Instance details Defined in GHC.Hs.Type type Anno (FieldOcc (GhcPass p)) = SrcAnn NoEpAnns

data HsArg tm ty #

Constructors

HsValArg tm |
HsTypeArg SrcSpan ty |
HsArgPar SrcSpan |

#### Instances

Instances details

(HasLoc tm, HasLoc ty) => HasLoc (HsArg tm ty) |
Instance details Defined in GHC.Iface.Ext.Ast Methods loc :: HsArg tm ty -> SrcSpan
(ToHie tm, ToHie ty) => ToHie (HsArg tm ty) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: HsArg tm ty -> HieM [HieAST Type]

data HsArrow pass #

Constructors

HsUnrestrictedArrow !(LHsUniToken "->" "\8594" pass) |
HsLinearArrow !(HsLinearArrowTokens pass) |
HsExplicitMult !(LHsToken "%" pass) !(LHsType pass) !(LHsUniToken "->" "\8594" pass) |

data HsConDetails tyarg arg rec #

Constructors

PrefixCon [tyarg] [arg] |
RecCon rec |
InfixCon arg arg |

#### Instances

Instances details

(Data tyarg, Data rec, Data arg) => Data (HsConDetails tyarg arg rec) |
Instance details Defined in Language.Haskell.Syntax.Type Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> HsConDetails tyarg arg rec -> c (HsConDetails tyarg arg rec) gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (HsConDetails tyarg arg rec) toConstr :: HsConDetails tyarg arg rec -> Constr dataTypeOf :: HsConDetails tyarg arg rec -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (HsConDetails tyarg arg rec)) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (HsConDetails tyarg arg rec)) gmapT :: (forall b. Data b => b -> b) -> HsConDetails tyarg arg rec -> HsConDetails tyarg arg rec gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> HsConDetails tyarg arg rec -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> HsConDetails tyarg arg rec -> r gmapQ :: (forall d. Data d => d -> u) -> HsConDetails tyarg arg rec -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> HsConDetails tyarg arg rec -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> HsConDetails tyarg arg rec -> m (HsConDetails tyarg arg rec) gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> HsConDetails tyarg arg rec -> m (HsConDetails tyarg arg rec) gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> HsConDetails tyarg arg rec -> m (HsConDetails tyarg arg rec)
(ToHie tyarg, ToHie arg, ToHie rec) => ToHie (HsConDetails tyarg arg rec) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: HsConDetails tyarg arg rec -> HieM [HieAST Type]

type HsContext pass = [LHsType pass] #

data HsForAllTelescope pass #

Constructors

HsForAllVis |
Fields hsf_xvis :: XHsForAllVis pass hsf_vis_bndrs :: [LHsTyVarBndr () pass]
HsForAllInvis |
Fields hsf_xinvis :: XHsForAllInvis pass hsf_invis_bndrs :: [LHsTyVarBndr Specificity pass]
XHsForAllTelescope !(XXHsForAllTelescope pass) |

newtype HsIPName #

Constructors

HsIPName FastString |

#### Instances

Instances details

Data HsIPName |
Instance details Defined in Language.Haskell.Syntax.Type Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> HsIPName -> c HsIPName gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c HsIPName toConstr :: HsIPName -> Constr dataTypeOf :: HsIPName -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c HsIPName) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c HsIPName) gmapT :: (forall b. Data b => b -> b) -> HsIPName -> HsIPName gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> HsIPName -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> HsIPName -> r gmapQ :: (forall d. Data d => d -> u) -> HsIPName -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> HsIPName -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> HsIPName -> m HsIPName gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> HsIPName -> m HsIPName gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> HsIPName -> m HsIPName
Eq HsIPName |
Instance details Defined in Language.Haskell.Syntax.Type Methods (==) :: HsIPName -> HsIPName -> Bool # (/=) :: HsIPName -> HsIPName -> Bool #
ToHie (LocatedAn NoEpAnns HsIPName) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedAn NoEpAnns HsIPName -> HieM [HieAST Type]
type Anno HsIPName |
Instance details Defined in GHC.Hs.Type type Anno HsIPName = SrcAnn NoEpAnns

type HsKind pass = HsType pass #

data HsLinearArrowTokens pass #

Constructors

HsPct1 !(LHsToken "%1" pass) !(LHsUniToken "->" "\8594" pass) |
HsLolly !(LHsToken "\8888" pass) |

type HsOuterFamEqnTyVarBndrs = HsOuterTyVarBndrs () #

type HsOuterSigTyVarBndrs = HsOuterTyVarBndrs Specificity #

data HsOuterTyVarBndrs flag pass #

Constructors

HsOuterImplicit |
Fields hso_ximplicit :: XHsOuterImplicit pass
HsOuterExplicit |
Fields hso_xexplicit :: XHsOuterExplicit pass flag hso_bndrs :: [LHsTyVarBndr flag (NoGhcTc pass)]
XHsOuterTyVarBndrs !(XXHsOuterTyVarBndrs pass) |

#### Instances

Instances details

Data flag => ToHie (TVScoped (HsOuterTyVarBndrs flag GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: TVScoped (HsOuterTyVarBndrs flag GhcRn) -> HieM [HieAST Type]
type Anno (HsOuterTyVarBndrs _1 (GhcPass _2)) |
Instance details Defined in GHC.Hs.Type type Anno (HsOuterTyVarBndrs _1 (GhcPass _2)) = SrcSpanAnnA

data HsPatSigType pass #

Constructors

HsPS |
Fields hsps_ext :: XHsPS pass hsps_body :: LHsType pass
XHsPatSigType !(XXHsPatSigType pass) |

#### Instances

Instances details

ToHie (TScoped (HsPatSigType GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: TScoped (HsPatSigType GhcRn) -> HieM [HieAST Type]

data HsScaled pass a #

Constructors

HsScaled (HsArrow pass) a |

#### Instances

Instances details

ToHie a => ToHie (HsScaled GhcRn a) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: HsScaled GhcRn a -> HieM [HieAST Type]

data HsSigType pass #

Constructors

HsSig |
Fields sig_ext :: XHsSig pass sig_bndrs :: HsOuterSigTyVarBndrs pass sig_body :: LHsType pass
XHsSigType !(XXHsSigType pass) |

#### Instances

Instances details

ToHie (TScoped (LocatedA (HsSigType GhcRn))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: TScoped (LocatedA (HsSigType GhcRn)) -> HieM [HieAST Type]
ToHie (TScoped (HsWildCardBndrs GhcRn (LocatedA (HsSigType GhcRn)))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: TScoped (HsWildCardBndrs GhcRn (LocatedA (HsSigType GhcRn))) -> HieM [HieAST Type]
type Anno (HsSigType (GhcPass p)) |
Instance details Defined in GHC.Hs.Type type Anno (HsSigType (GhcPass p)) = SrcSpanAnnA

data HsTupleSort #

Constructors

HsUnboxedTuple |
HsBoxedOrConstraintTuple |

#### Instances

Instances details

Data HsTupleSort |
Instance details Defined in Language.Haskell.Syntax.Type Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> HsTupleSort -> c HsTupleSort gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c HsTupleSort toConstr :: HsTupleSort -> Constr dataTypeOf :: HsTupleSort -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c HsTupleSort) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c HsTupleSort) gmapT :: (forall b. Data b => b -> b) -> HsTupleSort -> HsTupleSort gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> HsTupleSort -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> HsTupleSort -> r gmapQ :: (forall d. Data d => d -> u) -> HsTupleSort -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> HsTupleSort -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> HsTupleSort -> m HsTupleSort gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> HsTupleSort -> m HsTupleSort gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> HsTupleSort -> m HsTupleSort

data HsTyLit pass #

Constructors

HsNumTy (XNumTy pass) Integer |
HsStrTy (XStrTy pass) FastString |
HsCharTy (XCharTy pass) Char |
XTyLit !(XXTyLit pass) |

data HsTyVarBndr flag pass #

Constructors

UserTyVar (XUserTyVar pass) flag (LIdP pass) |
KindedTyVar (XKindedTyVar pass) flag (LIdP pass) (LHsKind pass) |
XTyVarBndr !(XXTyVarBndr pass) |

#### Instances

Instances details

Data flag => ToHie (TVScoped (LocatedA (HsTyVarBndr flag GhcRn))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: TVScoped (LocatedA (HsTyVarBndr flag GhcRn)) -> HieM [HieAST Type]
type Anno (HsTyVarBndr _flag (GhcPass _1)) |
Instance details Defined in GHC.Hs.Type type Anno (HsTyVarBndr _flag (GhcPass _1)) = SrcSpanAnnA
type Anno (HsTyVarBndr _flag GhcPs) |
Instance details Defined in GHC.Hs.Type type Anno (HsTyVarBndr _flag GhcPs) = SrcSpanAnnA
type Anno (HsTyVarBndr _flag GhcRn) |
Instance details Defined in GHC.Hs.Type type Anno (HsTyVarBndr _flag GhcRn) = SrcSpanAnnA
type Anno (HsTyVarBndr _flag GhcTc) |
Instance details Defined in GHC.Hs.Type type Anno (HsTyVarBndr _flag GhcTc) = SrcSpanAnnA

data HsType pass #

Constructors

HsForAllTy |
Fields hst_xforall :: XForAllTy pass hst_tele :: HsForAllTelescope pass hst_body :: LHsType pass
HsQualTy |
Fields hst_xqual :: XQualTy pass hst_ctxt :: LHsContext pass hst_body :: LHsType pass
HsTyVar (XTyVar pass) PromotionFlag (LIdP pass) |
HsAppTy (XAppTy pass) (LHsType pass) (LHsType pass) |
HsAppKindTy (XAppKindTy pass) (LHsType pass) (LHsKind pass) |
HsFunTy (XFunTy pass) (HsArrow pass) (LHsType pass) (LHsType pass) |
HsListTy (XListTy pass) (LHsType pass) |
HsTupleTy (XTupleTy pass) HsTupleSort [LHsType pass] |
HsSumTy (XSumTy pass) [LHsType pass] |
HsOpTy (XOpTy pass) PromotionFlag (LHsType pass) (LIdP pass) (LHsType pass) |
HsParTy (XParTy pass) (LHsType pass) |
HsIParamTy (XIParamTy pass) (XRec pass HsIPName) (LHsType pass) |
HsStarTy (XStarTy pass) Bool |
HsKindSig (XKindSig pass) (LHsType pass) (LHsKind pass) |
HsSpliceTy (XSpliceTy pass) (HsUntypedSplice pass) |
HsDocTy (XDocTy pass) (LHsType pass) (LHsDoc pass) |
HsBangTy (XBangTy pass) HsSrcBang (LHsType pass) |
HsRecTy (XRecTy pass) [LConDeclField pass] |
HsExplicitListTy (XExplicitListTy pass) PromotionFlag [LHsType pass] |
HsExplicitTupleTy (XExplicitTupleTy pass) [LHsType pass] |
HsTyLit (XTyLit pass) (HsTyLit pass) |
HsWildCardTy (XWildCardTy pass) |
XHsType !(XXType pass) |

#### Instances

Instances details

ToHie (TScoped (FamEqn GhcRn (LocatedA (HsType GhcRn)))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: TScoped (FamEqn GhcRn (LocatedA (HsType GhcRn))) -> HieM [HieAST Type]
ToHie (TScoped (HsWildCardBndrs GhcRn (LocatedA (HsType GhcRn)))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: TScoped (HsWildCardBndrs GhcRn (LocatedA (HsType GhcRn))) -> HieM [HieAST Type]
ToHie (LocatedA (HsType GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (HsType GhcRn) -> HieM [HieAST Type]
ToHie (LocatedC [LocatedA (HsType GhcRn)]) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedC [LocatedA (HsType GhcRn)] -> HieM [HieAST Type]
DisambTD (HsType GhcPs) |
Instance details Defined in GHC.Parser.PostProcess Methods mkHsAppTyHeadPV :: LHsType GhcPs -> PV (LocatedA (HsType GhcPs)) mkHsAppTyPV :: LocatedA (HsType GhcPs) -> LHsType GhcPs -> PV (LocatedA (HsType GhcPs)) mkHsAppKindTyPV :: LocatedA (HsType GhcPs) -> SrcSpan -> LHsType GhcPs -> PV (LocatedA (HsType GhcPs)) mkHsOpTyPV :: PromotionFlag -> LHsType GhcPs -> LocatedN RdrName -> LHsType GhcPs -> PV (LocatedA (HsType GhcPs)) mkUnpackednessPV :: Located UnpackednessPragma -> LocatedA (HsType GhcPs) -> PV (LocatedA (HsType GhcPs))
type Anno (BangType (GhcPass p)) |
Instance details Defined in GHC.Hs.Type type Anno (BangType (GhcPass p)) = SrcSpanAnnA
type Anno (HsKind (GhcPass p)) |
Instance details Defined in GHC.Hs.Type type Anno (HsKind (GhcPass p)) = SrcSpanAnnA
type Anno (HsType (GhcPass p)) |
Instance details Defined in GHC.Hs.Type type Anno (HsType (GhcPass p)) = SrcSpanAnnA
type Anno [LocatedA (HsType (GhcPass p))] |
Instance details Defined in GHC.Hs.Type type Anno [LocatedA (HsType (GhcPass p))] = SrcSpanAnnC
type Anno (FamEqn p (LocatedA (HsType p))) |
Instance details Defined in GHC.Hs.Decls type Anno (FamEqn p (LocatedA (HsType p))) = SrcSpanAnnA

data HsWildCardBndrs pass thing #

Constructors

HsWC |
Fields hswc_ext :: XHsWC pass thing hswc_body :: thing
XHsWildCardBndrs !(XXHsWildCardBndrs pass thing) |

#### Instances

Instances details

ToHie (TScoped (HsWildCardBndrs GhcRn (LocatedA (HsSigType GhcRn)))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: TScoped (HsWildCardBndrs GhcRn (LocatedA (HsSigType GhcRn))) -> HieM [HieAST Type]
ToHie (TScoped (HsWildCardBndrs GhcRn (LocatedA (HsType GhcRn)))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: TScoped (HsWildCardBndrs GhcRn (LocatedA (HsType GhcRn))) -> HieM [HieAST Type]

type LAmbiguousFieldOcc pass = XRec pass (AmbiguousFieldOcc pass) #

type LBangType pass = XRec pass (BangType pass) #

type LConDeclField pass = XRec pass (ConDeclField pass) #

type LFieldOcc pass = XRec pass (FieldOcc pass) #

type LHsContext pass = XRec pass (HsContext pass) #

type LHsKind pass = XRec pass (HsKind pass) #

data LHsQTyVars pass #

Constructors

HsQTvs |
Fields hsq_ext :: XHsQTvs pass hsq_explicit :: [LHsTyVarBndr () pass]
XLHsQTyVars !(XXLHsQTyVars pass) |

#### Instances

Instances details

ToHie (TScoped (LHsQTyVars GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: TScoped (LHsQTyVars GhcRn) -> HieM [HieAST Type]

type LHsSigType pass = XRec pass (HsSigType pass) #

type LHsSigWcType pass = HsWildCardBndrs pass (LHsSigType pass) #

type LHsTyVarBndr flag pass = XRec pass (HsTyVarBndr flag pass) #

type LHsType pass = XRec pass (HsType pass) #

type LHsTypeArg p = HsArg (LHsType p) (LHsKind p) #

type LHsWcType pass = HsWildCardBndrs pass (LHsType pass) #

data PromotionFlag #

Constructors

NotPromoted |
IsPromoted |

#### Instances

Instances details

Data PromotionFlag |
Instance details Defined in Language.Haskell.Syntax.Type Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> PromotionFlag -> c PromotionFlag gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c PromotionFlag toConstr :: PromotionFlag -> Constr dataTypeOf :: PromotionFlag -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c PromotionFlag) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c PromotionFlag) gmapT :: (forall b. Data b => b -> b) -> PromotionFlag -> PromotionFlag gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> PromotionFlag -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> PromotionFlag -> r gmapQ :: (forall d. Data d => d -> u) -> PromotionFlag -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> PromotionFlag -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> PromotionFlag -> m PromotionFlag gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> PromotionFlag -> m PromotionFlag gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> PromotionFlag -> m PromotionFlag
Eq PromotionFlag |
Instance details Defined in Language.Haskell.Syntax.Type Methods (==) :: PromotionFlag -> PromotionFlag -> Bool # (/=) :: PromotionFlag -> PromotionFlag -> Bool #

pattern XFunDep :: !(XXFunDep pass) -> FunDep pass #

moduleNameString :: ModuleName -> String #

mkModuleName :: String -> ModuleName #

isCompleteMatchSig :: UnXRec p => LSig p -> Bool #

isFixityLSig :: UnXRec p => LSig p -> Bool #

isInlineLSig :: UnXRec p => LSig p -> Bool #

isMinimalLSig :: UnXRec p => LSig p -> Bool #

isPragLSig :: UnXRec p => LSig p -> Bool #

isSCCFunSig :: UnXRec p => LSig p -> Bool #

isSpecInstLSig :: UnXRec p => LSig p -> Bool #

isSpecLSig :: UnXRec p => LSig p -> Bool #

isTypeLSig :: UnXRec p => LSig p -> Bool #

annProvenanceName_maybe :: UnXRec p => AnnProvenance p -> Maybe (IdP p) #

collectRuleBndrSigTys :: [RuleBndr pass] -> [HsPatSigType pass] #

dataDefnConsNewOrData :: DataDefnCons a -> NewOrData #

docDeclDoc :: DocDecl pass -> LHsDoc pass #

hsGroupInstDecls :: HsGroup id -> [LInstDecl id] #

isClassDecl :: TyClDecl pass -> Bool #

isClosedTypeFamilyInfo :: FamilyInfo pass -> Bool #

isDataDecl :: TyClDecl pass -> Bool #

isDataFamilyDecl :: TyClDecl pass -> Bool #

isFamilyDecl :: TyClDecl pass -> Bool #

isOpenTypeFamilyInfo :: FamilyInfo pass -> Bool #

isSynDecl :: TyClDecl pass -> Bool #

isTypeDataDefnCons :: DataDefnCons a -> Bool #

isTypeFamilyDecl :: TyClDecl pass -> Bool #

tyClDeclTyVars :: TyClDecl pass -> LHsQTyVars pass #

tyClGroupInstDecls :: [TyClGroup pass] -> [LInstDecl pass] #

tyClGroupKindSigs :: [TyClGroup pass] -> [LStandaloneKindSig pass] #

tyClGroupRoleDecls :: [TyClGroup pass] -> [LRoleAnnotDecl pass] #

tyClGroupTyClDecls :: [TyClGroup pass] -> [LTyClDecl pass] #

isComprehensionContext :: HsStmtContext id -> Bool #

isDoComprehensionContext :: HsDoFlavour -> Bool #

isInfixMatch :: Match id body -> Bool #

isMonadCompContext :: HsStmtContext id -> Bool #

isMonadDoCompContext :: HsDoFlavour -> Bool #

isMonadDoStmtContext :: HsDoFlavour -> Bool #

isMonadStmtContext :: HsStmtContext id -> Bool #

isPatSynCtxt :: HsMatchContext p -> Bool #

qualifiedDoModuleName_maybe :: HsStmtContext p -> Maybe ModuleName #

dataConCantHappen :: DataConCantHappen -> a #

noExtField :: NoExtField #

negateOverLitVal :: OverLitVal -> OverLitVal #

mkModuleNameFS :: FastString -> ModuleName #

moduleNameColons :: ModuleName -> String #

moduleNameFS :: ModuleName -> FastString #

moduleNameSlashes :: ModuleName -> String #

parseModuleName :: ReadP ModuleName #

stableModuleNameCmp :: ModuleName -> ModuleName -> Ordering #

hsConPatArgs :: UnXRec p => HsConPatDetails p -> [LPat p] #

hsRecFieldSel :: UnXRec p => HsRecField p arg -> XCFieldOcc p #

hsRecFields :: UnXRec p => HsRecFields p arg -> [XCFieldOcc p] #

hsRecFieldsArgs :: UnXRec p => HsRecFields p arg -> [arg] #

hsIPNameFS :: HsIPName -> FastString #

hsMult :: HsScaled pass a -> HsArrow pass #

hsPatSigType :: HsPatSigType pass -> LHsType pass #

hsQTvExplicit :: LHsQTyVars pass -> [LHsTyVarBndr () pass] #

hsScaledThing :: HsScaled pass a -> a #

isHsKindedTyVar :: HsTyVarBndr flag pass -> Bool #

isPromoted :: PromotionFlag -> Bool #

mapHsOuterImplicit :: (XHsOuterImplicit pass -> XHsOuterImplicit pass) -> HsOuterTyVarBndrs flag pass -> HsOuterTyVarBndrs flag pass #

noTypeArgs :: [Void] #

data Role #

Constructors

Nominal |
Representational |
Phantom |

#### Instances

Instances details

Data Role |
Instance details Defined in Language.Haskell.Syntax.Basic Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Role -> c Role gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Role toConstr :: Role -> Constr dataTypeOf :: Role -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Role) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Role) gmapT :: (forall b. Data b => b -> b) -> Role -> Role gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Role -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Role -> r gmapQ :: (forall d. Data d => d -> u) -> Role -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> Role -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> Role -> m Role gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Role -> m Role gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Role -> m Role
Eq Role |
Instance details Defined in Language.Haskell.Syntax.Basic Methods (==) :: Role -> Role -> Bool # (/=) :: Role -> Role -> Bool #
Ord Role |
Instance details Defined in Language.Haskell.Syntax.Basic Methods compare :: Role -> Role -> Ordering (<) :: Role -> Role -> Bool (<=) :: Role -> Role -> Bool (>) :: Role -> Role -> Bool (>=) :: Role -> Role -> Bool max :: Role -> Role -> Role min :: Role -> Role -> Role
type Anno (Maybe Role) |
Instance details Defined in GHC.Hs.Decls type Anno (Maybe Role) = SrcAnn NoEpAnns
type Anno (Maybe Role) |
Instance details Defined in GHC.Hs.Decls type Anno (Maybe Role) = SrcAnn NoEpAnns

data HsWrapper #

Constructors

WpHole |
WpCompose HsWrapper HsWrapper |
WpFun HsWrapper HsWrapper (Scaled TcTypeFRR) |
WpCast TcCoercionR |
WpEvLam EvVar |
WpEvApp EvTerm |
WpTyLam TyVar |
WpTyApp KindOrType |
WpLet TcEvBinds |
WpMultCoercion Coercion |

#### Instances

Instances details

Data HsWrapper |
Instance details Defined in GHC.Tc.Types.Evidence Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> HsWrapper -> c HsWrapper gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c HsWrapper toConstr :: HsWrapper -> Constr dataTypeOf :: HsWrapper -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c HsWrapper) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c HsWrapper) gmapT :: (forall b. Data b => b -> b) -> HsWrapper -> HsWrapper gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> HsWrapper -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> HsWrapper -> r gmapQ :: (forall d. Data d => d -> u) -> HsWrapper -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> HsWrapper -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> HsWrapper -> m HsWrapper gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> HsWrapper -> m HsWrapper gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> HsWrapper -> m HsWrapper
Monoid HsWrapper |
Instance details Defined in GHC.Tc.Types.Evidence Methods mempty :: HsWrapper # mappend :: HsWrapper -> HsWrapper -> HsWrapper # mconcat :: [HsWrapper] -> HsWrapper #
Semigroup HsWrapper |
Instance details Defined in GHC.Tc.Types.Evidence Methods (<>) :: HsWrapper -> HsWrapper -> HsWrapper # sconcat :: NonEmpty HsWrapper -> HsWrapper # stimes :: Integral b => b -> HsWrapper -> HsWrapper #
Outputable HsWrapper |
Instance details Defined in GHC.Tc.Types.Evidence Methods ppr :: HsWrapper -> SDoc #
ToHie (LocatedA HsWrapper) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA HsWrapper -> HieM [HieAST Type]

data TcEvBinds #

Constructors

TcEvBinds EvBindsVar |
EvBinds (Bag EvBind) |

#### Instances

Instances details

Data TcEvBinds |
Instance details Defined in GHC.Tc.Types.Evidence Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> TcEvBinds -> c TcEvBinds gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c TcEvBinds toConstr :: TcEvBinds -> Constr dataTypeOf :: TcEvBinds -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c TcEvBinds) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c TcEvBinds) gmapT :: (forall b. Data b => b -> b) -> TcEvBinds -> TcEvBinds gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> TcEvBinds -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> TcEvBinds -> r gmapQ :: (forall d. Data d => d -> u) -> TcEvBinds -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> TcEvBinds -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> TcEvBinds -> m TcEvBinds gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> TcEvBinds -> m TcEvBinds gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> TcEvBinds -> m TcEvBinds
Outputable TcEvBinds |
Instance details Defined in GHC.Tc.Types.Evidence Methods ppr :: TcEvBinds -> SDoc #
ToHie (EvBindContext (LocatedA TcEvBinds)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: EvBindContext (LocatedA TcEvBinds) -> HieM [HieAST Type]

data CoercionHole #

#### Instances

Instances details

Data CoercionHole |
Instance details Defined in GHC.Core.TyCo.Rep Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> CoercionHole -> c CoercionHole gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c CoercionHole toConstr :: CoercionHole -> Constr dataTypeOf :: CoercionHole -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c CoercionHole) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c CoercionHole) gmapT :: (forall b. Data b => b -> b) -> CoercionHole -> CoercionHole gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> CoercionHole -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> CoercionHole -> r gmapQ :: (forall d. Data d => d -> u) -> CoercionHole -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> CoercionHole -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> CoercionHole -> m CoercionHole gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> CoercionHole -> m CoercionHole gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> CoercionHole -> m CoercionHole
Uniquable CoercionHole |
Instance details Defined in GHC.Core.TyCo.Rep Methods getUnique :: CoercionHole -> Unique #
Outputable CoercionHole |
Instance details Defined in GHC.Core.TyCo.Rep Methods ppr :: CoercionHole -> SDoc #

data LeftOrRight #

Constructors

CLeft |
CRight |

#### Instances

Instances details

Data LeftOrRight |
Instance details Defined in GHC.Types.Basic Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> LeftOrRight -> c LeftOrRight gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c LeftOrRight toConstr :: LeftOrRight -> Constr dataTypeOf :: LeftOrRight -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c LeftOrRight) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c LeftOrRight) gmapT :: (forall b. Data b => b -> b) -> LeftOrRight -> LeftOrRight gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> LeftOrRight -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> LeftOrRight -> r gmapQ :: (forall d. Data d => d -> u) -> LeftOrRight -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> LeftOrRight -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> LeftOrRight -> m LeftOrRight gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> LeftOrRight -> m LeftOrRight gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> LeftOrRight -> m LeftOrRight
Binary LeftOrRight |
Instance details Defined in GHC.Types.Basic Methods put_ :: BinHandle -> LeftOrRight -> IO () put :: BinHandle -> LeftOrRight -> IO (Bin LeftOrRight) get :: BinHandle -> IO LeftOrRight
Outputable LeftOrRight |
Instance details Defined in GHC.Types.Basic Methods ppr :: LeftOrRight -> SDoc #
Eq LeftOrRight |
Instance details Defined in GHC.Types.Basic Methods (==) :: LeftOrRight -> LeftOrRight -> Bool # (/=) :: LeftOrRight -> LeftOrRight -> Bool #

type TcCoercion = Coercion #

data EvBind #

Constructors

EvBind |
Fields eb_lhs :: EvVar eb_rhs :: EvTerm eb_is_given :: Bool

#### Instances

Instances details

Outputable EvBind |
Instance details Defined in GHC.Tc.Types.Evidence Methods ppr :: EvBind -> SDoc #

data EvBindsVar #

Constructors

EvBindsVar |
Fields ebv_uniq :: Unique ebv_binds :: IORef EvBindMap ebv_tcvs :: IORef CoVarSet
CoEvBindsVar |
Fields ebv_uniq :: Unique ebv_tcvs :: IORef CoVarSet

#### Instances

Instances details

Uniquable EvBindsVar |
Instance details Defined in GHC.Tc.Types.Evidence Methods getUnique :: EvBindsVar -> Unique #
Outputable EvBindsVar |
Instance details Defined in GHC.Tc.Types.Evidence Methods ppr :: EvBindsVar -> SDoc #

data EvTerm #

Constructors

EvExpr EvExpr |
EvTypeable Type EvTypeable |
EvFun |
Fields et_tvs :: [TyVar] et_given :: [EvVar] et_binds :: TcEvBinds et_body :: EvVar

#### Instances

Instances details

Data EvTerm |
Instance details Defined in GHC.Tc.Types.Evidence Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> EvTerm -> c EvTerm gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c EvTerm toConstr :: EvTerm -> Constr dataTypeOf :: EvTerm -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c EvTerm) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c EvTerm) gmapT :: (forall b. Data b => b -> b) -> EvTerm -> EvTerm gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> EvTerm -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> EvTerm -> r gmapQ :: (forall d. Data d => d -> u) -> EvTerm -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> EvTerm -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> EvTerm -> m EvTerm gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> EvTerm -> m EvTerm gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> EvTerm -> m EvTerm
Outputable EvTerm |
Instance details Defined in GHC.Tc.Types.Evidence Methods ppr :: EvTerm -> SDoc #

data QuoteWrapper #

Constructors

QuoteWrapper EvVar Type |

#### Instances

Instances details

Data QuoteWrapper |
Instance details Defined in GHC.Tc.Types.Evidence Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> QuoteWrapper -> c QuoteWrapper gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c QuoteWrapper toConstr :: QuoteWrapper -> Constr dataTypeOf :: QuoteWrapper -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c QuoteWrapper) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c QuoteWrapper) gmapT :: (forall b. Data b => b -> b) -> QuoteWrapper -> QuoteWrapper gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> QuoteWrapper -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> QuoteWrapper -> r gmapQ :: (forall d. Data d => d -> u) -> QuoteWrapper -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> QuoteWrapper -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> QuoteWrapper -> m QuoteWrapper gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> QuoteWrapper -> m QuoteWrapper gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> QuoteWrapper -> m QuoteWrapper

data EvCallStack #

Constructors

EvCsEmpty |
EvCsPushCall FastString RealSrcSpan EvExpr |

#### Instances

Instances details

Data EvCallStack |
Instance details Defined in GHC.Tc.Types.Evidence Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> EvCallStack -> c EvCallStack gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c EvCallStack toConstr :: EvCallStack -> Constr dataTypeOf :: EvCallStack -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c EvCallStack) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c EvCallStack) gmapT :: (forall b. Data b => b -> b) -> EvCallStack -> EvCallStack gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> EvCallStack -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> EvCallStack -> r gmapQ :: (forall d. Data d => d -> u) -> EvCallStack -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> EvCallStack -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> EvCallStack -> m EvCallStack gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> EvCallStack -> m EvCallStack gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> EvCallStack -> m EvCallStack
Outputable EvCallStack |
Instance details Defined in GHC.Tc.Types.Evidence Methods ppr :: EvCallStack -> SDoc #

data EvTypeable #

Constructors

EvTypeableTyCon TyCon [EvTerm] |
EvTypeableTyApp EvTerm EvTerm |
EvTypeableTrFun EvTerm EvTerm EvTerm |
EvTypeableTyLit EvTerm |

#### Instances

Instances details

Data EvTypeable |
Instance details Defined in GHC.Tc.Types.Evidence Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> EvTypeable -> c EvTypeable gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c EvTypeable toConstr :: EvTypeable -> Constr dataTypeOf :: EvTypeable -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c EvTypeable) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c EvTypeable) gmapT :: (forall b. Data b => b -> b) -> EvTypeable -> EvTypeable gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> EvTypeable -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> EvTypeable -> r gmapQ :: (forall d. Data d => d -> u) -> EvTypeable -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> EvTypeable -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> EvTypeable -> m EvTypeable gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> EvTypeable -> m EvTypeable gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> EvTypeable -> m EvTypeable
Outputable EvTypeable |
Instance details Defined in GHC.Tc.Types.Evidence Methods ppr :: EvTypeable -> SDoc #

data HoleExprRef #

Constructors

HER (IORef EvTerm) TcType Unique |

#### Instances

Instances details

Data HoleExprRef |
Instance details Defined in GHC.Tc.Types.Evidence Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> HoleExprRef -> c HoleExprRef gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c HoleExprRef toConstr :: HoleExprRef -> Constr dataTypeOf :: HoleExprRef -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c HoleExprRef) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c HoleExprRef) gmapT :: (forall b. Data b => b -> b) -> HoleExprRef -> HoleExprRef gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> HoleExprRef -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> HoleExprRef -> r gmapQ :: (forall d. Data d => d -> u) -> HoleExprRef -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> HoleExprRef -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> HoleExprRef -> m HoleExprRef gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> HoleExprRef -> m HoleExprRef gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> HoleExprRef -> m HoleExprRef
Outputable HoleExprRef |
Instance details Defined in GHC.Tc.Types.Evidence Methods ppr :: HoleExprRef -> SDoc #

newtype EvBindMap #

Constructors

EvBindMap |
Fields ev_bind_varenv :: DVarEnv EvBind

#### Instances

Instances details

Outputable EvBindMap |
Instance details Defined in GHC.Tc.Types.Evidence Methods ppr :: EvBindMap -> SDoc #

type EvExpr = CoreExpr #

type TcCoercionN = CoercionN #

type TcCoercionP = CoercionP #

type TcCoercionR = CoercionR #

type TcMCoercion = MCoercion #

type TcMCoercionN = MCoercionN #

type TcMCoercionR = MCoercionR #

isEmptyTcEvBinds :: TcEvBinds -> Bool #

pickLR :: LeftOrRight -> (a, a) -> a #

hsWrapDictBinders :: HsWrapper -> Bag DictId #

idHsWrapper :: HsWrapper #

mkWpTyApps :: [Type] -> HsWrapper #

applyQuoteWrapper :: QuoteWrapper -> HsWrapper #

collectHsWrapBinders :: HsWrapper -> ([Var], HsWrapper) #

emptyEvBindMap :: EvBindMap #

emptyTcEvBinds :: TcEvBinds #

evBindMapBinds :: EvBindMap -> Bag EvBind #

evBindMapToVarSet :: EvBindMap -> VarSet #

evBindVar :: EvBind -> EvVar #

evCast :: EvExpr -> TcCoercion -> EvTerm #

evCoercion :: TcCoercion -> EvTerm #

evDFunApp :: DFunId -> [Type] -> [EvExpr] -> EvTerm #

evDataConApp :: DataCon -> [Type] -> [EvExpr] -> EvTerm #

evId :: EvId -> EvExpr #

evSelector :: Id -> [Type] -> [EvExpr] -> EvExpr #

evTermCoercion :: EvTerm -> TcCoercion #

evTermCoercion_maybe :: EvTerm -> Maybe TcCoercion #

evTypeable :: Type -> EvTypeable -> EvTerm #

evVarsOfTerm :: EvTerm -> VarSet #

extendEvBinds :: EvBindMap -> EvBind -> EvBindMap #

filterEvBindMap :: (EvBind -> Bool) -> EvBindMap -> EvBindMap #

findNeededEvVars :: EvBindMap -> VarSet -> VarSet #

foldEvBindMap :: (EvBind -> a -> a) -> a -> EvBindMap -> a #

isCoEvBindsVar :: EvBindsVar -> Bool #

isEmptyEvBindMap :: EvBindMap -> Bool #

isIdHsWrapper :: HsWrapper -> Bool #

lookupEvBind :: EvBindMap -> EvVar -> Maybe EvBind #

maybeSymCo :: SwapFlag -> TcCoercion -> TcCoercion #

mkEvCast :: EvExpr -> TcCoercion -> EvTerm #

mkEvScSelectors :: Class -> [TcType] -> [(TcPredType, EvExpr)] #

mkGivenEvBind :: EvVar -> EvTerm -> EvBind #

mkWantedEvBind :: EvVar -> EvTerm -> EvBind #

mkWpCastN :: TcCoercionN -> HsWrapper #

mkWpCastR :: TcCoercionR -> HsWrapper #

mkWpEta :: [Id] -> HsWrapper -> HsWrapper #

mkWpEvApps :: [EvTerm] -> HsWrapper #

mkWpEvLams :: [Var] -> HsWrapper #

mkWpEvVarApps :: [EvVar] -> HsWrapper #

mkWpFun :: HsWrapper -> HsWrapper -> Scaled TcTypeFRR -> TcType -> HsWrapper #

mkWpLet :: TcEvBinds -> HsWrapper #

mkWpTyLams :: [TyVar] -> HsWrapper #

nonDetStrictFoldEvBindMap :: (EvBind -> a -> a) -> a -> EvBindMap -> a #

pprHsWrapper :: HsWrapper -> (Bool -> SDoc) -> SDoc #

quoteWrapperTyVarTy :: QuoteWrapper -> Type #

unwrapIP :: Type -> CoercionR #

varSetMinusEvBindMap :: VarSet -> EvBindMap -> VarSet #

wrapIP :: Type -> CoercionR #

data Env gbl lcl #

Constructors

Env |
Fields env_top :: !HscEnv env_um :: !Char env_gbl :: gbl env_lcl :: lcl

#### Instances

Instances details

ContainsHooks (Env gbl lcl) |
Instance details Defined in GHC.Tc.Types Methods extractHooks :: Env gbl lcl -> Hooks
ContainsDynFlags (Env gbl lcl) |
Instance details Defined in GHC.Tc.Types Methods extractDynFlags :: Env gbl lcl -> DynFlags
ContainsModule gbl => ContainsModule (Env gbl lcl) |
Instance details Defined in GHC.Tc.Types Methods extractModule :: Env gbl lcl -> Module #
ContainsLogger (Env gbl lcl) |
Instance details Defined in GHC.Tc.Types Methods extractLogger :: Env gbl lcl -> Logger

data FrontendResult #

Constructors

FrontendTypecheck TcGblEnv |

data WhereFrom #

Constructors

ImportByUser IsBootInterface |
ImportBySystem |
ImportByPlugin |

#### Instances

Instances details

Outputable WhereFrom |
Instance details Defined in GHC.Tc.Types Methods ppr :: WhereFrom -> SDoc #

data TcGblEnv #

Constructors

TcGblEnv |
Fields tcg_mod :: Module tcg_semantic_mod :: Module tcg_src :: HscSource tcg_rdr_env :: GlobalRdrEnv tcg_default :: Maybe [Type] tcg_fix_env :: FixityEnv tcg_field_env :: RecFieldEnv tcg_type_env :: TypeEnv tcg_type_env_var :: KnotVars (IORef TypeEnv) tcg_inst_env :: !InstEnv tcg_fam_inst_env :: !FamInstEnv tcg_ann_env :: AnnEnv tcg_exports :: [AvailInfo] tcg_imports :: ImportAvails tcg_dus :: DefUses tcg_used_gres :: TcRef [GlobalRdrElt] tcg_keep :: TcRef NameSet tcg_th_used :: TcRef Bool tcg_th_splice_used :: TcRef Bool tcg_th_needed_deps :: TcRef ([Linkable], PkgsLoaded) tcg_dfun_n :: TcRef OccSet tcg_merged :: [(Module, Fingerprint)] tcg_rn_exports :: Maybe [(LIE GhcRn, Avails)] tcg_rn_imports :: [LImportDecl GhcRn] tcg_rn_decls :: Maybe (HsGroup GhcRn) tcg_dependent_files :: TcRef [FilePath] tcg_th_topdecls :: TcRef [LHsDecl GhcPs] tcg_th_foreign_files :: TcRef [(ForeignSrcLang, FilePath)] tcg_th_topnames :: TcRef NameSet tcg_th_modfinalizers :: TcRef [(TcLclEnv, ThModFinalizers)] tcg_th_coreplugins :: TcRef [String] tcg_th_state :: TcRef (Map TypeRep Dynamic) tcg_th_remote_state :: TcRef (Maybe (ForeignRef (IORef QState))) tcg_th_docs :: TcRef THDocs tcg_ev_binds :: Bag EvBind tcg_tr_module :: Maybe Id tcg_binds :: LHsBinds GhcTc tcg_sigs :: NameSet tcg_imp_specs :: [LTcSpecPrag] tcg_warns :: Warnings GhcRn tcg_anns :: [Annotation] tcg_tcs :: [TyCon] tcg_ksigs :: NameSet tcg_insts :: [ClsInst] tcg_fam_insts :: [FamInst] tcg_rules :: [LRuleDecl GhcTc] tcg_fords :: [LForeignDecl GhcTc] tcg_patsyns :: [PatSyn] tcg_doc_hdr :: Maybe (LHsDoc GhcRn) tcg_hpc :: !AnyHpcUsage tcg_self_boot :: SelfBootInfo tcg_main :: Maybe Name tcg_safe_infer :: TcRef Bool tcg_safe_infer_reasons :: TcRef (Messages TcRnMessage) tcg_tc_plugin_solvers :: [TcPluginSolver] tcg_tc_plugin_rewriters :: UniqFM TyCon [TcPluginRewriter] tcg_defaulting_plugins :: [FillDefaulting] tcg_hf_plugins :: [HoleFitPlugin] tcg_top_loc :: RealSrcSpan tcg_static_wc :: TcRef WantedConstraints tcg_complete_matches :: !CompleteMatches tcg_cc_st :: TcRef CostCentreState tcg_next_wrapper_num :: TcRef (ModuleEnv Int)

#### Instances

Instances details

ContainsModule TcGblEnv |
Instance details Defined in GHC.Tc.Types Methods extractModule :: TcGblEnv -> Module #

data ForeignSrcLang #

Constructors

LangC |
LangCxx |
LangObjc |
LangObjcxx |
LangAsm |
LangJs |
RawObject |

#### Instances

Instances details

Generic ForeignSrcLang |
Instance details Defined in GHC.ForeignSrcLang.Type Associated Types type Rep ForeignSrcLang :: Type -> Type Methods from :: ForeignSrcLang -> Rep ForeignSrcLang x to :: Rep ForeignSrcLang x -> ForeignSrcLang
Show ForeignSrcLang |
Instance details Defined in GHC.ForeignSrcLang.Type Methods showsPrec :: Int -> ForeignSrcLang -> ShowS # show :: ForeignSrcLang -> String # showList :: [ForeignSrcLang] -> ShowS #
Eq ForeignSrcLang |
Instance details Defined in GHC.ForeignSrcLang.Type Methods (==) :: ForeignSrcLang -> ForeignSrcLang -> Bool # (/=) :: ForeignSrcLang -> ForeignSrcLang -> Bool #
type Rep ForeignSrcLang |
Instance details Defined in GHC.ForeignSrcLang.Type type Rep ForeignSrcLang = D1 ('MetaData "ForeignSrcLang" "GHC.ForeignSrcLang.Type" "ghc-boot-th-9.6.3" 'False) ((C1 ('MetaCons "LangC" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "LangCxx" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "LangObjc" 'PrefixI 'False) (U1 :: Type -> Type))) :+: ((C1 ('MetaCons "LangObjcxx" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "LangAsm" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "LangJs" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "RawObject" 'PrefixI 'False) (U1 :: Type -> Type))))

data DocLoc #

Constructors

DeclDoc Name |
ArgDoc Name Int |
InstDoc Name |
ModuleDoc |

#### Instances

Instances details

Eq DocLoc |
Instance details Defined in GHC.Tc.Types Methods (==) :: DocLoc -> DocLoc -> Bool # (/=) :: DocLoc -> DocLoc -> Bool #
Ord DocLoc |
Instance details Defined in GHC.Tc.Types Methods compare :: DocLoc -> DocLoc -> Ordering (<) :: DocLoc -> DocLoc -> Bool (<=) :: DocLoc -> DocLoc -> Bool (>) :: DocLoc -> DocLoc -> Bool (>=) :: DocLoc -> DocLoc -> Bool max :: DocLoc -> DocLoc -> DocLoc min :: DocLoc -> DocLoc -> DocLoc

data TcRnMessage #

#### Instances

Instances details

Generic TcRnMessage |
Instance details Defined in GHC.Tc.Errors.Types Associated Types type Rep TcRnMessage :: Type -> Type Methods from :: TcRnMessage -> Rep TcRnMessage x to :: Rep TcRnMessage x -> TcRnMessage
type Rep TcRnMessage |
Instance details Defined in GHC.Tc.Errors.Types type Rep TcRnMessage = D1 ('MetaData "TcRnMessage" "GHC.Tc.Errors.Types" "ghc" 'False) (((((((C1 ('MetaCons "TcRnUnknownMessage" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 UnknownDiagnostic)) :+: C1 ('MetaCons "TcRnMessageWithInfo" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 UnitState) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 TcRnMessageDetailed))) :+: (C1 ('MetaCons "TcRnWithHsDocContext" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 HsDocContext) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 TcRnMessage)) :+: (C1 ('MetaCons "TcRnSolverReport" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 SolverReportWithCtxt) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 DiagnosticReason) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [GhcHint]))) :+: C1 ('MetaCons "TcRnRedundantConstraints" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [Id]) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (SkolemInfoAnon, Bool)))))) :+: ((C1 ('MetaCons "TcRnInaccessibleCode" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Implication) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 SolverReportWithCtxt)) :+: (C1 ('MetaCons "TcRnTypeDoesNotHaveFixedRuntimeRep" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Type) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 FixedRuntimeRepProvenance) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 ErrInfo))) :+: C1 ('MetaCons "TcRnImplicitLift" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Name) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 ErrInfo)))) :+: (C1 ('MetaCons "TcRnUnusedPatternBinds" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (HsBind GhcRn))) :+: (C1 ('MetaCons "TcRnDodgyImports" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 RdrName)) :+: C1 ('MetaCons "TcRnDodgyExports" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Name)))))) :+: (((C1 ('MetaCons "TcRnMissingImportList" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (IE GhcPs))) :+: (C1 ('MetaCons "TcRnUnsafeDueToPlugin" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "TcRnModMissingRealSrcSpan" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Module)))) :+: (C1 ('MetaCons "TcRnIdNotExportedFromModuleSig" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Name) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Module)) :+: (C1 ('MetaCons "TcRnIdNotExportedFromLocalSig" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Name)) :+: C1 ('MetaCons "TcRnShadowedName" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 OccName) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ShadowedNameProvenance))))) :+: ((C1 ('MetaCons "TcRnDuplicateWarningDecls" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (LocatedN RdrName)) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 RdrName)) :+: (C1 ('MetaCons "TcRnSimplifierTooManyIterations" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Cts) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 IntWithInf) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 WantedConstraints))) :+: C1 ('MetaCons "TcRnIllegalPatSynDecl" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (LIdP GhcPs))))) :+: (C1 ('MetaCons "TcRnLinearPatSyn" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Type)) :+: (C1 ('MetaCons "TcRnEmptyRecordUpdate" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "TcRnIllegalFieldPunning" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Located RdrName)))))))) :+: ((((C1 ('MetaCons "TcRnIllegalWildcardsInRecord" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 RecordFieldPart)) :+: (C1 ('MetaCons "TcRnIllegalWildcardInType" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Name)) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 BadAnonWildcardContext)) :+: C1 ('MetaCons "TcRnDuplicateFieldName" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 RecordFieldPart) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (NonEmpty RdrName))))) :+: (C1 ('MetaCons "TcRnIllegalViewPattern" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Pat GhcPs))) :+: (C1 ('MetaCons "TcRnCharLiteralOutOfRange" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedUnpack) (Rec0 Char)) :+: C1 ('MetaCons "TcRnIllegalWildcardsInConstructor" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Name))))) :+: ((C1 ('MetaCons "TcRnIgnoringAnnotations" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [LAnnDecl GhcRn])) :+: (C1 ('MetaCons "TcRnAnnotationInSafeHaskell" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "TcRnInvalidTypeApplication" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Type) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (LHsWcType GhcRn))))) :+: (C1 ('MetaCons "TcRnTagToEnumMissingValArg" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "TcRnTagToEnumUnspecifiedResTy" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Type)) :+: C1 ('MetaCons "TcRnTagToEnumResTyNotAnEnum" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Type)))))) :+: (((C1 ('MetaCons "TcRnTagToEnumResTyTypeData" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Type)) :+: (C1 ('MetaCons "TcRnArrowIfThenElsePredDependsOnResultTy" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "TcRnIllegalHsBootFileDecl" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "TcRnRecursivePatternSynonym" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (LHsBinds GhcRn))) :+: (C1 ('MetaCons "TcRnPartialTypeSigTyVarMismatch" 'PrefixI 'False) ((S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Name) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Name)) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Name) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (LHsSigWcType GhcRn)))) :+: C1 ('MetaCons "TcRnPartialTypeSigBadQuantifier" 'PrefixI 'False) ((S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Name) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Name)) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Type)) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (LHsSigWcType GhcRn))))))) :+: ((C1 ('MetaCons "TcRnMissingSignature" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 MissingSignature) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Exported) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool))) :+: (C1 ('MetaCons "TcRnPolymorphicBinderMissingSig" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Name) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Type)) :+: C1 ('MetaCons "TcRnOverloadedSig" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 TcIdSigInfo)))) :+: (C1 ('MetaCons "TcRnTupleConstraintInst" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Class)) :+: (C1 ('MetaCons "TcRnAbstractClassInst" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Class)) :+: C1 ('MetaCons "TcRnNoClassInstHead" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Type)))))))) :+: (((((C1 ('MetaCons "TcRnUserTypeError" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Type)) :+: C1 ('MetaCons "TcRnConstraintInKind" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Type))) :+: (C1 ('MetaCons "TcRnUnboxedTupleOrSumTypeFuncArg" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 UnboxedTupleOrSum) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Type)) :+: (C1 ('MetaCons "TcRnLinearFuncInKind" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Type)) :+: C1 ('MetaCons "TcRnForAllEscapeError" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Type) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Kind))))) :+: ((C1 ('MetaCons "TcRnVDQInTermType" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Maybe Type))) :+: (C1 ('MetaCons "TcRnBadQuantPredHead" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Type)) :+: C1 ('MetaCons "TcRnIllegalTupleConstraint" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Type)))) :+: (C1 ('MetaCons "TcRnNonTypeVarArgInConstraint" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Type)) :+: (C1 ('MetaCons "TcRnIllegalImplicitParam" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Type)) :+: C1 ('MetaCons "TcRnIllegalConstraintSynonymOfKind" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Type)))))) :+: (((C1 ('MetaCons "TcRnIllegalClassInst" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 TyConFlavour)) :+: (C1 ('MetaCons "TcRnOversaturatedVisibleKindArg" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Type)) :+: C1 ('MetaCons "TcRnBadAssociatedType" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Name) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Name)))) :+: (C1 ('MetaCons "TcRnForAllRankErr" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Rank) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Type)) :+: (C1 ('MetaCons "TcRnMonomorphicBindings" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [Name])) :+: C1 ('MetaCons "TcRnOrphanInstance" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ClsInst))))) :+: ((C1 ('MetaCons "TcRnFunDepConflict" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 UnitState) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (NonEmpty ClsInst))) :+: (C1 ('MetaCons "TcRnDupInstanceDecls" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 UnitState) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (NonEmpty ClsInst))) :+: C1 ('MetaCons "TcRnConflictingFamInstDecls" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (NonEmpty FamInst))))) :+: (C1 ('MetaCons "TcRnFamInstNotInjective" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 InjectivityErrReason) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 TyCon) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (NonEmpty CoAxBranch)))) :+: (C1 ('MetaCons "TcRnBangOnUnliftedType" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Type)) :+: C1 ('MetaCons "TcRnLazyBangOnUnliftedType" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Type))))))) :+: ((((C1 ('MetaCons "TcRnMultipleDefaultDeclarations" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [LDefaultDecl GhcRn])) :+: (C1 ('MetaCons "TcRnBadDefaultType" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Type) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [Class])) :+: C1 ('MetaCons "TcRnPatSynBundledWithNonDataCon" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "TcRnPatSynBundledWithWrongType" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Type) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Type)) :+: (C1 ('MetaCons "TcRnDupeModuleExport" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ModuleName)) :+: C1 ('MetaCons "TcRnExportedModNotImported" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ModuleName))))) :+: ((C1 ('MetaCons "TcRnNullExportedModule" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ModuleName)) :+: (C1 ('MetaCons "TcRnMissingExportList" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ModuleName)) :+: C1 ('MetaCons "TcRnExportHiddenComponents" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (IE GhcPs))))) :+: (C1 ('MetaCons "TcRnDuplicateExport" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 GreName) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (IE GhcPs)) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (IE GhcPs)))) :+: (C1 ('MetaCons "TcRnExportedParentChildMismatch" 'PrefixI 'False) ((S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Name) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 TyThing)) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 GreName) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [Name]))) :+: C1 ('MetaCons "TcRnConflictingExports" 'PrefixI 'False) ((S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 OccName) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 GreName) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 GlobalRdrElt))) :*: ((S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (IE GhcPs)) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 GreName)) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 GlobalRdrElt) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (IE GhcPs))))))))) :+: (((C1 ('MetaCons "TcRnAmbiguousField" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (HsExpr GhcRn)) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 TyCon)) :+: (C1 ('MetaCons "TcRnMissingFields" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ConLike) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [(FieldLabelString, TcType)])) :+: C1 ('MetaCons "TcRnFieldUpdateInvalidType" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [(FieldLabelString, TcType)])))) :+: (C1 ('MetaCons "TcRnNoConstructorHasAllFields" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [FieldLabelString])) :+: (C1 ('MetaCons "TcRnMixedSelectors" 'PrefixI 'False) ((S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Name) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [Id])) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Name) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [Id]))) :+: C1 ('MetaCons "TcRnMissingStrictFields" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ConLike) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [(FieldLabelString, TcType)]))))) :+: ((C1 ('MetaCons "TcRnNoPossibleParentForFields" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [LHsRecUpdField GhcRn])) :+: (C1 ('MetaCons "TcRnBadOverloadedRecordUpdate" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [LHsRecUpdField GhcRn])) :+: C1 ('MetaCons "TcRnStaticFormNotClosed" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Name) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 NotClosedReason)))) :+: (C1 ('MetaCons "TcRnSpecialClassInst" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Class) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Bool)) :+: (C1 ('MetaCons "TcRnUselessTypeable" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "TcRnDerivingDefaults" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Class))))))))) :+: ((((((C1 ('MetaCons "TcRnNonUnaryTypeclassConstraint" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (LHsSigType GhcRn))) :+: C1 ('MetaCons "TcRnPartialTypeSignatures" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 SuggestPartialTypeSignatures) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 ThetaType))) :+: (C1 ('MetaCons "TcRnCannotDeriveInstance" 'PrefixI 'False) ((S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Class) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [Type])) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Maybe (DerivStrategy GhcTc))) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 UsingGeneralizedNewtypeDeriving) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 DeriveInstanceErrReason)))) :+: (C1 ('MetaCons "TcRnLazyGADTPattern" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "TcRnArrowProcGADTPattern" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: ((C1 ('MetaCons "TcRnForallIdentifier" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 RdrName)) :+: (C1 ('MetaCons "TcRnTypeEqualityOutOfScope" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "TcRnTypeEqualityRequiresOperators" 'PrefixI 'False) (U1 :: Type -> Type))) :+: (C1 ('MetaCons "TcRnIllegalTypeOperator" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 SDoc) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 RdrName)) :+: (C1 ('MetaCons "TcRnIllegalTypeOperatorDecl" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 RdrName)) :+: C1 ('MetaCons "TcRnGADTMonoLocalBinds" 'PrefixI 'False) (U1 :: Type -> Type))))) :+: (((C1 ('MetaCons "TcRnNotInScope" 'PrefixI 'False) ((S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 NotInScopeError) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 RdrName)) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [ImportError]) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [GhcHint]))) :+: (C1 ('MetaCons "TcRnUntickedPromotedThing" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 UntickedPromotedThing)) :+: C1 ('MetaCons "TcRnIllegalBuiltinSyntax" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 SDoc) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 RdrName)))) :+: (C1 ('MetaCons "TcRnWarnDefaulting" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [Ct]) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe TyVar)) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Type))) :+: (C1 ('MetaCons "TcRnIncorrectNameSpace" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Name) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool)) :+: C1 ('MetaCons "TcRnForeignImportPrimExtNotSet" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (ForeignImport GhcRn)))))) :+: ((C1 ('MetaCons "TcRnForeignImportPrimSafeAnn" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (ForeignImport GhcRn))) :+: (C1 ('MetaCons "TcRnForeignFunctionImportAsValue" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (ForeignImport GhcRn))) :+: C1 ('MetaCons "TcRnFunPtrImportWithoutAmpersand" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (ForeignImport GhcRn))))) :+: (C1 ('MetaCons "TcRnIllegalForeignDeclBackend" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Either (ForeignExport GhcRn) (ForeignImport GhcRn))) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Backend) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ExpectedBackends))) :+: (C1 ('MetaCons "TcRnUnsupportedCallConv" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Either (ForeignExport GhcRn) (ForeignImport GhcRn))) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 UnsupportedCallConvention)) :+: C1 ('MetaCons "TcRnIllegalForeignType" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Maybe ArgOrResult)) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 IllegalForeignTypeReason))))))) :+: ((((C1 ('MetaCons "TcRnInvalidCIdentifier" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 CLabelString)) :+: (C1 ('MetaCons "TcRnExpectedValueId" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 TcTyThing)) :+: C1 ('MetaCons "TcRnNotARecordSelector" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Name)))) :+: (C1 ('MetaCons "TcRnRecSelectorEscapedTyVar" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 OccName)) :+: (C1 ('MetaCons "TcRnPatSynNotBidirectional" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Name)) :+: C1 ('MetaCons "TcRnSplicePolymorphicLocalVar" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Id))))) :+: ((C1 ('MetaCons "TcRnIllegalDerivingItem" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (LHsSigType GhcRn))) :+: (C1 ('MetaCons "TcRnUnexpectedAnnotation" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (HsType GhcRn)) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 HsSrcBang)) :+: C1 ('MetaCons "TcRnIllegalRecordSyntax" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (HsType GhcRn))))) :+: (C1 ('MetaCons "TcRnUnexpectedTypeSplice" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (HsType GhcRn))) :+: (C1 ('MetaCons "TcRnInvalidVisibleKindArgument" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (LHsType GhcRn)) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Type)) :+: C1 ('MetaCons "TcRnTooManyBinders" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Kind) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 [LHsTyVarBndr () GhcRn])))))) :+: (((C1 ('MetaCons "TcRnDifferentNamesForTyVar" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Name) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Name)) :+: (C1 ('MetaCons "TcRnInvalidReturnKind" 'PrefixI 'False) ((S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 DataSort) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 AllowedDataResKind)) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Kind) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Maybe SuggestUnliftedTypes)))) :+: C1 ('MetaCons "TcRnClassKindNotConstraint" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Kind)))) :+: (C1 ('MetaCons "TcRnUnpromotableThing" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Name) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 PromotionErr)) :+: (C1 ('MetaCons "TcRnMatchesHaveDiffNumArgs" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (HsMatchContext GhcTc)) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 MatchArgBadMatches)) :+: C1 ('MetaCons "TcRnCannotBindScopedTyVarInPatSig" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (NonEmpty (Name, TcTyVar))))))) :+: ((C1 ('MetaCons "TcRnCannotBindTyVarsInPatBind" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (NonEmpty (Name, TcTyVar)))) :+: (C1 ('MetaCons "TcRnTooManyTyArgsInConPattern" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 ConLike) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedUnpack) (Rec0 Int) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedUnpack) (Rec0 Int))) :+: C1 ('MetaCons "TcRnMultipleInlinePragmas" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Id) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (LocatedA InlinePragma)) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (NonEmpty (LocatedA InlinePragma))))))) :+: (C1 ('MetaCons "TcRnUnexpectedPragmas" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Id) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (NonEmpty (LSig GhcRn)))) :+: (C1 ('MetaCons "TcRnNonOverloadedSpecialisePragma" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (LIdP GhcRn))) :+: C1 ('MetaCons "TcRnSpecialiseNotVisible" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Name)))))))) :+: (((((C1 ('MetaCons "TcRnNameByTemplateHaskellQuote" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 RdrName)) :+: (C1 ('MetaCons "TcRnIllegalBindingOfBuiltIn" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 OccName)) :+: C1 ('MetaCons "TcRnPragmaWarning" 'PrefixI 'True) ((S1 ('MetaSel ('Just "pragma_warning_occ") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 OccName) :*: S1 ('MetaSel ('Just "pragma_warning_msg") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (WarningTxt GhcRn))) :*: (S1 ('MetaSel ('Just "pragma_warning_import_mod") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ModuleName) :*: S1 ('MetaSel ('Just "pragma_warning_defined_mod") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ModuleName))))) :+: (C1 ('MetaCons "TcRnIllegalHsigDefaultMethods" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Name) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (NonEmpty (LHsBind GhcRn)))) :+: (C1 ('MetaCons "TcRnBadGenericMethod" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Name) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Name)) :+: C1 ('MetaCons "TcRnWarningMinimalDefIncomplete" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ClassMinimalDef))))) :+: ((C1 ('MetaCons "TcRnDefaultMethodForPragmaLacksBinding" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Id) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Sig GhcRn))) :+: (C1 ('MetaCons "TcRnIgnoreSpecialisePragmaOnDefMethod" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Name)) :+: C1 ('MetaCons "TcRnBadMethodErr" 'PrefixI 'True) (S1 ('MetaSel ('Just "badMethodErrClassName") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Name) :*: S1 ('MetaSel ('Just "badMethodErrMethodName") 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Name)))) :+: (C1 ('MetaCons "TcRnNoExplicitAssocTypeOrDefaultDeclaration" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Name)) :+: (C1 ('MetaCons "TcRnIllegalNewtype" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 DataCon) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Bool) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 IllegalNewtypeReason))) :+: C1 ('MetaCons "TcRnIllegalTypeData" 'PrefixI 'False) (U1 :: Type -> Type))))) :+: (((C1 ('MetaCons "TcRnTypeDataForbids" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 TypeDataForbids)) :+: (C1 ('MetaCons "TcRnTypedTHWithPolyType" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 TcType)) :+: C1 ('MetaCons "TcRnSpliceThrewException" 'PrefixI 'False) ((S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 SplicePhase) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 SomeException)) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 String) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (LHsExpr GhcTc)) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Bool)))))) :+: (C1 ('MetaCons "TcRnInvalidTopDecl" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (HsDecl GhcPs))) :+: (C1 ('MetaCons "TcRnNonExactName" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 RdrName)) :+: C1 ('MetaCons "TcRnAddInvalidCorePlugin" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 String))))) :+: ((C1 ('MetaCons "TcRnAddDocToNonLocalDefn" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 DocLoc)) :+: (C1 ('MetaCons "TcRnFailedToLookupThInstName" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Type) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 LookupTHInstNameErrReason)) :+: C1 ('MetaCons "TcRnCannotReifyInstance" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Type)))) :+: (C1 ('MetaCons "TcRnCannotReifyOutOfScopeThing" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Name)) :+: (C1 ('MetaCons "TcRnCannotReifyThingNotInTypeEnv" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Name)) :+: C1 ('MetaCons "TcRnNoRolesAssociatedWithThing" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 TcTyThing))))))) :+: ((((C1 ('MetaCons "TcRnCannotRepresentType" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 UnrepresentableTypeDescr) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Type)) :+: (C1 ('MetaCons "TcRnRunSpliceFailure" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Maybe String)) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 RunSpliceFailReason)) :+: C1 ('MetaCons "TcRnReportCustomQuasiError" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Bool) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 String)))) :+: (C1 ('MetaCons "TcRnInterfaceLookupError" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Name) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 SDoc)) :+: (C1 ('MetaCons "TcRnUnsatisfiedMinimalDef" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ClassMinimalDef)) :+: C1 ('MetaCons "TcRnMisplacedInstSig" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Name) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (LHsSigType GhcRn)))))) :+: ((C1 ('MetaCons "TcRnBadBootFamInstDecl" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "TcRnIllegalFamilyInstance" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 TyCon)) :+: C1 ('MetaCons "TcRnMissingClassAssoc" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 TyCon)))) :+: (C1 ('MetaCons "TcRnBadFamInstDecl" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 TyCon)) :+: (C1 ('MetaCons "TcRnNotOpenFamily" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 TyCon)) :+: C1 ('MetaCons "TcRnNoRebindableSyntaxRecordDot" 'PrefixI 'False) (U1 :: Type -> Type))))) :+: (((C1 ('MetaCons "TcRnNoFieldPunsRecordDot" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "TcRnIllegalStaticExpression" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (HsExpr GhcPs))) :+: C1 ('MetaCons "TcRnIllegalStaticFormInSplice" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (HsExpr GhcPs))))) :+: (C1 ('MetaCons "TcRnListComprehensionDuplicateBinding" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Name)) :+: (C1 ('MetaCons "TcRnEmptyStmtsGroup" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 EmptyStatementGroupErrReason)) :+: C1 ('MetaCons "TcRnLastStmtNotExpr" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (HsStmtContext GhcRn)) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 UnexpectedStatement))))) :+: ((C1 ('MetaCons "TcRnUnexpectedStatementInContext" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (HsStmtContext GhcRn)) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 UnexpectedStatement) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Extension)))) :+: (C1 ('MetaCons "TcRnIllegalTupleSection" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "TcRnIllegalImplicitParameterBindings" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Either (HsLocalBindsLR GhcPs GhcPs) (HsLocalBindsLR GhcRn GhcPs)))))) :+: (C1 ('MetaCons "TcRnSectionWithoutParentheses" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (HsExpr GhcPs))) :+: (C1 ('MetaCons "TcRnLoopySuperclassSolve" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 CtLoc) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 PredType)) :+: C1 ('MetaCons "TcRnCannotDefaultConcrete" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 FixedRuntimeRepOrigin))))))))))
type DiagnosticOpts TcRnMessage |
Instance details Defined in GHC.Tc.Errors.Ppr type DiagnosticOpts TcRnMessage = TcRnMessageOpts

type RnM = TcRn #

type TcM = TcRn #

data IOEnv env a #

#### Instances

Instances details

MonadFail (IOEnv m) |
Instance details Defined in GHC.Data.IOEnv Methods fail :: String -> IOEnv m a #
MonadFix (IOEnv env) |
Instance details Defined in GHC.Data.IOEnv Methods mfix :: (a -> IOEnv env a) -> IOEnv env a
MonadIO (IOEnv env) |
Instance details Defined in GHC.Data.IOEnv Methods liftIO :: IO a -> IOEnv env a #
Alternative (IOEnv env) |
Instance details Defined in GHC.Data.IOEnv Methods empty :: IOEnv env a # (<|>) :: IOEnv env a -> IOEnv env a -> IOEnv env a # some :: IOEnv env a -> IOEnv env [a] # many :: IOEnv env a -> IOEnv env [a] #
Applicative (IOEnv m) |
Instance details Defined in GHC.Data.IOEnv Methods pure :: a -> IOEnv m a # (<*>) :: IOEnv m (a -> b) -> IOEnv m a -> IOEnv m b # liftA2 :: (a -> b -> c) -> IOEnv m a -> IOEnv m b -> IOEnv m c # (*>) :: IOEnv m a -> IOEnv m b -> IOEnv m b # (<*) :: IOEnv m a -> IOEnv m b -> IOEnv m a #
Functor (IOEnv env) |
Instance details Defined in GHC.Data.IOEnv Methods fmap :: (a -> b) -> IOEnv env a -> IOEnv env b # (<$) :: a -> IOEnv env b -> IOEnv env a #
Monad (IOEnv m) |
Instance details Defined in GHC.Data.IOEnv Methods (>>=) :: IOEnv m a -> (a -> IOEnv m b) -> IOEnv m b # (>>) :: IOEnv m a -> IOEnv m b -> IOEnv m b # return :: a -> IOEnv m a #
MonadPlus (IOEnv env) |
Instance details Defined in GHC.Data.IOEnv Methods mzero :: IOEnv env a # mplus :: IOEnv env a -> IOEnv env a -> IOEnv env a #
MonadCatch (IOEnv env) |
Instance details Defined in GHC.Data.IOEnv Methods catch :: (HasCallStack, Exception e) => IOEnv env a -> (e -> IOEnv env a) -> IOEnv env a
MonadMask (IOEnv env) |
Instance details Defined in GHC.Data.IOEnv Methods mask :: HasCallStack => ((forall a. IOEnv env a -> IOEnv env a) -> IOEnv env b) -> IOEnv env b # uninterruptibleMask :: HasCallStack => ((forall a. IOEnv env a -> IOEnv env a) -> IOEnv env b) -> IOEnv env b # generalBracket :: HasCallStack => IOEnv env a -> (a -> ExitCase b -> IOEnv env c) -> (a -> IOEnv env b) -> IOEnv env (b, c) #
MonadThrow (IOEnv env) |
Instance details Defined in GHC.Data.IOEnv Methods throwM :: (HasCallStack, Exception e) => e -> IOEnv env a #
ContainsHooks env => HasHooks (IOEnv env) |
Instance details Defined in GHC.Data.IOEnv Methods getHooks :: IOEnv env Hooks
ContainsDynFlags env => HasDynFlags (IOEnv env) |
Instance details Defined in GHC.Data.IOEnv Methods getDynFlags :: IOEnv env DynFlags #
ContainsModule env => HasModule (IOEnv env) |
Instance details Defined in GHC.Data.IOEnv Methods getModule :: IOEnv env Module #
ContainsLogger env => HasLogger (IOEnv env) |
Instance details Defined in GHC.Data.IOEnv Methods getLogger :: IOEnv env Logger

data TcLclEnv #

Constructors

TcLclEnv |
Fields tcl_loc :: RealSrcSpan tcl_ctxt :: [ErrCtxt] tcl_in_gen_code :: Bool tcl_tclvl :: TcLevel tcl_th_ctxt :: ThStage tcl_th_bndrs :: ThBindEnv tcl_arrow_ctxt :: ArrowCtxt tcl_rdr :: LocalRdrEnv tcl_env :: TcTypeEnv tcl_usage :: TcRef UsageEnv tcl_bndrs :: TcBinderStack tcl_lie :: TcRef WantedConstraints tcl_errs :: TcRef (Messages TcRnMessage)

type TcRn = TcRnIf TcGblEnv TcLclEnv #

data ImportAvails #

Constructors

ImportAvails |
Fields imp_mods :: ImportedMods imp_direct_dep_mods :: InstalledModuleEnv ModuleNameWithIsBoot imp_dep_direct_pkgs :: Set UnitId imp_trust_own_pkg :: Bool imp_trust_pkgs :: Set UnitId imp_boot_mods :: InstalledModuleEnv ModuleNameWithIsBoot imp_sig_mods :: [ModuleName] imp_orphs :: [Module] imp_finsts :: [Module]

data DefaultingPlugin #

Constructors

DefaultingPlugin |
Fields dePluginInit :: TcPluginM s dePluginRun :: s -> FillDefaulting dePluginStop :: s -> TcPluginM ()

type IfM lcl = TcRnIf IfGblEnv lcl #

data TcPlugin #

Constructors

TcPlugin |
Fields tcPluginInit :: TcPluginM s tcPluginSolve :: s -> TcPluginSolver tcPluginRewrite :: s -> UniqFM TyCon TcPluginRewriter tcPluginStop :: s -> TcPluginM ()

data IfGblEnv #

Constructors

IfGblEnv |
Fields if_doc :: SDoc if_rec_types :: KnotVars (IfG TypeEnv)

type THDocs = Map DocLoc (HsDoc GhcRn) #

type CompleteMatches = [CompleteMatch] #

data IfLclEnv #

Constructors

IfLclEnv |
Fields if_mod :: !Module if_boot :: IsBootInterface if_loc :: SDoc if_nsubst :: Maybe NameShape if_implicits_env :: Maybe TypeEnv if_tv_env :: FastStringEnv TyVar if_id_env :: FastStringEnv Id

data CompleteMatch #

#### Instances

Instances details

Outputable CompleteMatch |
Instance details Defined in GHC.Types.CompleteMatch Methods ppr :: CompleteMatch -> SDoc #

data IOEnvFailure #

Constructors

IOEnvFailure |

#### Instances

Instances details

Exception IOEnvFailure |
Instance details Defined in GHC.Data.IOEnv Methods toException :: IOEnvFailure -> SomeException # fromException :: SomeException -> Maybe IOEnvFailure # displayException :: IOEnvFailure -> String #
Show IOEnvFailure |
Instance details Defined in GHC.Data.IOEnv Methods showsPrec :: Int -> IOEnvFailure -> ShowS # show :: IOEnvFailure -> String # showList :: [IOEnvFailure] -> ShowS #

type IfL = IfM IfLclEnv #

type TcRnIf a b = IOEnv (Env a b) #

type IfG = IfM () #

data NameShape #

Constructors

NameShape |
Fields ns_mod_name :: ModuleName ns_exports :: [AvailInfo] ns_map :: OccEnv Name

data SelfBootInfo #

Constructors

NoSelfBoot |
SelfBoot |
Fields sb_mds :: ModDetails sb_tcs :: NameSet

type TcRef a = IORef a #

type ThLevel = Int #

data ThStage #

Constructors

Splice SpliceType |
RunSplice (TcRef [ForeignRef (Q ())]) |
Comp |
Brack ThStage PendingStuff |

#### Instances

Instances details

Outputable ThStage |
Instance details Defined in GHC.Tc.Types Methods ppr :: ThStage -> SDoc #

type TcPluginRewriter = RewriteEnv -> [Ct] -> [TcType] -> TcPluginM TcPluginRewriteResult #

data TcTyThing #

Constructors

AGlobal TyThing |
ATcId |
Fields tct_id :: TcId tct_info :: IdBindingInfo
ATyVar Name TcTyVar |
ATcTyCon TyCon |
APromotionErr PromotionErr |

#### Instances

Instances details

Outputable TcTyThing |
Instance details Defined in GHC.Tc.Types Methods ppr :: TcTyThing -> SDoc #

type ThBindEnv = NameEnv (TopLevelFlag, ThLevel) #

type TcPluginSolver = EvBindsVar -> [Ct] -> [Ct] -> TcPluginM TcPluginSolveResult #

data TcPluginM a #

#### Instances

Instances details

MonadFail TcPluginM |
Instance details Defined in GHC.Tc.Types Methods fail :: String -> TcPluginM a #
Applicative TcPluginM |
Instance details Defined in GHC.Tc.Types Methods pure :: a -> TcPluginM a # (<*>) :: TcPluginM (a -> b) -> TcPluginM a -> TcPluginM b # liftA2 :: (a -> b -> c) -> TcPluginM a -> TcPluginM b -> TcPluginM c # (*>) :: TcPluginM a -> TcPluginM b -> TcPluginM b # (<*) :: TcPluginM a -> TcPluginM b -> TcPluginM a #
Functor TcPluginM |
Instance details Defined in GHC.Tc.Types Methods fmap :: (a -> b) -> TcPluginM a -> TcPluginM b # (<$) :: a -> TcPluginM b -> TcPluginM a #
Monad TcPluginM |
Instance details Defined in GHC.Tc.Types Methods (>>=) :: TcPluginM a -> (a -> TcPluginM b) -> TcPluginM b # (>>) :: TcPluginM a -> TcPluginM b -> TcPluginM b # return :: a -> TcPluginM a #

data PromotionErr #

Constructors

TyConPE |
ClassPE |
FamDataConPE |
ConstrainedDataConPE PredType |
PatSynPE |
RecDataConPE |
TermVariablePE |
NoDataKindsDC |

#### Instances

Instances details

Outputable PromotionErr |
Instance details Defined in GHC.Tc.Errors.Types Methods ppr :: PromotionErr -> SDoc #

data TcBinder #

Constructors

TcIdBndr TcId TopLevelFlag |
TcIdBndr_ExpType Name ExpType TopLevelFlag |
TcTvBndr Name TyVar |

#### Instances

Instances details

HasOccName TcBinder |
Instance details Defined in GHC.Tc.Types Methods occName :: TcBinder -> OccName #
Outputable TcBinder |
Instance details Defined in GHC.Tc.Types Methods ppr :: TcBinder -> SDoc #

data DefaultingProposal #

Constructors

DefaultingProposal |
Fields deProposalTyVar :: TcTyVar deProposalCandidates :: [Type] deProposalCts :: [Ct]

#### Instances

Instances details

Outputable DefaultingProposal |
Instance details Defined in GHC.Tc.Types Methods ppr :: DefaultingProposal -> SDoc #

data IdBindingInfo #

Constructors

NotLetBound |
ClosedLet |
NonClosedLet RhsNames ClosedTypeId |

#### Instances

Instances details

Outputable IdBindingInfo |
Instance details Defined in GHC.Tc.Types Methods ppr :: IdBindingInfo -> SDoc #

data TcIdSigInfo #

Constructors

CompleteSig |
Fields sig_bndr :: TcId sig_ctxt :: UserTypeCtxt sig_loc :: SrcSpan
PartialSig |
Fields psig_name :: Name psig_hs_ty :: LHsSigWcType GhcRn sig_ctxt :: UserTypeCtxt sig_loc :: SrcSpan

#### Instances

Instances details

Outputable TcIdSigInfo |
Instance details Defined in GHC.Tc.Types Methods ppr :: TcIdSigInfo -> SDoc #

data TcIdSigInst #

Constructors

TISI |
Fields sig_inst_sig :: TcIdSigInfo sig_inst_skols :: [(Name, InvisTVBinder)] sig_inst_theta :: TcThetaType sig_inst_tau :: TcSigmaType sig_inst_wcs :: [(Name, TcTyVar)] sig_inst_wcx :: Maybe TcType

#### Instances

Instances details

Outputable TcIdSigInst |
Instance details Defined in GHC.Tc.Types Methods ppr :: TcIdSigInst -> SDoc #

data TcPatSynInfo #

Constructors

TPSI |
Fields patsig_name :: Name patsig_implicit_bndrs :: [InvisTVBinder] patsig_univ_bndrs :: [InvisTVBinder] patsig_req :: TcThetaType patsig_ex_bndrs :: [InvisTVBinder] patsig_prov :: TcThetaType patsig_body_ty :: TcSigmaType

#### Instances

Instances details

Outputable TcPatSynInfo |
Instance details Defined in GHC.Tc.Types Methods ppr :: TcPatSynInfo -> SDoc #

data TcSigInfo #

Constructors

TcIdSig TcIdSigInfo |
TcPatSynSig TcPatSynInfo |

#### Instances

Instances details

Outputable TcSigInfo |
Instance details Defined in GHC.Tc.Types Methods ppr :: TcSigInfo -> SDoc #

data ArrowCtxt #

Constructors

NoArrowCtxt |
ArrowCtxt LocalRdrEnv (TcRef WantedConstraints) |

type ClosedTypeId = Bool #

type DefaultingPluginResult = [DefaultingProposal] #

type ErrCtxt = (Bool, TidyEnv -> TcM (TidyEnv, SDoc)) #

type FillDefaulting = WantedConstraints -> TcPluginM [DefaultingProposal] #

data IsGroupClosed #

Constructors

IsGroupClosed (NameEnv RhsNames) ClosedTypeId |

data PendingStuff #

Constructors

RnPendingUntyped (TcRef [PendingRnSplice]) |
RnPendingTyped |
TcPending (TcRef [PendingTcSplice]) (TcRef WantedConstraints) QuoteWrapper |

type RecFieldEnv = NameEnv [FieldLabel] #

data RewriteEnv #

Constructors

RE |
Fields re_loc :: !CtLoc re_flavour :: !CtFlavour re_eq_rel :: !EqRel re_rewriters :: !(TcRef RewriterSet)

type RhsNames = NameSet #

type RoleAnnotEnv = NameEnv (LRoleAnnotDecl GhcRn) #

data SpliceType #

Constructors

Typed |
Untyped |

type TcBinderStack = [TcBinder] #

type TcId = Id #

type TcIdSet = IdSet #

data TcPluginRewriteResult #

Constructors

TcPluginNoRewrite |
TcPluginRewriteTo |
Fields tcPluginReduction :: !Reduction tcRewriterNewWanteds :: [Ct]

data TcPluginSolveResult #

Constructors

TcPluginSolveResult |
Fields tcPluginInsolubleCts :: [Ct] tcPluginSolvedCts :: [(EvTerm, Ct)] tcPluginNewCts :: [Ct]

Bundled Patterns

pattern TcPluginContradiction :: [Ct] -> TcPluginSolveResult |
pattern TcPluginOk :: [(EvTerm, Ct)] -> [Ct] -> TcPluginSolveResult |

type TcSigFun = Name -> Maybe TcSigInfo #

type TcTypeEnv = NameEnv TcTyThing #

data IsExtraConstraint #

Constructors

YesExtraConstraint |
NoExtraConstraint |

#### Instances

Instances details

Outputable IsExtraConstraint |
Instance details Defined in GHC.Tc.Utils.Monad Methods ppr :: IsExtraConstraint -> SDoc #

newName :: OccName -> TcM Name #

mapAndUnzipM :: Applicative m => (a -> m (b, c)) -> [a] -> m ([b], [c]) #

getEnv :: IOEnv env env #

setEnv :: env' -> IOEnv env' a -> IOEnv env a #

foldlM :: (Foldable t, Monad m) => (b -> a -> m b) -> b -> t a -> m b #

foldrM :: (Foldable t, Monad m) => (a -> b -> m b) -> b -> t a -> m b #

newMutVar :: a -> IOEnv env (IORef a) #

readMutVar :: IORef a -> IOEnv env a #

writeMutVar :: IORef a -> a -> IOEnv env () #

newUnique :: TcRnIf gbl lcl Unique #

orM :: Monad m => m Bool -> m Bool -> m Bool #

partitionM :: Monad m => (a -> m Bool) -> [a] -> m ([a], [a]) #

whenM :: Monad m => m Bool -> m () -> m () #

unlessM :: Monad m => m Bool -> m () -> m () #

keepAlive :: Name -> TcRn () #

withException :: MonadIO m => SDocContext -> m (MaybeErr SDoc a) -> m a #

zipWith3M :: Monad m => (a -> b -> c -> m d) -> [a] -> [b] -> [c] -> m [d] #

zipWith4M :: Monad m => (a -> b -> c -> d -> m e) -> [a] -> [b] -> [c] -> [d] -> m [e] #

getImports :: TcRn ImportAvails #

finalSafeMode :: DynFlags -> TcGblEnv -> IO SafeHaskellMode #

fixSafeInstances :: SafeHaskellMode -> [ClsInst] -> [ClsInst] #

initIfaceTcRn :: IfG a -> TcRn a #

getGHCiMonad :: TcRn Name #

getNamePprCtx :: TcRn NamePprCtx #

addErr :: TcRnMessage -> TcRn () #

emptyImportAvails :: ImportAvails #

plusImportAvails :: ImportAvails -> ImportAvails -> ImportAvails #

initIfaceCheck :: SDoc -> HscEnv -> IfG a -> IO a #

initIfaceLoadModule :: HscEnv -> Module -> IfG a -> IO a #

goptM :: GeneralFlag -> TcRnIf gbl lcl Bool #

woptM :: WarningFlag -> TcRnIf gbl lcl Bool #

failM :: IOEnv env a #

fixM :: (a -> IOEnv env a) -> IOEnv env a #

tryM :: IOEnv env r -> IOEnv env (Either IOEnvFailure r) #

updMutVar :: IORef a -> (a -> a) -> IOEnv env () #

getCCIndexM :: (gbl -> TcRef CostCentreState) -> FastString -> TcRnIf gbl lcl CostCentreIndex #

getEnvs :: TcRnIf gbl lcl (gbl, lcl) #

getEps :: TcRnIf gbl lcl ExternalPackageState #

getGblEnv :: TcRnIf gbl lcl gbl #

getLclEnv :: TcRnIf gbl lcl lcl #

getTopEnv :: TcRnIf gbl lcl HscEnv #

initTc :: HscEnv -> HscSource -> Bool -> Module -> RealSrcSpan -> TcM r -> IO (Messages TcRnMessage, Maybe r) #

initTcRnIf :: Char -> HscEnv -> gbl -> lcl -> TcRnIf gbl lcl a -> IO a #

mkIfLclEnv :: Module -> SDoc -> IsBootInterface -> IfLclEnv #

newUniqueSupply :: TcRnIf gbl lcl UniqSupply #

readTcRef :: TcRef a -> TcRnIf gbl lcl a #

setEnvs :: (gbl', lcl') -> TcRnIf gbl' lcl' a -> TcRnIf gbl lcl a #

unsetGOptM :: GeneralFlag -> TcRnIf gbl lcl a -> TcRnIf gbl lcl a #

unsetWOptM :: WarningFlag -> TcRnIf gbl lcl a -> TcRnIf gbl lcl a #

updGblEnv :: (gbl -> gbl) -> TcRnIf gbl lcl a -> TcRnIf gbl lcl a #

updLclEnv :: (lcl -> lcl) -> TcRnIf gbl lcl a -> TcRnIf gbl lcl a #

whenGOptM :: GeneralFlag -> TcRnIf gbl lcl () -> TcRnIf gbl lcl () #

writeTcRef :: TcRef a -> a -> TcRnIf gbl lcl () #

xoptM :: Extension -> TcRnIf gbl lcl Bool #

failWithTc :: TcRnMessage -> TcM a #

getEpsAndHug :: TcRnIf gbl lcl (ExternalPackageState, HomeUnitGraph) #

getIfModule :: IfL Module #

initIfaceLcl :: Module -> SDoc -> IsBootInterface -> IfL a -> IfM lcl a #

updTopEnv :: (HscEnv -> HscEnv) -> TcRnIf gbl lcl a -> TcRnIf gbl lcl a #

updateEps_ :: (ExternalPackageState -> ExternalPackageState) -> TcRnIf gbl lcl () #

initIfaceLoad :: HscEnv -> IfG a -> IO a #

mkModDeps :: Set (UnitId, ModuleNameWithIsBoot) -> InstalledModuleEnv ModuleNameWithIsBoot #

withoutDynamicNow :: TcRnIf gbl lcl a -> TcRnIf gbl lcl a #

failIfM :: SDoc -> IfL a #

forkM :: SDoc -> IfL a -> IfL a #

getGhcMode :: TcRnIf gbl lcl GhcMode #

initIfaceLclWithSubst :: Module -> SDoc -> IsBootInterface -> NameShape -> IfL a -> IfM lcl a #

setImplicitEnvM :: TypeEnv -> IfL a -> IfL a #

setLclEnv :: lcl' -> TcRnIf gbl lcl' a -> TcRnIf gbl lcl a #

traceIf :: SDoc -> TcRnIf m n () #

extendFixityEnv :: [(Name, FixItem)] -> RnM a -> RnM a #

getFixityEnv :: TcRn FixityEnv #

traceRn :: String -> SDoc -> TcRn () #

thLevel :: ThStage -> ThLevel #

addDiagnostic :: TcRnMessage -> TcRn () #

addDiagnosticAt :: SrcSpan -> TcRnMessage -> TcRn () #

addErrAt :: SrcSpan -> TcRnMessage -> TcRn () #

addTcRnDiagnostic :: TcRnMessage -> TcM () #

checkErr :: Bool -> TcRnMessage -> TcRn () #

checkNoErrs :: TcM r -> TcM r #

getIsGHCi :: TcRn Bool #

getStage :: TcM ThStage #

mapAndReportM :: (a -> TcRn b) -> [a] -> TcRn [b] #

restoreEnvs :: (TcGblEnv, TcLclEnv) -> TcRn a -> TcRn a #

setSrcSpan :: SrcSpan -> TcRn a -> TcRn a #

setSrcSpanA :: SrcSpanAnn' ann -> TcRn a -> TcRn a #

tcIsHsBootOrSig :: TcRn Bool #

warnIf :: Bool -> TcRnMessage -> TcRn () #

whenWOptM :: WarningFlag -> TcRnIf gbl lcl () -> TcRnIf gbl lcl () #

addDetailedDiagnostic :: (ErrInfo -> TcRnMessage) -> TcM () #

addErrCtxt :: SDoc -> TcM a -> TcM a #

checkTc :: Bool -> TcRnMessage -> TcM () #

failWith :: TcRnMessage -> TcRn a #

getGlobalRdrEnv :: TcRn GlobalRdrEnv #

getLocalRdrEnv :: RnM LocalRdrEnv #

getSrcSpanM :: TcRn SrcSpan #

getStageAndBindLevel :: Name -> TcRn (Maybe (TopLevelFlag, ThLevel, ThStage)) #

newTcRef :: a -> TcRnIf gbl lcl (TcRef a) #

recordThUse :: TcM () #

setGblEnv :: gbl' -> TcRnIf gbl' lcl a -> TcRnIf gbl lcl a #

setStage :: ThStage -> TcM a -> TcRn a #

traceOptTcRn :: DumpFlag -> SDoc -> TcRn () #

unsetXOptM :: Extension -> TcRnIf gbl lcl a -> TcRnIf gbl lcl a #

updTcRef :: TcRef a -> (a -> a) -> TcRnIf gbl lcl () #

addErrs :: [(SrcSpan, TcRnMessage)] -> TcRn () #

askNoErrs :: TcRn a -> TcRn (a, Bool) #

traceTc :: String -> SDoc -> TcRn () #

lintGblEnv :: Logger -> DynFlags -> TcGblEnv -> TcM () #

addDependentFiles :: [FilePath] -> TcRn () #

addErrTc :: TcRnMessage -> TcM () #

addTopEvBinds :: Bag EvBind -> TcM a -> TcM a #

captureConstraints :: TcM a -> TcM (a, WantedConstraints) #

discardWarnings :: TcRn a -> TcRn a #

dumpOptTcRn :: DumpFlag -> String -> DumpFormat -> SDoc -> TcRn () #

dumpTcRn :: Bool -> DumpFlag -> String -> DumpFormat -> SDoc -> TcRn () #

emitNamedTypeHole :: (Name, TcTyVar) -> TcM () #

failIfErrsM :: TcRn () #

getInteractivePrintName :: TcRn Name #

initTcInteractive :: HscEnv -> TcM a -> IO (Messages TcRnMessage, Maybe a) #

pushTcLevelM :: TcM a -> TcM (TcLevel, a) #

pushTcLevelM_ :: TcM a -> TcM a #

recordUnsafeInfer :: Messages TcRnMessage -> TcM () #

restoreLclEnv :: TcLclEnv -> TcRnIf gbl TcLclEnv a -> TcRnIf gbl TcLclEnv a #

setXOptM :: Extension -> TcRnIf gbl lcl a -> TcRnIf gbl lcl a #

tryTcDiscardingErrs :: TcM r -> TcM r -> TcM r #

updEnvs :: ((gbl, lcl) -> (gbl, lcl)) -> TcRnIf gbl lcl a -> TcRnIf gbl lcl a #

peCategory :: PromotionErr -> String #

pprPECategory :: PromotionErr -> SDoc #

bootExports :: SelfBootInfo -> NameSet #

emptyRoleAnnotEnv :: RoleAnnotEnv #

getLclEnvLoc :: TcLclEnv -> RealSrcSpan #

getLclEnvTcLevel :: TcLclEnv -> TcLevel #

getPlatform :: TcRnIf a b Platform #

getRoleAnnots :: [Name] -> RoleAnnotEnv -> [LRoleAnnotDecl GhcRn] #

hasCompleteSig :: TcSigFun -> Name -> Bool #

impLevel :: ThLevel #

isPartialSig :: TcIdSigInst -> Bool #

lclEnvInGeneratedCode :: TcLclEnv -> Bool #

lookupRoleAnnot :: RoleAnnotEnv -> Name -> Maybe (LRoleAnnotDecl GhcRn) #

mkRoleAnnotEnv :: [LRoleAnnotDecl GhcRn] -> RoleAnnotEnv #

outerLevel :: ThLevel #

pprTcTyThingCategory :: TcTyThing -> SDoc #

pushErrCtxt :: CtOrigin -> ErrCtxt -> CtLoc -> CtLoc #

pushErrCtxtSameOrigin :: ErrCtxt -> CtLoc -> CtLoc #

removeBindingShadowing :: HasOccName a => [a] -> [a] #

setLclEnvLoc :: TcLclEnv -> RealSrcSpan -> TcLclEnv #

setLclEnvTcLevel :: TcLclEnv -> TcLevel -> TcLclEnv #

tcTyThingCategory :: TcTyThing -> String #

tcTyThingTyCon_maybe :: TcTyThing -> Maybe TyCon #

tcVisibleOrphanMods :: TcGblEnv -> ModuleSet #

topAnnStage :: ThStage #

topSpliceStage :: ThStage #

topStage :: ThStage #

unsafeTcPluginTcM :: TcM a -> TcPluginM a #

addLocMA :: (a -> TcM b) -> GenLocated (SrcSpanAnn' ann) a -> TcM b #

chooseUniqueOccTc :: (OccSet -> OccName) -> TcM OccName #

getDeclaredDefaultTys :: TcRn (Maybe [Type]) #

getLclTypeEnv :: TcM TcTypeEnv #

tcCollectingUsage :: TcM a -> TcM (UsageEnv, a) #

tcEmitBindingUsage :: UsageEnv -> TcM () #

atomicUpdMutVar :: IORef a -> (a -> (a, b)) -> IOEnv env b #

atomicUpdMutVar' :: IORef a -> (a -> (a, b)) -> IOEnv env b #

failWithM :: String -> IOEnv env a #

runIOEnv :: env -> IOEnv env a -> IO a #

tryAllM :: IOEnv env r -> IOEnv env (Either SomeException r) #

tryMostM :: IOEnv env r -> IOEnv env (Either SomeException r) #

uninterruptibleMaskM_ :: IOEnv env a -> IOEnv env a #

unsafeInterleaveM :: IOEnv env a -> IOEnv env a #

updEnv :: (env -> env') -> IOEnv env' a -> IOEnv env a #

updMutVarM :: IORef a -> (a -> IOEnv env a) -> IOEnv env () #

filterOutM :: Applicative m => (a -> m Bool) -> [a] -> m [a] #

foldlM_ :: (Monad m, Foldable t) => (a -> b -> m a) -> a -> t b -> m () #

mapAccumLM :: (Monad m, Traversable t) => (acc -> x -> m (acc, y)) -> acc -> t x -> m (acc, t y) #

mapAndUnzip3M :: Monad m => (a -> m (b, c, d)) -> [a] -> m ([b], [c], [d]) #

mapAndUnzip4M :: Monad m => (a -> m (b, c, d, e)) -> [a] -> m ([b], [c], [d], [e]) #

mapAndUnzip5M :: Monad m => (a -> m (b, c, d, e, f)) -> [a] -> m ([b], [c], [d], [e], [f]) #

mapSndM :: (Applicative m, Traversable f) => (b -> m c) -> f (a, b) -> m (f (a, c)) #

zipWith3M_ :: Monad m => (a -> b -> c -> m d) -> [a] -> [b] -> [c] -> m () #

zipWithAndUnzipM :: Monad m => (a -> b -> m (c, d)) -> [a] -> [b] -> m ([c], [d]) #

addDiagnosticTc :: TcRnMessage -> TcM () #

addDiagnosticTcM :: (TidyEnv, TcRnMessage) -> TcM () #

addErrCtxtM :: (TidyEnv -> TcM (TidyEnv, SDoc)) -> TcM a -> TcM a #

addErrTcM :: (TidyEnv, TcRnMessage) -> TcM () #

addLandmarkErrCtxt :: SDoc -> TcM a -> TcM a #

addLandmarkErrCtxtM :: (TidyEnv -> TcM (TidyEnv, SDoc)) -> TcM a -> TcM a #

addLocM :: (a -> TcM b) -> Located a -> TcM b #

addMessages :: Messages TcRnMessage -> TcRn () #

addModFinalizersWithLclEnv :: ThModFinalizers -> TcM () #

addTcEvBind :: EvBindsVar -> EvBind -> TcM () #

attemptM :: TcRn r -> TcRn (Maybe r) #

checkTcM :: Bool -> (TidyEnv, TcRnMessage) -> TcM () #

cloneEvBindsVar :: EvBindsVar -> TcM EvBindsVar #

cloneLocalName :: Name -> TcM Name #

debugTc :: TcM () -> TcM () #

diagnosticTc :: Bool -> TcRnMessage -> TcM () #

diagnosticTcM :: Bool -> (TidyEnv, TcRnMessage) -> TcM () #

discardConstraints :: TcM a -> TcM a #

discardErrs :: TcRn a -> TcRn a #

discardResult :: TcM a -> TcM () #

doptM :: DumpFlag -> TcRnIf gbl lcl Bool #

emitAnonTypeHole :: IsExtraConstraint -> TcTyVar -> TcM () #

emitConstraints :: WantedConstraints -> TcM () #

emitDelayedErrors :: Bag DelayedError -> TcM () #

emitHole :: Hole -> TcM () #

emitHoles :: Bag Hole -> TcM () #

emitImplication :: Implication -> TcM () #

emitImplications :: Bag Implication -> TcM () #

emitInsoluble :: Ct -> TcM () #

emitNotConcreteError :: NotConcreteError -> TcM () #

emitSimple :: Ct -> TcM () #

emitSimples :: Cts -> TcM () #

emitStaticConstraints :: WantedConstraints -> TcM () #

escapeArrowScope :: TcM a -> TcM a #

failAt :: SrcSpan -> TcRnMessage -> TcRn a #

failIfTc :: Bool -> TcRnMessage -> TcM () #

failIfTcM :: Bool -> (TidyEnv, TcRnMessage) -> TcM () #

failWithTcM :: (TidyEnv, TcRnMessage) -> TcM a #

foldAndRecoverM :: (b -> a -> TcRn b) -> b -> [a] -> TcRn b #

getCCIndexTcM :: FastString -> TcM CostCentreIndex #

getConstraintVar :: TcM (TcRef WantedConstraints) #

getCtLocM :: CtOrigin -> Maybe TypeOrKind -> TcM CtLoc #

getEpsVar :: TcRnIf gbl lcl (TcRef ExternalPackageState) #

getErrCtxt :: TcM [ErrCtxt] #

getErrsVar :: TcRn (TcRef (Messages TcRnMessage)) #

getHpt :: TcRnIf gbl lcl HomePackageTable #

getRdrEnvs :: TcRn (GlobalRdrEnv, LocalRdrEnv) #

getRecFieldEnv :: TcRn RecFieldEnv #

getTcEvBindsMap :: EvBindsVar -> TcM EvBindMap #

getTcEvTyCoVars :: EvBindsVar -> TcM TyCoVarSet #

getTcLevel :: TcM TcLevel #

ifErrsM :: TcRn r -> TcRn r -> TcRn r #

inGeneratedCode :: TcRn Bool #

initTcWithGbl :: HscEnv -> TcGblEnv -> RealSrcSpan -> TcM r -> IO (Messages TcRnMessage, Maybe r) #

isTouchableTcM :: TcTyVar -> TcM Bool #

mapAndRecoverM :: (a -> TcRn b) -> [a] -> TcRn [b] #

mkDetailedMessage :: ErrInfo -> TcRnMessage -> TcRnMessageDetailed #

mkErrInfo :: TidyEnv -> [ErrCtxt] -> TcM SDoc #

mkTcRnMessage :: SrcSpan -> TcRnMessage -> TcRn (MsgEnvelope TcRnMessage) #

newArrowScope :: TcM a -> TcM a #

newNameAt :: OccName -> SrcSpan -> TcM Name #

newNoTcEvBinds :: TcM EvBindsVar #

newSysLocalId :: FastString -> Mult -> TcType -> TcRnIf gbl lcl TcId #

newSysLocalIds :: FastString -> [Scaled TcType] -> TcRnIf gbl lcl [TcId] #

newSysName :: OccName -> TcRnIf gbl lcl Name #

newTcEvBinds :: TcM EvBindsVar #

popErrCtxt :: TcM a -> TcM a #

printForUserTcRn :: SDoc -> TcRn () #

pushLevelAndCaptureConstraints :: TcM a -> TcM (TcLevel, WantedConstraints, a) #

recordThNeededRuntimeDeps :: [Linkable] -> PkgsLoaded -> TcM () #

recordThSpliceUse :: TcM () #

recoverM :: TcRn r -> TcRn r -> TcRn r #

reportDiagnostic :: MsgEnvelope TcRnMessage -> TcRn () #

reportDiagnostics :: [MsgEnvelope TcRnMessage] -> TcM () #

setConstraintVar :: TcRef WantedConstraints -> TcM a -> TcM a #

setCtLocM :: CtLoc -> TcM a -> TcM a #

setErrCtxt :: [ErrCtxt] -> TcM a -> TcM a #

setErrsVar :: TcRef (Messages TcRnMessage) -> TcRn a -> TcRn a #

setLclTypeEnv :: TcLclEnv -> TcM a -> TcM a #

setLocalRdrEnv :: LocalRdrEnv -> RnM a -> RnM a #

setTcEvBindsMap :: EvBindsVar -> EvBindMap -> TcM () #

setTcLevel :: TcLevel -> TcM a -> TcM a #

tcIsHsig :: TcRn Bool #

tcScalingUsage :: Mult -> TcM a -> TcM a #

tcSelfBootInfo :: TcRn SelfBootInfo #

traceOptIf :: DumpFlag -> SDoc -> TcRnIf m n () #

traceTcConstraints :: String -> TcM () #

tryCaptureConstraints :: TcM a -> TcM (Maybe a, WantedConstraints) #

tryTc :: TcRn a -> TcRn (Maybe a, Messages TcRnMessage) #

unlessXOptM :: Extension -> TcRnIf gbl lcl () -> TcRnIf gbl lcl () #

updTopFlags :: (DynFlags -> DynFlags) -> TcRnIf gbl lcl a -> TcRnIf gbl lcl a #

updateEps :: (ExternalPackageState -> (ExternalPackageState, a)) -> TcRnIf gbl lcl a #

whenDOptM :: DumpFlag -> TcRnIf gbl lcl () -> TcRnIf gbl lcl () #

whenNoErrs :: TcM () -> TcM () #

whenXOptM :: Extension -> TcRnIf gbl lcl () -> TcRnIf gbl lcl () #

wrapLocAM :: (a -> TcM b) -> LocatedAn an a -> TcM (Located b) #

wrapLocFstM :: (a -> TcM (b, c)) -> Located a -> TcM (Located b, c) #

wrapLocFstMA :: (a -> TcM (b, c)) -> GenLocated (SrcSpanAnn' ann) a -> TcM (GenLocated (SrcSpanAnn' ann) b, c) #

wrapLocM :: (a -> TcM b) -> Located a -> TcM (Located b) #

wrapLocMA :: (a -> TcM b) -> GenLocated (SrcSpanAnn' ann) a -> TcRn (GenLocated (SrcSpanAnn' ann) b) #

wrapLocMA_ :: (a -> TcM ()) -> LocatedA a -> TcM () #

wrapLocM_ :: (a -> TcM ()) -> Located a -> TcM () #

wrapLocSndM :: (a -> TcM (b, c)) -> Located a -> TcM (b, Located c) #

wrapLocSndMA :: (a -> TcM (b, c)) -> GenLocated (SrcSpanAnn' ann) a -> TcM (b, GenLocated (SrcSpanAnn' ann) c) #

data Name #

#### Instances

Instances details

Data Name |
Instance details Defined in GHC.Types.Name Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Name -> c Name gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Name toConstr :: Name -> Constr dataTypeOf :: Name -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Name) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Name) gmapT :: (forall b. Data b => b -> b) -> Name -> Name gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Name -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Name -> r gmapQ :: (forall d. Data d => d -> u) -> Name -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> Name -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> Name -> m Name gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Name -> m Name gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Name -> m Name
NFData Name |
Instance details Defined in GHC.Types.Name Methods rnf :: Name -> () #
ModifyState Name |
Instance details Defined in GHC.Iface.Ext.Ast Methods addSubstitution :: Name -> Name -> HieState -> HieState
NamedThing Name |
Instance details Defined in GHC.Types.Name Methods getOccName :: Name -> OccName # getName :: Name -> Name #
HasOccName Name |
Instance details Defined in GHC.Types.Name Methods occName :: Name -> OccName #
Uniquable Name |
Instance details Defined in GHC.Types.Name Methods getUnique :: Name -> Unique #
Binary Name |
Instance details Defined in GHC.Types.Name Methods put_ :: BinHandle -> Name -> IO () put :: BinHandle -> Name -> IO (Bin Name) get :: BinHandle -> IO Name
Outputable Name |
Instance details Defined in GHC.Types.Name Methods ppr :: Name -> SDoc #
OutputableBndr Name |
Instance details Defined in GHC.Types.Name Methods pprBndr :: BindingSite -> Name -> SDoc pprPrefixOcc :: Name -> SDoc pprInfixOcc :: Name -> SDoc bndrIsJoin_maybe :: Name -> Maybe Int
Eq Name |
Instance details Defined in GHC.Types.Name Methods (==) :: Name -> Name -> Bool # (/=) :: Name -> Name -> Bool #
Ord Name |
Instance details Defined in GHC.Types.Name Methods compare :: Name -> Name -> Ordering (<) :: Name -> Name -> Bool (<=) :: Name -> Name -> Bool (>) :: Name -> Name -> Bool (>=) :: Name -> Name -> Bool max :: Name -> Name -> Name min :: Name -> Name -> Name
ToHie (LBooleanFormula (LocatedN Name)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LBooleanFormula (LocatedN Name) -> HieM [HieAST Type]
ToHie (Context (Located Name)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: Context (Located Name) -> HieM [HieAST Type]
NFData (UniqFM Name [Name]) # |
Instance details Defined in Development.IDE.GHC.Orphans Methods rnf :: UniqFM Name [Name] -> () #
type Anno Name |
Instance details Defined in GHC.Hs.Extension type Anno Name = SrcSpanAnnN
type Anno (LocatedN Name) |
Instance details Defined in GHC.Hs.Binds type Anno (LocatedN Name) = SrcSpan
type Anno [LocatedN Name] |
Instance details Defined in GHC.Hs.Binds type Anno [LocatedN Name] = SrcSpan

data OccName #

#### Instances

Instances details

Data OccName |
Instance details Defined in GHC.Types.Name.Occurrence Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> OccName -> c OccName gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c OccName toConstr :: OccName -> Constr dataTypeOf :: OccName -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c OccName) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c OccName) gmapT :: (forall b. Data b => b -> b) -> OccName -> OccName gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> OccName -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> OccName -> r gmapQ :: (forall d. Data d => d -> u) -> OccName -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> OccName -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> OccName -> m OccName gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> OccName -> m OccName gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> OccName -> m OccName
Show OccName # |
Instance details Defined in Development.IDE.GHC.Orphans Methods showsPrec :: Int -> OccName -> ShowS # show :: OccName -> String # showList :: [OccName] -> ShowS #
NFData OccName |
Instance details Defined in GHC.Types.Name.Occurrence Methods rnf :: OccName -> () #
HasOccName OccName |
Instance details Defined in GHC.Types.Name.Occurrence Methods occName :: OccName -> OccName #
Uniquable OccName |
Instance details Defined in GHC.Types.Name.Occurrence Methods getUnique :: OccName -> Unique #
Binary OccName |
Instance details Defined in GHC.Types.Name.Occurrence Methods put_ :: BinHandle -> OccName -> IO () put :: BinHandle -> OccName -> IO (Bin OccName) get :: BinHandle -> IO OccName
Outputable OccName |
Instance details Defined in GHC.Types.Name.Occurrence Methods ppr :: OccName -> SDoc #
OutputableBndr OccName |
Instance details Defined in GHC.Types.Name.Occurrence Methods pprBndr :: BindingSite -> OccName -> SDoc pprPrefixOcc :: OccName -> SDoc pprInfixOcc :: OccName -> SDoc bndrIsJoin_maybe :: OccName -> Maybe Int
Eq OccName |
Instance details Defined in GHC.Types.Name.Occurrence Methods (==) :: OccName -> OccName -> Bool # (/=) :: OccName -> OccName -> Bool #
Ord OccName |
Instance details Defined in GHC.Types.Name.Occurrence Methods compare :: OccName -> OccName -> Ordering (<) :: OccName -> OccName -> Bool (<=) :: OccName -> OccName -> Bool (>) :: OccName -> OccName -> Bool (>=) :: OccName -> OccName -> Bool max :: OccName -> OccName -> OccName min :: OccName -> OccName -> OccName
Hashable OccName # |
Instance details Defined in Development.IDE.GHC.Orphans Methods hashWithSalt :: Int -> OccName -> Int # hash :: OccName -> Int #

data NameSpace #

#### Instances

Instances details

Binary NameSpace |
Instance details Defined in GHC.Types.Name.Occurrence Methods put_ :: BinHandle -> NameSpace -> IO () put :: BinHandle -> NameSpace -> IO (Bin NameSpace) get :: BinHandle -> IO NameSpace
Eq NameSpace |
Instance details Defined in GHC.Types.Name.Occurrence Methods (==) :: NameSpace -> NameSpace -> Bool # (/=) :: NameSpace -> NameSpace -> Bool #
Ord NameSpace |
Instance details Defined in GHC.Types.Name.Occurrence Methods compare :: NameSpace -> NameSpace -> Ordering (<) :: NameSpace -> NameSpace -> Bool (<=) :: NameSpace -> NameSpace -> Bool (>) :: NameSpace -> NameSpace -> Bool (>=) :: NameSpace -> NameSpace -> Bool max :: NameSpace -> NameSpace -> NameSpace min :: NameSpace -> NameSpace -> NameSpace

class NamedThing a where #

Minimal complete definition

getName

Methods

getOccName :: a -> OccName #

getName :: a -> Name #

#### Instances

Instances details

NamedThing Class |
Instance details Defined in GHC.Core.Class Methods getOccName :: Class -> OccName # getName :: Class -> Name #
NamedThing ConLike |
Instance details Defined in GHC.Core.ConLike Methods getOccName :: ConLike -> OccName # getName :: ConLike -> Name #
NamedThing DataCon |
Instance details Defined in GHC.Core.DataCon Methods getOccName :: DataCon -> OccName # getName :: DataCon -> Name #
NamedThing FamInst |
Instance details Defined in GHC.Core.FamInstEnv Methods getOccName :: FamInst -> OccName # getName :: FamInst -> Name #
NamedThing ClsInst |
Instance details Defined in GHC.Core.InstEnv Methods getOccName :: ClsInst -> OccName # getName :: ClsInst -> Name #
NamedThing PatSyn |
Instance details Defined in GHC.Core.PatSyn Methods getOccName :: PatSyn -> OccName # getName :: PatSyn -> Name #
NamedThing TyCon |
Instance details Defined in GHC.Core.TyCon Methods getOccName :: TyCon -> OccName # getName :: TyCon -> Name #
NamedThing IfaceClassOp |
Instance details Defined in GHC.Iface.Syntax Methods getOccName :: IfaceClassOp -> OccName # getName :: IfaceClassOp -> Name #
NamedThing IfaceConDecl |
Instance details Defined in GHC.Iface.Syntax Methods getOccName :: IfaceConDecl -> OccName # getName :: IfaceConDecl -> Name #
NamedThing IfaceDecl |
Instance details Defined in GHC.Iface.Syntax Methods getOccName :: IfaceDecl -> OccName # getName :: IfaceDecl -> Name #
NamedThing HoleFitCandidate |
Instance details Defined in GHC.Tc.Errors.Hole.FitTypes Methods getOccName :: HoleFitCandidate -> OccName # getName :: HoleFitCandidate -> Name #
NamedThing Name |
Instance details Defined in GHC.Types.Name Methods getOccName :: Name -> OccName # getName :: Name -> Name #
NamedThing TyThing |
Instance details Defined in GHC.Types.TyThing Methods getOccName :: TyThing -> OccName # getName :: TyThing -> Name #
NamedThing Var |
Instance details Defined in GHC.Types.Var Methods getOccName :: Var -> OccName # getName :: Var -> Name #
NamedThing (CoAxiom br) |
Instance details Defined in GHC.Core.Coercion.Axiom Methods getOccName :: CoAxiom br -> OccName # getName :: CoAxiom br -> Name #
NamedThing e => NamedThing (Located e) |
Instance details Defined in GHC.Types.Name Methods getOccName :: Located e -> OccName # getName :: Located e -> Name #
NamedThing (Located a) => NamedThing (LocatedAn an a) |
Instance details Defined in GHC.Parser.Annotation Methods getOccName :: LocatedAn an a -> OccName # getName :: LocatedAn an a -> Name #
NamedThing tv => NamedThing (VarBndr tv flag) |
Instance details Defined in GHC.Types.Var Methods getOccName :: VarBndr tv flag -> OccName # getName :: VarBndr tv flag -> Name #

data BuiltInSyntax #

Constructors

BuiltInSyntax |
UserSyntax |

type TidyOccEnv = UniqFM FastString Int #

type OccSet = UniqSet OccName #

data OccEnv a #

#### Instances

Instances details

Data a => Data (OccEnv a) |
Instance details Defined in GHC.Types.Name.Occurrence Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> OccEnv a -> c (OccEnv a) gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (OccEnv a) toConstr :: OccEnv a -> Constr dataTypeOf :: OccEnv a -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (OccEnv a)) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (OccEnv a)) gmapT :: (forall b. Data b => b -> b) -> OccEnv a -> OccEnv a gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> OccEnv a -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> OccEnv a -> r gmapQ :: (forall d. Data d => d -> u) -> OccEnv a -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> OccEnv a -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> OccEnv a -> m (OccEnv a) gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> OccEnv a -> m (OccEnv a) gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> OccEnv a -> m (OccEnv a)
Outputable a => Outputable (OccEnv a) |
Instance details Defined in GHC.Types.Name.Occurrence Methods ppr :: OccEnv a -> SDoc #

class HasOccName name where #

Methods

occName :: name -> OccName #

#### Instances

Instances details

HasOccName IfaceClassOp |
Instance details Defined in GHC.Iface.Syntax Methods occName :: IfaceClassOp -> OccName #
HasOccName IfaceConDecl |
Instance details Defined in GHC.Iface.Syntax Methods occName :: IfaceConDecl -> OccName #
HasOccName IfaceDecl |
Instance details Defined in GHC.Iface.Syntax Methods occName :: IfaceDecl -> OccName #
HasOccName HoleFitCandidate |
Instance details Defined in GHC.Tc.Errors.Hole.FitTypes Methods occName :: HoleFitCandidate -> OccName #
HasOccName TcBinder |
Instance details Defined in GHC.Tc.Types Methods occName :: TcBinder -> OccName #
HasOccName GreName |
Instance details Defined in GHC.Types.Avail Methods occName :: GreName -> OccName #
HasOccName FieldLabel |
Instance details Defined in GHC.Types.FieldLabel Methods occName :: FieldLabel -> OccName #
HasOccName Name |
Instance details Defined in GHC.Types.Name Methods occName :: Name -> OccName #
HasOccName OccName |
Instance details Defined in GHC.Types.Name.Occurrence Methods occName :: OccName -> OccName #
HasOccName GlobalRdrElt |
Instance details Defined in GHC.Types.Name.Reader Methods occName :: GlobalRdrElt -> OccName #
HasOccName RdrName |
Instance details Defined in GHC.Types.Name.Reader Methods occName :: RdrName -> OccName #
HasOccName Var |
Instance details Defined in GHC.Types.Var Methods occName :: Var -> OccName #

type FastStringEnv a = UniqFM FastString a #

mkVarOccFS :: FastString -> OccName #

nameModule :: HasDebugCallStack => Name -> Module #

nameModule_maybe :: Name -> Maybe Module #

nameOccName :: Name -> OccName #

nameSrcSpan :: Name -> SrcSpan #

dataName :: NameSpace #

isDataConNameSpace :: NameSpace -> Bool #

isTcClsNameSpace :: NameSpace -> Bool #

isTvNameSpace :: NameSpace -> Bool #

isVarNameSpace :: NameSpace -> Bool #

mkOccName :: NameSpace -> String -> OccName #

occNameString :: OccName -> String #

tcClsName :: NameSpace #

tvName :: NameSpace #

nonDetOccEnvElts :: OccEnv a -> [a] #

isSystemName :: Name -> Bool #

isExternalName :: Name -> Bool #

parenSymOcc :: OccName -> SDoc -> SDoc #

isBuiltInSyntax :: Name -> Bool #

mkExternalName :: Unique -> Module -> OccName -> SrcSpan -> Name #

mkInternalName :: Unique -> OccName -> SrcSpan -> Name #

mkSystemVarName :: Unique -> FastString -> Name #

clsName :: NameSpace #

mkOccNameFS :: NameSpace -> FastString -> OccName #

tcName :: NameSpace #

mkWiredInName :: Module -> OccName -> Unique -> TyThing -> BuiltInSyntax -> Name #

nameUnique :: Name -> Unique #

mkDataConWorkerOcc :: OccName -> OccName #

mkDataOccFS :: FastString -> OccName #

mkSuperDictSelOcc :: Int -> OccName -> OccName #

mkTcOccFS :: FastString -> OccName #

mkTyVarOccFS :: FastString -> OccName #

getOccString :: NamedThing a => a -> String #

tidyNameOcc :: Name -> OccName -> Name #

mkSystemName :: Unique -> OccName -> Name #

pprInfixName :: (Outputable a, NamedThing a) => a -> SDoc #

pprPrefixName :: NamedThing a => a -> SDoc #

elemOccSet :: OccName -> OccSet -> Bool #

mkOccSet :: [OccName] -> OccSet #

getSrcSpan :: NamedThing a => a -> SrcSpan #

initTidyOccEnv :: [OccName] -> TidyOccEnv #

isInternalName :: Name -> Bool #

nameIsLocalOrFrom :: Module -> Name -> Bool #

pprDefinedAt :: Name -> SDoc #

stableNameCmp :: Name -> Name -> Ordering #

isHoleName :: Name -> Bool #

isWiredInName :: Name -> Bool #

isTcOcc :: OccName -> Bool #

mkTyConRepOcc :: OccName -> OccName #

mkSysTvName :: Unique -> FastString -> Name #

isDefaultMethodOcc :: OccName -> Bool #

lookupOccEnv :: OccEnv a -> OccName -> Maybe a #

mkDefaultMethodOcc :: OccName -> OccName #

mkOccEnv :: [(OccName, a)] -> OccEnv a #

nameNameSpace :: Name -> NameSpace #

wiredInNameTyThing_maybe :: Name -> Maybe TyThing #

pprNameSpace :: NameSpace -> SDoc #

getOccFS :: NamedThing a => a -> FastString #

emptyOccEnv :: OccEnv a #

extendOccEnv :: OccEnv a -> OccName -> a -> OccEnv a #

extendOccEnvList :: OccEnv a -> [(OccName, a)] -> OccEnv a #

extendOccEnv_Acc :: (a -> b -> b) -> (a -> b) -> OccEnv b -> OccName -> a -> OccEnv b #

mkOccEnv_C :: (a -> a -> a) -> [(OccName, a)] -> OccEnv a #

isSymOcc :: OccName -> Bool #

mkClassDataConOcc :: OccName -> OccName #

mkDataConWrapperOcc :: OccName -> OccName #

mkNewTyCoOcc :: OccName -> OccName #

isWiredIn :: NamedThing thing => thing -> Bool #

localiseName :: Name -> Name #

tidyOccName :: TidyOccEnv -> OccName -> (TidyOccEnv, OccName) #

plusOccEnv_C :: (a -> a -> a) -> OccEnv a -> OccEnv a -> OccEnv a #

lookupFsEnv :: FastStringEnv a -> FastString -> Maybe a #

emptyFsEnv :: FastStringEnv a #

isDataConName :: Name -> Bool #

nameSrcLoc :: Name -> SrcLoc #

pprNameUnqualified :: Name -> SDoc #

isDataOcc :: OccName -> Bool #

occSetToEnv :: OccSet -> OccEnv OccName #

srcDataName :: NameSpace #

isValNameSpace :: NameSpace -> Bool #

nameIsHomePackage :: Module -> Name -> Bool #

nameIsFromExternalPackage :: HomeUnit -> Name -> Bool #

isDerivedOccName :: OccName -> Bool #

emptyOccSet :: OccSet #

extendOccSet :: OccSet -> OccName -> OccSet #

mkDFunOcc :: String -> Bool -> OccSet -> OccName #

mkInstTyCoOcc :: OccName -> OccName #

mkInstTyTcOcc :: String -> OccSet -> OccName #

mkDerivedInternalName :: (OccName -> OccName) -> Unique -> Name -> Name #

mkWorkerOcc :: OccName -> OccName #

extendFsEnv :: FastStringEnv a -> FastString -> a -> FastStringEnv a #

mkFsEnv :: [(FastString, a)] -> FastStringEnv a #

alterOccEnv :: (Maybe elt -> Maybe elt) -> OccEnv elt -> OccName -> OccEnv elt #

avoidClashesOccEnv :: TidyOccEnv -> [OccName] -> TidyOccEnv #

delFromOccEnv :: OccEnv a -> OccName -> OccEnv a #

delListFromOccEnv :: OccEnv a -> [OccName] -> OccEnv a #

delTidyOccEnvList :: TidyOccEnv -> [FastString] -> TidyOccEnv #

demoteOccName :: OccName -> Maybe OccName #

elemOccEnv :: OccName -> OccEnv a -> Bool #

emptyTidyOccEnv :: TidyOccEnv #

extendOccEnv_C :: (a -> a -> a) -> OccEnv a -> OccName -> a -> OccEnv a #

extendOccSetList :: OccSet -> [OccName] -> OccSet #

filterOccEnv :: (elt -> Bool) -> OccEnv elt -> OccEnv elt #

filterOccSet :: (OccName -> Bool) -> OccSet -> OccSet #

foldOccEnv :: (a -> b -> b) -> b -> OccEnv a -> b #

intersectOccSet :: OccSet -> OccSet -> OccSet #

isDataSymOcc :: OccName -> Bool #

isEmptyOccSet :: OccSet -> Bool #

isTvOcc :: OccName -> Bool #

isTypeableBindOcc :: OccName -> Bool #

isValOcc :: OccName -> Bool #

isVarOcc :: OccName -> Bool #

mapOccEnv :: (a -> b) -> OccEnv a -> OccEnv b #

minusOccEnv :: OccEnv a -> OccEnv b -> OccEnv a #

minusOccEnv_C :: (a -> b -> Maybe a) -> OccEnv a -> OccEnv b -> OccEnv a #

minusOccSet :: OccSet -> OccSet -> OccSet #

mkBuilderOcc :: OccName -> OccName #

mkClassOpAuxOcc :: OccName -> OccName #

mkClsOcc :: String -> OccName #

mkClsOccFS :: FastString -> OccName #

mkCon2TagOcc :: OccName -> OccName #

mkDataCOcc :: OccName -> OccName #

mkDataOcc :: String -> OccName #

mkDataTOcc :: OccName -> OccName #

mkDictOcc :: OccName -> OccName #

mkEqPredCoOcc :: OccName -> OccName #

mkForeignExportOcc :: OccName -> OccName #

mkGen1R :: OccName -> OccName #

mkGenR :: OccName -> OccName #

mkIPOcc :: OccName -> OccName #

mkLocalOcc :: Unique -> OccName -> OccName #

mkMatcherOcc :: OccName -> OccName #

mkMaxTagOcc :: OccName -> OccName #

mkMethodOcc :: OccName -> OccName #

mkRecFldSelOcc :: FastString -> OccName #

mkRepEqOcc :: OccName -> OccName #

mkSpecOcc :: OccName -> OccName #

mkSuperDictAuxOcc :: Int -> OccName -> OccName #

mkTag2ConOcc :: OccName -> OccName #

mkTcOcc :: String -> OccName #

mkTyVarOcc :: String -> OccName #

mkVarOcc :: String -> OccName #

plusOccEnv :: OccEnv a -> OccEnv a -> OccEnv a #

pprNameSpaceBrief :: IsLine doc => NameSpace -> doc #

pprNonVarNameSpace :: NameSpace -> SDoc #

pprOccEnv :: (a -> SDoc) -> OccEnv a -> SDoc #

pprOccName :: IsLine doc => OccName -> doc #

promoteOccName :: OccName -> Maybe OccName #

setOccNameSpace :: NameSpace -> OccName -> OccName #

startsWithUnderscore :: OccName -> Bool #

unionManyOccSets :: [OccSet] -> OccSet #

unionOccSets :: OccSet -> OccSet -> OccSet #

unitOccEnv :: OccName -> a -> OccEnv a #

unitOccSet :: OccName -> OccSet #

pprModulePrefix :: IsLine doc => PprStyle -> Module -> OccName -> doc #

pprName :: IsLine doc => Name -> doc #

getSrcLoc :: NamedThing a => a -> SrcLoc #

isDynLinkName :: Platform -> Module -> Name -> Bool #

isTyConName :: Name -> Bool #

isTyVarName :: Name -> Bool #

isValName :: Name -> Bool #

isVarName :: Name -> Bool #

mkClonedInternalName :: Unique -> Name -> Name #

mkFCallName :: Unique -> FastString -> Name #

mkSystemNameAt :: Unique -> OccName -> SrcSpan -> Name #

nameIsExternalOrFrom :: Module -> Name -> Bool #

nameIsHomePackageImport :: Module -> Name -> Bool #

namePun_maybe :: Name -> Maybe FastString #

nameStableString :: Name -> String #

pprFullName :: Module -> Name -> SDoc #

pprNameDefnLoc :: Name -> SDoc #

pprTickyName :: Module -> Name -> SDoc #

setNameLoc :: Name -> SrcSpan -> Name #

setNameUnique :: Name -> Unique -> Name #

data ImpDeclSpec #

Constructors

ImpDeclSpec |
Fields is_mod :: ModuleName is_as :: ModuleName is_qual :: Bool is_dloc :: SrcSpan

#### Instances

Instances details

Data ImpDeclSpec |
Instance details Defined in GHC.Types.Name.Reader Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> ImpDeclSpec -> c ImpDeclSpec gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c ImpDeclSpec toConstr :: ImpDeclSpec -> Constr dataTypeOf :: ImpDeclSpec -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c ImpDeclSpec) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c ImpDeclSpec) gmapT :: (forall b. Data b => b -> b) -> ImpDeclSpec -> ImpDeclSpec gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> ImpDeclSpec -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> ImpDeclSpec -> r gmapQ :: (forall d. Data d => d -> u) -> ImpDeclSpec -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> ImpDeclSpec -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> ImpDeclSpec -> m ImpDeclSpec gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> ImpDeclSpec -> m ImpDeclSpec gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> ImpDeclSpec -> m ImpDeclSpec
Eq ImpDeclSpec |
Instance details Defined in GHC.Types.Name.Reader Methods (==) :: ImpDeclSpec -> ImpDeclSpec -> Bool # (/=) :: ImpDeclSpec -> ImpDeclSpec -> Bool #

data ImportSpec #

Constructors

ImpSpec |
Fields is_decl :: ImpDeclSpec is_item :: ImpItemSpec

#### Instances

Instances details

Data ImportSpec |
Instance details Defined in GHC.Types.Name.Reader Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> ImportSpec -> c ImportSpec gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c ImportSpec toConstr :: ImportSpec -> Constr dataTypeOf :: ImportSpec -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c ImportSpec) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c ImportSpec) gmapT :: (forall b. Data b => b -> b) -> ImportSpec -> ImportSpec gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> ImportSpec -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> ImportSpec -> r gmapQ :: (forall d. Data d => d -> u) -> ImportSpec -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> ImportSpec -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> ImportSpec -> m ImportSpec gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> ImportSpec -> m ImportSpec gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> ImportSpec -> m ImportSpec
Outputable ImportSpec |
Instance details Defined in GHC.Types.Name.Reader Methods ppr :: ImportSpec -> SDoc #
Eq ImportSpec |
Instance details Defined in GHC.Types.Name.Reader Methods (==) :: ImportSpec -> ImportSpec -> Bool # (/=) :: ImportSpec -> ImportSpec -> Bool #

data RdrName #

Constructors

Unqual OccName |
Qual ModuleName OccName |
Orig Module OccName |
Exact Name |

#### Instances

Instances details

Data RdrName |
Instance details Defined in GHC.Types.Name.Reader Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> RdrName -> c RdrName gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c RdrName toConstr :: RdrName -> Constr dataTypeOf :: RdrName -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c RdrName) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c RdrName) gmapT :: (forall b. Data b => b -> b) -> RdrName -> RdrName gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> RdrName -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> RdrName -> r gmapQ :: (forall d. Data d => d -> u) -> RdrName -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> RdrName -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> RdrName -> m RdrName gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> RdrName -> m RdrName gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> RdrName -> m RdrName
DisambInfixOp RdrName |
Instance details Defined in GHC.Parser.PostProcess Methods mkHsVarOpPV :: LocatedN RdrName -> PV (LocatedN RdrName) mkHsConOpPV :: LocatedN RdrName -> PV (LocatedN RdrName) mkHsInfixHolePV :: SrcSpan -> (EpAnnComments -> EpAnn EpAnnUnboundVar) -> PV (Located RdrName)
HasOccName RdrName |
Instance details Defined in GHC.Types.Name.Reader Methods occName :: RdrName -> OccName #
Outputable RdrName |
Instance details Defined in GHC.Types.Name.Reader Methods ppr :: RdrName -> SDoc #
OutputableBndr RdrName |
Instance details Defined in GHC.Types.Name.Reader Methods pprBndr :: BindingSite -> RdrName -> SDoc pprPrefixOcc :: RdrName -> SDoc pprInfixOcc :: RdrName -> SDoc bndrIsJoin_maybe :: RdrName -> Maybe Int
Eq RdrName |
Instance details Defined in GHC.Types.Name.Reader Methods (==) :: RdrName -> RdrName -> Bool # (/=) :: RdrName -> RdrName -> Bool #
Ord RdrName |
Instance details Defined in GHC.Types.Name.Reader Methods compare :: RdrName -> RdrName -> Ordering (<) :: RdrName -> RdrName -> Bool (<=) :: RdrName -> RdrName -> Bool (>) :: RdrName -> RdrName -> Bool (>=) :: RdrName -> RdrName -> Bool max :: RdrName -> RdrName -> RdrName min :: RdrName -> RdrName -> RdrName
type Anno RdrName |
Instance details Defined in GHC.Hs.Extension type Anno RdrName = SrcSpanAnnN
type Anno (LocatedN RdrName) |
Instance details Defined in GHC.Hs.Binds type Anno (LocatedN RdrName) = SrcSpan
type Anno [LocatedN RdrName] |
Instance details Defined in GHC.Hs.Binds type Anno [LocatedN RdrName] = SrcSpan

data Parent #

Constructors

NoParent |
ParentIs |
Fields par_is :: Name

#### Instances

Instances details

Data Parent |
Instance details Defined in GHC.Types.Name.Reader Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Parent -> c Parent gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Parent toConstr :: Parent -> Constr dataTypeOf :: Parent -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Parent) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Parent) gmapT :: (forall b. Data b => b -> b) -> Parent -> Parent gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Parent -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Parent -> r gmapQ :: (forall d. Data d => d -> u) -> Parent -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> Parent -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> Parent -> m Parent gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Parent -> m Parent gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Parent -> m Parent
Outputable Parent |
Instance details Defined in GHC.Types.Name.Reader Methods ppr :: Parent -> SDoc #
Eq Parent |
Instance details Defined in GHC.Types.Name.Reader Methods (==) :: Parent -> Parent -> Bool # (/=) :: Parent -> Parent -> Bool #

type GlobalRdrEnv = OccEnv [GlobalRdrElt] #

data GlobalRdrElt #

#### Instances

Instances details

Data GlobalRdrElt |
Instance details Defined in GHC.Types.Name.Reader Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> GlobalRdrElt -> c GlobalRdrElt gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c GlobalRdrElt toConstr :: GlobalRdrElt -> Constr dataTypeOf :: GlobalRdrElt -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c GlobalRdrElt) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c GlobalRdrElt) gmapT :: (forall b. Data b => b -> b) -> GlobalRdrElt -> GlobalRdrElt gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> GlobalRdrElt -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> GlobalRdrElt -> r gmapQ :: (forall d. Data d => d -> u) -> GlobalRdrElt -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> GlobalRdrElt -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> GlobalRdrElt -> m GlobalRdrElt gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> GlobalRdrElt -> m GlobalRdrElt gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> GlobalRdrElt -> m GlobalRdrElt
HasOccName GlobalRdrElt |
Instance details Defined in GHC.Types.Name.Reader Methods occName :: GlobalRdrElt -> OccName #
Outputable GlobalRdrElt |
Instance details Defined in GHC.Types.Name.Reader Methods ppr :: GlobalRdrElt -> SDoc #

data GreName #

Constructors

NormalGreName Name |
FieldGreName FieldLabel |

#### Instances

Instances details

Data GreName |
Instance details Defined in GHC.Types.Avail Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> GreName -> c GreName gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c GreName toConstr :: GreName -> Constr dataTypeOf :: GreName -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c GreName) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c GreName) gmapT :: (forall b. Data b => b -> b) -> GreName -> GreName gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> GreName -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> GreName -> r gmapQ :: (forall d. Data d => d -> u) -> GreName -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> GreName -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> GreName -> m GreName gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> GreName -> m GreName gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> GreName -> m GreName
NFData GreName |
Instance details Defined in GHC.Types.Avail Methods rnf :: GreName -> () #
HasOccName GreName |
Instance details Defined in GHC.Types.Avail Methods occName :: GreName -> OccName #
Binary GreName |
Instance details Defined in GHC.Types.Avail Methods put_ :: BinHandle -> GreName -> IO () put :: BinHandle -> GreName -> IO (Bin GreName) get :: BinHandle -> IO GreName
Outputable GreName |
Instance details Defined in GHC.Types.Avail Methods ppr :: GreName -> SDoc #
Eq GreName |
Instance details Defined in GHC.Types.Avail Methods (==) :: GreName -> GreName -> Bool # (/=) :: GreName -> GreName -> Bool #
Ord GreName |
Instance details Defined in GHC.Types.Avail Methods compare :: GreName -> GreName -> Ordering (<) :: GreName -> GreName -> Bool (<=) :: GreName -> GreName -> Bool (>) :: GreName -> GreName -> Bool (>=) :: GreName -> GreName -> Bool max :: GreName -> GreName -> GreName min :: GreName -> GreName -> GreName

data LocalRdrEnv #

#### Instances

Instances details

Outputable LocalRdrEnv |
Instance details Defined in GHC.Types.Name.Reader Methods ppr :: LocalRdrEnv -> SDoc #

data ImpItemSpec #

Constructors

ImpAll |
ImpSome |
Fields is_explicit :: Bool is_iloc :: SrcSpan

#### Instances

Instances details

Data ImpItemSpec |
Instance details Defined in GHC.Types.Name.Reader Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> ImpItemSpec -> c ImpItemSpec gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c ImpItemSpec toConstr :: ImpItemSpec -> Constr dataTypeOf :: ImpItemSpec -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c ImpItemSpec) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c ImpItemSpec) gmapT :: (forall b. Data b => b -> b) -> ImpItemSpec -> ImpItemSpec gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> ImpItemSpec -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> ImpItemSpec -> r gmapQ :: (forall d. Data d => d -> u) -> ImpItemSpec -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> ImpItemSpec -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> ImpItemSpec -> m ImpItemSpec gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> ImpItemSpec -> m ImpItemSpec gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> ImpItemSpec -> m ImpItemSpec
Eq ImpItemSpec |
Instance details Defined in GHC.Types.Name.Reader Methods (==) :: ImpItemSpec -> ImpItemSpec -> Bool # (/=) :: ImpItemSpec -> ImpItemSpec -> Bool #

isQual :: RdrName -> Bool #

globalRdrEnvElts :: GlobalRdrEnv -> [GlobalRdrElt] #

greMangledName :: GlobalRdrElt -> Name #

gresFromAvails :: Maybe ImportSpec -> [AvailInfo] -> [GlobalRdrElt] #

mkGlobalRdrEnv :: [GlobalRdrElt] -> GlobalRdrEnv #

mkOrig :: Module -> OccName -> RdrName #

mkUnqual :: NameSpace -> FastString -> RdrName #

nameRdrName :: Name -> RdrName #

getRdrName :: NamedThing thing => thing -> RdrName #

mkQual :: NameSpace -> (FastString, FastString) -> RdrName #

mkRdrUnqual :: OccName -> RdrName #

rdrNameOcc :: RdrName -> OccName #

bestImport :: [ImportSpec] -> ImportSpec #

emptyGlobalRdrEnv :: GlobalRdrEnv #

extendGlobalRdrEnv :: GlobalRdrEnv -> GlobalRdrElt -> GlobalRdrEnv #

greOccName :: GlobalRdrElt -> OccName #

greParent_maybe :: GlobalRdrElt -> Maybe Name #

gresFromAvail :: (Name -> Maybe ImportSpec) -> AvailInfo -> [GlobalRdrElt] #

gresToAvailInfo :: [GlobalRdrElt] -> [AvailInfo] #

isDuplicateRecFldGRE :: GlobalRdrElt -> Bool #

isExact :: RdrName -> Bool #

isLocalGRE :: GlobalRdrElt -> Bool #

isNoFieldSelectorGRE :: GlobalRdrElt -> Bool #

isRdrDataCon :: RdrName -> Bool #

isRdrTc :: RdrName -> Bool #

isRecFldGRE :: GlobalRdrElt -> Bool #

localGREsFromAvail :: AvailInfo -> [GlobalRdrElt] #

lookupGlobalRdrEnv :: GlobalRdrEnv -> OccName -> [GlobalRdrElt] #

minusLocalRdrEnv :: LocalRdrEnv -> OccEnv a -> LocalRdrEnv #

plusGlobalRdrEnv :: GlobalRdrEnv -> GlobalRdrEnv -> GlobalRdrEnv #

pprGlobalRdrEnv :: Bool -> GlobalRdrEnv -> SDoc #

shadowNames :: GlobalRdrEnv -> OccEnv a -> GlobalRdrEnv #

localRdrEnvElts :: LocalRdrEnv -> [Name] #

lookupGRE_Name :: GlobalRdrEnv -> Name -> Maybe GlobalRdrElt #

unQualOK :: GlobalRdrElt -> Bool #

extendLocalRdrEnvList :: LocalRdrEnv -> [Name] -> LocalRdrEnv #

emptyLocalRdrEnv :: LocalRdrEnv #

greNameSrcSpan :: GreName -> SrcSpan #

availFromGRE :: GlobalRdrElt -> AvailInfo #

demoteRdrName :: RdrName -> Maybe RdrName #

elemLocalRdrEnv :: RdrName -> LocalRdrEnv -> Bool #

extendLocalRdrEnv :: LocalRdrEnv -> Name -> LocalRdrEnv #

getGRE_NameQualifier_maybes :: GlobalRdrEnv -> Name -> [Maybe [ModuleName]] #

greDefinitionModule :: GlobalRdrElt -> Maybe Module #

greDefinitionSrcSpan :: GlobalRdrElt -> SrcSpan #

greFieldLabel :: GlobalRdrElt -> Maybe FieldLabel #

grePrintableName :: GlobalRdrElt -> Name #

greQualModName :: GlobalRdrElt -> ModuleName #

greRdrNames :: GlobalRdrElt -> [RdrName] #

greSrcSpan :: GlobalRdrElt -> SrcSpan #

importSpecLoc :: ImportSpec -> SrcSpan #

importSpecModule :: ImportSpec -> ModuleName #

inLocalRdrEnvScope :: Name -> LocalRdrEnv -> Bool #

isExact_maybe :: RdrName -> Maybe Name #

isExplicitItem :: ImpItemSpec -> Bool #

isFieldSelectorGRE :: GlobalRdrElt -> Bool #

isOrig :: RdrName -> Bool #

isOrig_maybe :: RdrName -> Maybe (Module, OccName) #

isQual_maybe :: RdrName -> Maybe (ModuleName, OccName) #

isRdrTyVar :: RdrName -> Bool #

isSrcRdrName :: RdrName -> Bool #

isUnqual :: RdrName -> Bool #

lookupGRE_FieldLabel :: GlobalRdrEnv -> FieldLabel -> Maybe GlobalRdrElt #

lookupGRE_GreName :: GlobalRdrEnv -> GreName -> Maybe GlobalRdrElt #

lookupGRE_Name_OccName :: GlobalRdrEnv -> Name -> OccName -> Maybe GlobalRdrElt #

lookupGRE_RdrName :: RdrName -> GlobalRdrEnv -> [GlobalRdrElt] #

lookupGRE_RdrName' :: RdrName -> GlobalRdrEnv -> [GlobalRdrElt] #

lookupLocalRdrEnv :: LocalRdrEnv -> RdrName -> Maybe Name #

lookupLocalRdrOcc :: LocalRdrEnv -> OccName -> Maybe Name #

mkRdrQual :: ModuleName -> OccName -> RdrName #

mkVarUnqual :: FastString -> RdrName #

opIsAt :: RdrName -> Bool #

pickGREs :: RdrName -> [GlobalRdrElt] -> [GlobalRdrElt] #

pickGREsModExp :: ModuleName -> [GlobalRdrElt] -> [(GlobalRdrElt, GlobalRdrElt)] #

pprNameProvenance :: GlobalRdrElt -> SDoc #

promoteRdrName :: RdrName -> Maybe RdrName #

qualSpecOK :: ModuleName -> ImportSpec -> Bool #

rdrNameSpace :: RdrName -> NameSpace #

transformGREs :: (GlobalRdrElt -> GlobalRdrElt) -> [OccName] -> GlobalRdrEnv -> GlobalRdrEnv #

unQualSpecOK :: ImportSpec -> Bool #

data Severity #

Constructors

SevIgnore |
SevWarning |
SevError |

#### Instances

Instances details

Show Severity |
Instance details Defined in GHC.Types.Error Methods showsPrec :: Int -> Severity -> ShowS # show :: Severity -> String # showList :: [Severity] -> ShowS #
ToJson Severity |
Instance details Defined in GHC.Types.Error Methods json :: Severity -> JsonDoc
Outputable Severity |
Instance details Defined in GHC.Types.Error Methods ppr :: Severity -> SDoc #
Eq Severity |
Instance details Defined in GHC.Types.Error Methods (==) :: Severity -> Severity -> Bool # (/=) :: Severity -> Severity -> Bool #

emptyMessages :: Messages e #

greNamePrintableName :: GreName -> Name #

data HscSource #

Constructors

HsSrcFile |
HsBootFile |
HsigFile |

#### Instances

Instances details

Show HscSource |
Instance details Defined in GHC.Types.SourceFile Methods showsPrec :: Int -> HscSource -> ShowS # show :: HscSource -> String # showList :: [HscSource] -> ShowS #
Binary HscSource |
Instance details Defined in GHC.Types.SourceFile Methods put_ :: BinHandle -> HscSource -> IO () put :: BinHandle -> HscSource -> IO (Bin HscSource) get :: BinHandle -> IO HscSource
Eq HscSource |
Instance details Defined in GHC.Types.SourceFile Methods (==) :: HscSource -> HscSource -> Bool # (/=) :: HscSource -> HscSource -> Bool #
Ord HscSource |
Instance details Defined in GHC.Types.SourceFile Methods compare :: HscSource -> HscSource -> Ordering (<) :: HscSource -> HscSource -> Bool (<=) :: HscSource -> HscSource -> Bool (>) :: HscSource -> HscSource -> Bool (>=) :: HscSource -> HscSource -> Bool max :: HscSource -> HscSource -> HscSource min :: HscSource -> HscSource -> HscSource

data Var #

#### Instances

Instances details

Data Var |
Instance details Defined in GHC.Types.Var Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Var -> c Var gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Var toConstr :: Var -> Constr dataTypeOf :: Var -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Var) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Var) gmapT :: (forall b. Data b => b -> b) -> Var -> Var gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Var -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Var -> r gmapQ :: (forall d. Data d => d -> u) -> Var -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> Var -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> Var -> m Var gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Var -> m Var gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Var -> m Var
ModifyState Id |
Instance details Defined in GHC.Iface.Ext.Ast Methods addSubstitution :: Id -> Id -> HieState -> HieState
NamedThing Var |
Instance details Defined in GHC.Types.Var Methods getOccName :: Var -> OccName # getName :: Var -> Name #
HasOccName Var |
Instance details Defined in GHC.Types.Var Methods occName :: Var -> OccName #
Uniquable Var |
Instance details Defined in GHC.Types.Var Methods getUnique :: Var -> Unique #
Outputable Var |
Instance details Defined in GHC.Types.Var Methods ppr :: Var -> SDoc #
Eq Var |
Instance details Defined in GHC.Types.Var Methods (==) :: Var -> Var -> Bool # (/=) :: Var -> Var -> Bool #
Ord Var |
Instance details Defined in GHC.Types.Var Methods compare :: Var -> Var -> Ordering (<) :: Var -> Var -> Bool (<=) :: Var -> Var -> Bool (>) :: Var -> Var -> Bool (>=) :: Var -> Var -> Bool max :: Var -> Var -> Var min :: Var -> Var -> Var
ToHie (Context (Located Var)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: Context (Located Var) -> HieM [HieAST Type]
Eq (DeBruijn Var) |
Instance details Defined in GHC.Core.Map.Type Methods (==) :: DeBruijn Var -> DeBruijn Var -> Bool # (/=) :: DeBruijn Var -> DeBruijn Var -> Bool #
OutputableBndr (Id, TagSig) |
Instance details Defined in GHC.Stg.InferTags.TagSig Methods pprBndr :: BindingSite -> (Id, TagSig) -> SDoc pprPrefixOcc :: (Id, TagSig) -> SDoc pprInfixOcc :: (Id, TagSig) -> SDoc bndrIsJoin_maybe :: (Id, TagSig) -> Maybe Int
type Anno Id |
Instance details Defined in GHC.Hs.Extension type Anno Id = SrcSpanAnnN
type Anno (LocatedN Id) |
Instance details Defined in GHC.Hs.Binds type Anno (LocatedN Id) = SrcSpan
type Anno [LocatedN Id] |
Instance details Defined in GHC.Hs.Binds type Anno [LocatedN Id] = SrcSpan

setTyVarUnique :: TyVar -> Unique -> TyVar #

setVarUnique :: Var -> Unique -> Var #

type Module = GenModule Unit #

newtype ModuleName #

Constructors

ModuleName FastString |

#### Instances

Instances details

Data ModuleName |
Instance details Defined in Language.Haskell.Syntax.Module.Name Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> ModuleName -> c ModuleName gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c ModuleName toConstr :: ModuleName -> Constr dataTypeOf :: ModuleName -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c ModuleName) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c ModuleName) gmapT :: (forall b. Data b => b -> b) -> ModuleName -> ModuleName gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> ModuleName -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> ModuleName -> r gmapQ :: (forall d. Data d => d -> u) -> ModuleName -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> ModuleName -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> ModuleName -> m ModuleName gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> ModuleName -> m ModuleName gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> ModuleName -> m ModuleName
Show ModuleName |
Instance details Defined in Language.Haskell.Syntax.Module.Name Methods showsPrec :: Int -> ModuleName -> ShowS # show :: ModuleName -> String # showList :: [ModuleName] -> ShowS #
NFData ModuleName |
Instance details Defined in Language.Haskell.Syntax.Module.Name Methods rnf :: ModuleName -> () #
Uniquable ModuleName |
Instance details Defined in GHC.Types.Unique Methods getUnique :: ModuleName -> Unique #
Binary ModuleName |
Instance details Defined in GHC.Utils.Binary Methods put_ :: BinHandle -> ModuleName -> IO () put :: BinHandle -> ModuleName -> IO (Bin ModuleName) get :: BinHandle -> IO ModuleName
Outputable ModuleName |
Instance details Defined in GHC.Utils.Outputable Methods ppr :: ModuleName -> SDoc #
Eq ModuleName |
Instance details Defined in Language.Haskell.Syntax.Module.Name Methods (==) :: ModuleName -> ModuleName -> Bool # (/=) :: ModuleName -> ModuleName -> Bool #
Ord ModuleName |
Instance details Defined in Language.Haskell.Syntax.Module.Name Methods compare :: ModuleName -> ModuleName -> Ordering (<) :: ModuleName -> ModuleName -> Bool (<=) :: ModuleName -> ModuleName -> Bool (>) :: ModuleName -> ModuleName -> Bool (>=) :: ModuleName -> ModuleName -> Bool max :: ModuleName -> ModuleName -> ModuleName min :: ModuleName -> ModuleName -> ModuleName
Hashable ModuleName # |
Instance details Defined in Development.IDE.GHC.Orphans Methods hashWithSalt :: Int -> ModuleName -> Int # hash :: ModuleName -> Int #
ToHie (IEContext (LocatedA ModuleName)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: IEContext (LocatedA ModuleName) -> HieM [HieAST Type]
type Anno ModuleName |
Instance details Defined in GHC.Hs type Anno ModuleName = SrcSpanAnnA
type Anno ModuleName |
Instance details Defined in GHC.Hs.ImpExp type Anno ModuleName = SrcSpanAnnA

type Unit = GenUnit UnitId #

data IsBootInterface #

Constructors

NotBoot |
IsBoot |

#### Instances

Instances details

Data IsBootInterface |
Instance details Defined in Language.Haskell.Syntax.ImpExp Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> IsBootInterface -> c IsBootInterface gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c IsBootInterface toConstr :: IsBootInterface -> Constr dataTypeOf :: IsBootInterface -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c IsBootInterface) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c IsBootInterface) gmapT :: (forall b. Data b => b -> b) -> IsBootInterface -> IsBootInterface gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> IsBootInterface -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> IsBootInterface -> r gmapQ :: (forall d. Data d => d -> u) -> IsBootInterface -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> IsBootInterface -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> IsBootInterface -> m IsBootInterface gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> IsBootInterface -> m IsBootInterface gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> IsBootInterface -> m IsBootInterface
Show IsBootInterface |
Instance details Defined in Language.Haskell.Syntax.ImpExp Methods showsPrec :: Int -> IsBootInterface -> ShowS # show :: IsBootInterface -> String # showList :: [IsBootInterface] -> ShowS #
Eq IsBootInterface |
Instance details Defined in Language.Haskell.Syntax.ImpExp Methods (==) :: IsBootInterface -> IsBootInterface -> Bool # (/=) :: IsBootInterface -> IsBootInterface -> Bool #
Ord IsBootInterface |
Instance details Defined in Language.Haskell.Syntax.ImpExp Methods compare :: IsBootInterface -> IsBootInterface -> Ordering (<) :: IsBootInterface -> IsBootInterface -> Bool (<=) :: IsBootInterface -> IsBootInterface -> Bool (>) :: IsBootInterface -> IsBootInterface -> Bool (>=) :: IsBootInterface -> IsBootInterface -> Bool max :: IsBootInterface -> IsBootInterface -> IsBootInterface min :: IsBootInterface -> IsBootInterface -> IsBootInterface

data GenModule unit #

Constructors

Module !unit !ModuleName |

#### Instances

Instances details

Functor GenModule |
Instance details Defined in GHC.Unit.Types Methods fmap :: (a -> b) -> GenModule a -> GenModule b # (<$) :: a -> GenModule b -> GenModule a #
Show Module # |
Instance details Defined in Development.IDE.GHC.Orphans Methods showsPrec :: Int -> Module -> ShowS # show :: Module -> String # showList :: [Module] -> ShowS #
Uniquable Module |
Instance details Defined in GHC.Unit.Types Methods getUnique :: Module -> Unique #
Outputable InstalledModule |
Instance details Defined in GHC.Unit.Types Methods ppr :: InstalledModule -> SDoc #
Outputable InstantiatedModule |
Instance details Defined in GHC.Unit.Types Methods ppr :: InstantiatedModule -> SDoc #
Outputable Module |
Instance details Defined in GHC.Unit.Types Methods ppr :: Module -> SDoc #
Data unit => Data (GenModule unit) |
Instance details Defined in GHC.Unit.Types Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> GenModule unit -> c (GenModule unit) gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (GenModule unit) toConstr :: GenModule unit -> Constr dataTypeOf :: GenModule unit -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (GenModule unit)) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (GenModule unit)) gmapT :: (forall b. Data b => b -> b) -> GenModule unit -> GenModule unit gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> GenModule unit -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> GenModule unit -> r gmapQ :: (forall d. Data d => d -> u) -> GenModule unit -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> GenModule unit -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> GenModule unit -> m (GenModule unit) gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> GenModule unit -> m (GenModule unit) gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> GenModule unit -> m (GenModule unit)
NFData (GenModule a) |
Instance details Defined in GHC.Unit.Types Methods rnf :: GenModule a -> () #
Binary a => Binary (GenModule a) |
Instance details Defined in GHC.Unit.Types Methods put_ :: BinHandle -> GenModule a -> IO () put :: BinHandle -> GenModule a -> IO (Bin (GenModule a)) get :: BinHandle -> IO (GenModule a)
Eq unit => Eq (GenModule unit) |
Instance details Defined in GHC.Unit.Types Methods (==) :: GenModule unit -> GenModule unit -> Bool # (/=) :: GenModule unit -> GenModule unit -> Bool #
Ord unit => Ord (GenModule unit) |
Instance details Defined in GHC.Unit.Types Methods compare :: GenModule unit -> GenModule unit -> Ordering (<) :: GenModule unit -> GenModule unit -> Bool (<=) :: GenModule unit -> GenModule unit -> Bool (>) :: GenModule unit -> GenModule unit -> Bool (>=) :: GenModule unit -> GenModule unit -> Bool max :: GenModule unit -> GenModule unit -> GenModule unit min :: GenModule unit -> GenModule unit -> GenModule unit

type ModuleSet = Set NDModule #

type InstalledModule = GenModule UnitId #

type Instantiations = GenInstantiations UnitId #

data GenUnit uid #

Constructors

RealUnit !(Definite uid) |
VirtUnit !(GenInstantiatedUnit uid) |
HoleUnit |

#### Instances

Instances details

Data Unit |
Instance details Defined in GHC.Unit.Types Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Unit -> c Unit gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Unit toConstr :: Unit -> Constr dataTypeOf :: Unit -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Unit) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Unit) gmapT :: (forall b. Data b => b -> b) -> Unit -> Unit gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Unit -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Unit -> r gmapQ :: (forall d. Data d => d -> u) -> Unit -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> Unit -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> Unit -> m Unit gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Unit -> m Unit gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Unit -> m Unit
Show Module # |
Instance details Defined in Development.IDE.GHC.Orphans Methods showsPrec :: Int -> Module -> ShowS # show :: Module -> String # showList :: [Module] -> ShowS #
Show Unit |
Instance details Defined in GHC.Unit.Types Methods showsPrec :: Int -> Unit -> ShowS # show :: Unit -> String # showList :: [Unit] -> ShowS #
NFData Unit |
Instance details Defined in GHC.Unit.Types Methods rnf :: Unit -> () #
Uniquable Module |
Instance details Defined in GHC.Unit.Types Methods getUnique :: Module -> Unique #
Binary Unit |
Instance details Defined in GHC.Unit.Types Methods put_ :: BinHandle -> Unit -> IO () put :: BinHandle -> Unit -> IO (Bin Unit) get :: BinHandle -> IO Unit
Outputable Module |
Instance details Defined in GHC.Unit.Types Methods ppr :: Module -> SDoc #
Outputable Unit |
Instance details Defined in GHC.Unit.Types Methods ppr :: Unit -> SDoc #
Ord Unit |
Instance details Defined in GHC.Unit.Types Methods compare :: Unit -> Unit -> Ordering (<) :: Unit -> Unit -> Bool (<=) :: Unit -> Unit -> Bool (>) :: Unit -> Unit -> Bool (>=) :: Unit -> Unit -> Bool max :: Unit -> Unit -> Unit min :: Unit -> Unit -> Unit
IsUnitId u => Uniquable (GenUnit u) |
Instance details Defined in GHC.Unit.Types Methods getUnique :: GenUnit u -> Unique #
IsUnitId u => IsUnitId (GenUnit u) |
Instance details Defined in GHC.Unit.Types Methods unitFS :: GenUnit u -> FastString #
IsUnitId u => Eq (GenUnit u) |
Instance details Defined in GHC.Unit.Types Methods (==) :: GenUnit u -> GenUnit u -> Bool # (/=) :: GenUnit u -> GenUnit u -> Bool #

data ModuleEnv elt #

#### Instances

Instances details

Outputable a => Outputable (ModuleEnv a) |
Instance details Defined in GHC.Unit.Module.Env Methods ppr :: ModuleEnv a -> SDoc #

newtype Definite unit #

Constructors

Definite |
Fields unDefinite :: unit

#### Instances

Instances details

Functor Definite |
Instance details Defined in GHC.Unit.Types Methods fmap :: (a -> b) -> Definite a -> Definite b # (<$) :: a -> Definite b -> Definite a #
Uniquable unit => Uniquable (Definite unit) |
Instance details Defined in GHC.Unit.Types Methods getUnique :: Definite unit -> Unique #
IsUnitId unit => IsUnitId (Definite unit) |
Instance details Defined in GHC.Unit.Types Methods unitFS :: Definite unit -> FastString #
Binary unit => Binary (Definite unit) |
Instance details Defined in GHC.Unit.Types Methods put_ :: BinHandle -> Definite unit -> IO () put :: BinHandle -> Definite unit -> IO (Bin (Definite unit)) get :: BinHandle -> IO (Definite unit)
Outputable unit => Outputable (Definite unit) |
Instance details Defined in GHC.Unit.Types Methods ppr :: Definite unit -> SDoc #
Eq unit => Eq (Definite unit) |
Instance details Defined in GHC.Unit.Types Methods (==) :: Definite unit -> Definite unit -> Bool # (/=) :: Definite unit -> Definite unit -> Bool #
Ord unit => Ord (Definite unit) |
Instance details Defined in GHC.Unit.Types Methods compare :: Definite unit -> Definite unit -> Ordering (<) :: Definite unit -> Definite unit -> Bool (<=) :: Definite unit -> Definite unit -> Bool (>) :: Definite unit -> Definite unit -> Bool (>=) :: Definite unit -> Definite unit -> Bool max :: Definite unit -> Definite unit -> Definite unit min :: Definite unit -> Definite unit -> Definite unit

data InstalledModuleEnv elt #

#### Instances

Instances details

Outputable elt => Outputable (InstalledModuleEnv elt) |
Instance details Defined in GHC.Unit.Module.Env Methods ppr :: InstalledModuleEnv elt -> SDoc #

type ModuleNameWithIsBoot = GenWithIsBoot ModuleName #

class ContainsModule t where #

Methods

extractModule :: t -> Module #

#### Instances

Instances details

ContainsModule DsGblEnv |
Instance details Defined in GHC.HsToCore.Types Methods extractModule :: DsGblEnv -> Module #
ContainsModule TcGblEnv |
Instance details Defined in GHC.Tc.Types Methods extractModule :: TcGblEnv -> Module #
ContainsModule gbl => ContainsModule (Env gbl lcl) |
Instance details Defined in GHC.Tc.Types Methods extractModule :: Env gbl lcl -> Module #

data GenWithIsBoot mod #

Constructors

GWIB |
Fields gwib_mod :: mod gwib_isBoot :: IsBootInterface

#### Instances

Instances details

Foldable GenWithIsBoot |
Instance details Defined in GHC.Unit.Types Methods fold :: Monoid m => GenWithIsBoot m -> m foldMap :: Monoid m => (a -> m) -> GenWithIsBoot a -> m foldMap' :: Monoid m => (a -> m) -> GenWithIsBoot a -> m foldr :: (a -> b -> b) -> b -> GenWithIsBoot a -> b foldr' :: (a -> b -> b) -> b -> GenWithIsBoot a -> b foldl :: (b -> a -> b) -> b -> GenWithIsBoot a -> b foldl' :: (b -> a -> b) -> b -> GenWithIsBoot a -> b foldr1 :: (a -> a -> a) -> GenWithIsBoot a -> a foldl1 :: (a -> a -> a) -> GenWithIsBoot a -> a toList :: GenWithIsBoot a -> [a] null :: GenWithIsBoot a -> Bool length :: GenWithIsBoot a -> Int elem :: Eq a => a -> GenWithIsBoot a -> Bool maximum :: Ord a => GenWithIsBoot a -> a minimum :: Ord a => GenWithIsBoot a -> a sum :: Num a => GenWithIsBoot a -> a product :: Num a => GenWithIsBoot a -> a
Traversable GenWithIsBoot |
Instance details Defined in GHC.Unit.Types Methods traverse :: Applicative f => (a -> f b) -> GenWithIsBoot a -> f (GenWithIsBoot b) # sequenceA :: Applicative f => GenWithIsBoot (f a) -> f (GenWithIsBoot a) mapM :: Monad m => (a -> m b) -> GenWithIsBoot a -> m (GenWithIsBoot b) # sequence :: Monad m => GenWithIsBoot (m a) -> m (GenWithIsBoot a) #
Functor GenWithIsBoot |
Instance details Defined in GHC.Unit.Types Methods fmap :: (a -> b) -> GenWithIsBoot a -> GenWithIsBoot b # (<$) :: a -> GenWithIsBoot b -> GenWithIsBoot a #
Show mod => Show (GenWithIsBoot mod) |
Instance details Defined in GHC.Unit.Types Methods showsPrec :: Int -> GenWithIsBoot mod -> ShowS # show :: GenWithIsBoot mod -> String # showList :: [GenWithIsBoot mod] -> ShowS #
Binary a => Binary (GenWithIsBoot a) |
Instance details Defined in GHC.Unit.Types Methods put_ :: BinHandle -> GenWithIsBoot a -> IO () put :: BinHandle -> GenWithIsBoot a -> IO (Bin (GenWithIsBoot a)) get :: BinHandle -> IO (GenWithIsBoot a)
Outputable a => Outputable (GenWithIsBoot a) |
Instance details Defined in GHC.Unit.Types Methods ppr :: GenWithIsBoot a -> SDoc #
Eq mod => Eq (GenWithIsBoot mod) |
Instance details Defined in GHC.Unit.Types Methods (==) :: GenWithIsBoot mod -> GenWithIsBoot mod -> Bool # (/=) :: GenWithIsBoot mod -> GenWithIsBoot mod -> Bool #
Ord mod => Ord (GenWithIsBoot mod) |
Instance details Defined in GHC.Unit.Types Methods compare :: GenWithIsBoot mod -> GenWithIsBoot mod -> Ordering (<) :: GenWithIsBoot mod -> GenWithIsBoot mod -> Bool (<=) :: GenWithIsBoot mod -> GenWithIsBoot mod -> Bool (>) :: GenWithIsBoot mod -> GenWithIsBoot mod -> Bool (>=) :: GenWithIsBoot mod -> GenWithIsBoot mod -> Bool max :: GenWithIsBoot mod -> GenWithIsBoot mod -> GenWithIsBoot mod min :: GenWithIsBoot mod -> GenWithIsBoot mod -> GenWithIsBoot mod

class HasModule (m :: Type -> Type) where #

Methods

getModule :: m Module #

#### Instances

Instances details

HasModule TcS |
Instance details Defined in GHC.Tc.Solver.Monad Methods getModule :: TcS Module #
ContainsModule env => HasModule (IOEnv env) |
Instance details Defined in GHC.Data.IOEnv Methods getModule :: IOEnv env Module #

class IsUnitId u where #

Methods

unitFS :: u -> FastString #

#### Instances

Instances details

IsUnitId UnitId |
Instance details Defined in GHC.Unit.Types Methods unitFS :: UnitId -> FastString #
IsUnitId UnitKey |
Instance details Defined in GHC.Unit.Types Methods unitFS :: UnitKey -> FastString #
IsUnitId unit => IsUnitId (Definite unit) |
Instance details Defined in GHC.Unit.Types Methods unitFS :: Definite unit -> FastString #
IsUnitId u => IsUnitId (GenUnit u) |
Instance details Defined in GHC.Unit.Types Methods unitFS :: GenUnit u -> FastString #

newtype UnitKey #

Constructors

UnitKey FastString |

#### Instances

Instances details

IsUnitId UnitKey |
Instance details Defined in GHC.Unit.Types Methods unitFS :: UnitKey -> FastString #

type DModuleNameEnv elt = UniqDFM ModuleName elt #

type ModuleNameEnv elt = UniqFM ModuleName elt #

type DefUnitId = Definite UnitId #

data GenInstantiatedUnit unit #

Constructors

InstantiatedUnit |
Fields instUnitFS :: !FastString instUnitKey :: !Unique instUnitInstanceOf :: !unit instUnitInsts :: !(GenInstantiations unit) instUnitHoles :: UniqDSet ModuleName

#### Instances

Instances details

Binary InstantiatedUnit |
Instance details Defined in GHC.Unit.Types Methods put_ :: BinHandle -> InstantiatedUnit -> IO () put :: BinHandle -> InstantiatedUnit -> IO (Bin InstantiatedUnit) get :: BinHandle -> IO InstantiatedUnit
Outputable InstantiatedModule |
Instance details Defined in GHC.Unit.Types Methods ppr :: InstantiatedModule -> SDoc #
Outputable InstantiatedUnit |
Instance details Defined in GHC.Unit.Types Methods ppr :: InstantiatedUnit -> SDoc #
Eq (GenInstantiatedUnit unit) |
Instance details Defined in GHC.Unit.Types Methods (==) :: GenInstantiatedUnit unit -> GenInstantiatedUnit unit -> Bool # (/=) :: GenInstantiatedUnit unit -> GenInstantiatedUnit unit -> Bool #
Ord (GenInstantiatedUnit unit) |
Instance details Defined in GHC.Unit.Types Methods compare :: GenInstantiatedUnit unit -> GenInstantiatedUnit unit -> Ordering (<) :: GenInstantiatedUnit unit -> GenInstantiatedUnit unit -> Bool (<=) :: GenInstantiatedUnit unit -> GenInstantiatedUnit unit -> Bool (>) :: GenInstantiatedUnit unit -> GenInstantiatedUnit unit -> Bool (>=) :: GenInstantiatedUnit unit -> GenInstantiatedUnit unit -> Bool max :: GenInstantiatedUnit unit -> GenInstantiatedUnit unit -> GenInstantiatedUnit unit min :: GenInstantiatedUnit unit -> GenInstantiatedUnit unit -> GenInstantiatedUnit unit

type GenInstantiations unit = [(ModuleName, GenModule (GenUnit unit))] #

type HomeUnitModule = GenModule UnitId #

type InstantiatedModule = GenModule InstantiatedUnit #

type InstantiatedUnit = GenInstantiatedUnit UnitId #

type ModuleWithIsBoot = GenWithIsBoot Module #

moduleNameString :: ModuleName -> String #

mkModule :: u -> ModuleName -> GenModule u #

stringToUnit :: String -> Unit #

unitString :: IsUnitId u => u -> String #

mkModuleName :: String -> ModuleName #

moduleUnitId :: Module -> UnitId #

mkModuleSet :: [Module] -> ModuleSet #

pprModule :: IsLine doc => Module -> doc #

mkModuleNameFS :: FastString -> ModuleName #

moduleNameColons :: ModuleName -> String #

moduleNameFS :: ModuleName -> FastString #

moduleNameSlashes :: ModuleName -> String #

parseModuleName :: ReadP ModuleName #

stableModuleNameCmp :: ModuleName -> ModuleName -> Ordering #

baseUnit :: Unit #

bignumUnit :: Unit #

interactiveUnit :: Unit #

mainUnit :: Unit #

primUnit :: Unit #

thisGhcUnit :: Unit #

elemModuleSet :: Module -> ModuleSet -> Bool #

isInteractiveModule :: Module -> Bool #

isHoleModule :: GenModule (GenUnit u) -> Bool #

mkModuleEnv :: [(Module, a)] -> ModuleEnv a #

moduleEnvToList :: ModuleEnv a -> [(Module, a)] #

mainUnitId :: UnitId #

stringToUnitId :: String -> UnitId #

mapModuleEnv :: (a -> b) -> ModuleEnv a -> ModuleEnv b #

emptyModuleEnv :: ModuleEnv a #

getModuleInstantiation :: Module -> (InstalledModule, Maybe InstantiatedModule) #

installedModuleEq :: InstalledModule -> Module -> Bool #

moduleIsDefinite :: Module -> Bool #

uninstantiateInstantiatedModule :: InstantiatedModule -> InstantiatedModule #

elemModuleEnv :: Module -> ModuleEnv a -> Bool #

extendInstalledModuleEnv :: InstalledModuleEnv a -> InstalledModule -> a -> InstalledModuleEnv a #

extendModuleEnv :: ModuleEnv a -> Module -> a -> ModuleEnv a #

lookupInstalledModuleEnv :: InstalledModuleEnv a -> InstalledModule -> Maybe a #

addBootSuffixLocn_maybe :: IsBootInterface -> ModLocation -> ModLocation #

moduleFreeHoles :: GenModule (GenUnit u) -> UniqDSet ModuleName #

primUnitId :: UnitId #

baseUnitId :: UnitId #

unitIdFS :: UnitId -> FastString #

emptyInstalledModuleEnv :: InstalledModuleEnv a #

emptyModuleSet :: ModuleSet #

extendModuleSetList :: ModuleSet -> [Module] -> ModuleSet #

mergeInstalledModuleEnv :: (elta -> eltb -> Maybe eltc) -> (InstalledModuleEnv elta -> InstalledModuleEnv eltc) -> (InstalledModuleEnv eltb -> InstalledModuleEnv eltc) -> InstalledModuleEnv elta -> InstalledModuleEnv eltb -> InstalledModuleEnv eltc #

moduleSetElts :: ModuleSet -> [Module] #

unitModuleEnv :: Module -> a -> ModuleEnv a #

lookupModuleEnv :: ModuleEnv a -> Module -> Maybe a #

installedModuleEnvElts :: InstalledModuleEnv a -> [(InstalledModule, a)] #

moduleEnvKeys :: ModuleEnv a -> [Module] #

plusInstalledModuleEnv :: (elt -> elt -> elt) -> InstalledModuleEnv elt -> InstalledModuleEnv elt -> InstalledModuleEnv elt #

plusModuleEnv_C :: (a -> a -> a) -> ModuleEnv a -> ModuleEnv a -> ModuleEnv a #

lookupWithDefaultModuleEnv :: ModuleEnv a -> a -> Module -> a #

moduleStableString :: Module -> String #

stableModuleCmp :: Module -> Module -> Ordering #

pprUnit :: IsLine doc => Unit -> doc #

extendModuleEnvWith :: (a -> a -> a) -> ModuleEnv a -> Module -> a -> ModuleEnv a #

mkHoleModule :: ModuleName -> GenModule (GenUnit u) #

mapGenUnit :: IsUnitId v => (u -> v) -> GenUnit u -> GenUnit v #

mkVirtUnit :: IsUnitId u => u -> [(ModuleName, GenModule (GenUnit u))] -> GenUnit u #

delInstalledModuleEnv :: InstalledModuleEnv a -> InstalledModule -> InstalledModuleEnv a #

delModuleEnv :: ModuleEnv a -> Module -> ModuleEnv a #

delModuleEnvList :: ModuleEnv a -> [Module] -> ModuleEnv a #

delModuleSet :: ModuleSet -> Module -> ModuleSet #

extendModuleEnvList :: ModuleEnv a -> [(Module, a)] -> ModuleEnv a #

extendModuleEnvList_C :: (a -> a -> a) -> ModuleEnv a -> [(Module, a)] -> ModuleEnv a #

extendModuleSet :: ModuleSet -> Module -> ModuleSet #

filterInstalledModuleEnv :: (InstalledModule -> a -> Bool) -> InstalledModuleEnv a -> InstalledModuleEnv a #

filterModuleEnv :: (Module -> a -> Bool) -> ModuleEnv a -> ModuleEnv a #

intersectModuleSet :: ModuleSet -> ModuleSet -> ModuleSet #

isEmptyModuleEnv :: ModuleEnv a -> Bool #

isEmptyModuleSet :: ModuleSet -> Bool #

mapMaybeModuleEnv :: (Module -> a -> Maybe b) -> ModuleEnv a -> ModuleEnv b #

minusModuleSet :: ModuleSet -> ModuleSet -> ModuleSet #

moduleEnvElts :: ModuleEnv a -> [a] #

partitionModuleEnv :: (a -> Bool) -> ModuleEnv a -> (ModuleEnv a, ModuleEnv a) #

plusModuleEnv :: ModuleEnv a -> ModuleEnv a -> ModuleEnv a #

unionManyModuleSets :: [ModuleSet] -> ModuleSet #

unionModuleSet :: ModuleSet -> ModuleSet -> ModuleSet #

unitModuleSet :: Module -> ModuleSet #

addBootSuffix :: FilePath -> FilePath #

addBootSuffixLocn :: ModLocation -> ModLocation #

addBootSuffix_maybe :: IsBootInterface -> FilePath -> FilePath #

removeBootSuffix :: FilePath -> FilePath #

bignumUnitId :: UnitId #

fsToUnit :: FastString -> Unit #

interactiveUnitId :: UnitId #

isHoleUnit :: GenUnit u -> Bool #

mapInstantiations :: IsUnitId v => (u -> v) -> GenInstantiations u -> GenInstantiations v #

mkInstantiatedUnit :: IsUnitId u => u -> GenInstantiations u -> GenInstantiatedUnit u #

mkInstantiatedUnitHash :: IsUnitId u => u -> [(ModuleName, GenModule (GenUnit u))] -> FastString #

pprInstantiatedModule :: InstantiatedModule -> SDoc #

rtsUnit :: Unit #

rtsUnitId :: UnitId #

stableUnitCmp :: Unit -> Unit -> Ordering #

thUnit :: Unit #

thUnitId :: UnitId #

thisGhcUnitId :: UnitId #

unitFreeModuleHoles :: GenUnit u -> UniqDSet ModuleName #

unitIdString :: UnitId -> String #

unitIsDefinite :: Unit -> Bool #

virtualUnitId :: InstantiatedUnit -> UnitId #

wiredInUnitIds :: [UnitId] #

getUnitInstantiations :: Unit -> (UnitId, Maybe InstantiatedUnit) #

uninstantiateInstantiatedUnit :: InstantiatedUnit -> InstantiatedUnit #

# Syntax re-exports

data HsModule p #

Constructors

HsModule |
Fields hsmodExt :: XCModule p hsmodName :: Maybe (XRec p ModuleName) hsmodExports :: Maybe (XRec p [LIE p]) hsmodImports :: [LImportDecl p] hsmodDecls :: [LHsDecl p]
XModule !(XXModule p) |

#### Instances

Instances details

NFData (HsModule a) # |
Instance details Defined in Development.IDE.GHC.Orphans Methods rnf :: HsModule a -> () #

data SrcSpanAnn' a #

#### Instances

Instances details

Functor SrcSpanAnn' # |
Instance details Defined in Development.IDE.GHC.Orphans Methods fmap :: (a -> b) -> SrcSpanAnn' a -> SrcSpanAnn' b # (<$) :: a -> SrcSpanAnn' b -> SrcSpanAnn' a #
Data a => Data (SrcSpanAnn' a) |
Instance details Defined in GHC.Parser.Annotation Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> SrcSpanAnn' a -> c (SrcSpanAnn' a) gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (SrcSpanAnn' a) toConstr :: SrcSpanAnn' a -> Constr dataTypeOf :: SrcSpanAnn' a -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (SrcSpanAnn' a)) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (SrcSpanAnn' a)) gmapT :: (forall b. Data b => b -> b) -> SrcSpanAnn' a -> SrcSpanAnn' a gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> SrcSpanAnn' a -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> SrcSpanAnn' a -> r gmapQ :: (forall d. Data d => d -> u) -> SrcSpanAnn' a -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> SrcSpanAnn' a -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> SrcSpanAnn' a -> m (SrcSpanAnn' a) gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> SrcSpanAnn' a -> m (SrcSpanAnn' a) gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> SrcSpanAnn' a -> m (SrcSpanAnn' a)
Semigroup an => Semigroup (SrcSpanAnn' an) |
Instance details Defined in GHC.Parser.Annotation Methods (<>) :: SrcSpanAnn' an -> SrcSpanAnn' an -> SrcSpanAnn' an # sconcat :: NonEmpty (SrcSpanAnn' an) -> SrcSpanAnn' an # stimes :: Integral b => b -> SrcSpanAnn' an -> SrcSpanAnn' an #
NFData (SrcSpanAnn' a) # |
Instance details Defined in Development.IDE.GHC.Orphans Methods rnf :: SrcSpanAnn' a -> () #
HasLoc (LocatedA a) |
Instance details Defined in GHC.Iface.Ext.Ast Methods loc :: LocatedA a -> SrcSpan
HasLoc (LocatedN a) |
Instance details Defined in GHC.Iface.Ext.Ast Methods loc :: LocatedN a -> SrcSpan
HiePass p => HasType (LocatedA (HsBind (GhcPass p))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods getTypeNode :: LocatedA (HsBind (GhcPass p)) -> HieM [HieAST Type]
HiePass p => HasType (LocatedA (HsExpr (GhcPass p))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods getTypeNode :: LocatedA (HsExpr (GhcPass p)) -> HieM [HieAST Type]
HiePass p => HasType (LocatedA (Pat (GhcPass p))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods getTypeNode :: LocatedA (Pat (GhcPass p)) -> HieM [HieAST Type]
ToHie (LBooleanFormula (LocatedN Name)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LBooleanFormula (LocatedN Name) -> HieM [HieAST Type]
HiePass p => ToHie (BindContext (LocatedA (HsBind (GhcPass p)))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: BindContext (LocatedA (HsBind (GhcPass p))) -> HieM [HieAST Type]
ToHie (Context (Located a)) => ToHie (Context (LocatedA a)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: Context (LocatedA a) -> HieM [HieAST Type]
ToHie (Context (Located a)) => ToHie (Context (LocatedN a)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: Context (LocatedN a) -> HieM [HieAST Type]
ToHie (EvBindContext (LocatedA TcEvBinds)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: EvBindContext (LocatedA TcEvBinds) -> HieM [HieAST Type]
ToHie (IEContext (LocatedA (IE GhcRn))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: IEContext (LocatedA (IE GhcRn)) -> HieM [HieAST Type]
ToHie (IEContext (LocatedA (IEWrappedName GhcRn))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: IEContext (LocatedA (IEWrappedName GhcRn)) -> HieM [HieAST Type]
ToHie (IEContext (LocatedA ModuleName)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: IEContext (LocatedA ModuleName) -> HieM [HieAST Type]
HiePass p => ToHie (PScoped (LocatedA (Pat (GhcPass p)))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: PScoped (LocatedA (Pat (GhcPass p))) -> HieM [HieAST Type]
(ToHie (RFContext label), ToHie arg, HasLoc arg, Data arg, Data label) => ToHie (RContext (LocatedA (HsFieldBind label arg))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: RContext (LocatedA (HsFieldBind label arg)) -> HieM [HieAST Type]
HiePass p => ToHie (RFContext (LocatedAn NoEpAnns (AmbiguousFieldOcc (GhcPass p)))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: RFContext (LocatedAn NoEpAnns (AmbiguousFieldOcc (GhcPass p))) -> HieM [HieAST Type]
HiePass p => ToHie (RFContext (LocatedAn NoEpAnns (FieldOcc (GhcPass p)))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: RFContext (LocatedAn NoEpAnns (FieldOcc (GhcPass p))) -> HieM [HieAST Type]
HiePass p => ToHie (RScoped (LocatedA (IPBind (GhcPass p)))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: RScoped (LocatedA (IPBind (GhcPass p))) -> HieM [HieAST Type]
(ToHie (LocatedA (body (GhcPass p))), AnnoBody p body, HiePass p) => ToHie (RScoped (LocatedA (Stmt (GhcPass p) (LocatedA (body (GhcPass p)))))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: RScoped (LocatedA (Stmt (GhcPass p) (LocatedA (body (GhcPass p))))) -> HieM [HieAST Type]
ToHie (RScoped (LocatedAn NoEpAnns (DerivStrategy GhcRn))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: RScoped (LocatedAn NoEpAnns (DerivStrategy GhcRn)) -> HieM [HieAST Type]
ToHie (RScoped (LocatedAn NoEpAnns (FamilyResultSig GhcRn))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: RScoped (LocatedAn NoEpAnns (FamilyResultSig GhcRn)) -> HieM [HieAST Type]
ToHie (RScoped (LocatedAn NoEpAnns (RuleBndr GhcRn))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: RScoped (LocatedAn NoEpAnns (RuleBndr GhcRn)) -> HieM [HieAST Type]
HiePass p => ToHie (SigContext (LocatedA (Sig (GhcPass p)))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: SigContext (LocatedA (Sig (GhcPass p))) -> HieM [HieAST Type]
ToHie (TScoped (LocatedA (HsSigType GhcRn))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: TScoped (LocatedA (HsSigType GhcRn)) -> HieM [HieAST Type]
ToHie (TScoped (FamEqn GhcRn (LocatedA (HsType GhcRn)))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: TScoped (FamEqn GhcRn (LocatedA (HsType GhcRn))) -> HieM [HieAST Type]
ToHie (TScoped (HsWildCardBndrs GhcRn (LocatedA (HsSigType GhcRn)))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: TScoped (HsWildCardBndrs GhcRn (LocatedA (HsSigType GhcRn))) -> HieM [HieAST Type]
ToHie (TScoped (HsWildCardBndrs GhcRn (LocatedA (HsType GhcRn)))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: TScoped (HsWildCardBndrs GhcRn (LocatedA (HsType GhcRn))) -> HieM [HieAST Type]
Data flag => ToHie (TVScoped (LocatedA (HsTyVarBndr flag GhcRn))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: TVScoped (LocatedA (HsTyVarBndr flag GhcRn)) -> HieM [HieAST Type]
ToHie (LocatedA HsWrapper) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA HsWrapper -> HieM [HieAST Type]
ToHie (LocatedA (FixitySig GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (FixitySig GhcRn) -> HieM [HieAST Type]
ToHie (LocatedA (AnnDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (AnnDecl GhcRn) -> HieM [HieAST Type]
ToHie (LocatedA (ClsInstDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (ClsInstDecl GhcRn) -> HieM [HieAST Type]
ToHie (LocatedA (ConDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (ConDecl GhcRn) -> HieM [HieAST Type]
ToHie (LocatedA (DataFamInstDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (DataFamInstDecl GhcRn) -> HieM [HieAST Type]
ToHie (LocatedA (DefaultDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (DefaultDecl GhcRn) -> HieM [HieAST Type]
ToHie (LocatedA (DerivDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (DerivDecl GhcRn) -> HieM [HieAST Type]
ToHie (LocatedA (DocDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (DocDecl GhcRn) -> HieM [HieAST Type]
ToHie (LocatedA (FamilyDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (FamilyDecl GhcRn) -> HieM [HieAST Type]
ToHie (LocatedA (ForeignDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (ForeignDecl GhcRn) -> HieM [HieAST Type]
ToHie (LocatedA (FunDep GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (FunDep GhcRn) -> HieM [HieAST Type]
ToHie (LocatedA (InstDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (InstDecl GhcRn) -> HieM [HieAST Type]
ToHie (LocatedA (RoleAnnotDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (RoleAnnotDecl GhcRn) -> HieM [HieAST Type]
ToHie (LocatedA (RuleDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (RuleDecl GhcRn) -> HieM [HieAST Type]
ToHie (LocatedA (RuleDecls GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (RuleDecls GhcRn) -> HieM [HieAST Type]
ToHie (LocatedA (SpliceDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (SpliceDecl GhcRn) -> HieM [HieAST Type]
ToHie (LocatedA (StandaloneKindSig GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (StandaloneKindSig GhcRn) -> HieM [HieAST Type]
ToHie (LocatedA (TyClDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (TyClDecl GhcRn) -> HieM [HieAST Type]
ToHie (LocatedA (TyFamInstDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (TyFamInstDecl GhcRn) -> HieM [HieAST Type]
ToHie (LocatedA (WarnDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (WarnDecl GhcRn) -> HieM [HieAST Type]
ToHie (LocatedA (WarnDecls GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (WarnDecls GhcRn) -> HieM [HieAST Type]
HiePass p => ToHie (LocatedA (HsCmd (GhcPass p))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (HsCmd (GhcPass p)) -> HieM [HieAST Type]
HiePass p => ToHie (LocatedA (HsExpr (GhcPass p))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (HsExpr (GhcPass p)) -> HieM [HieAST Type]
HiePass p => ToHie (LocatedA (HsUntypedSplice (GhcPass p))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (HsUntypedSplice (GhcPass p)) -> HieM [HieAST Type]
(HiePass p, Data (body (GhcPass p)), AnnoBody p body, ToHie (LocatedA (body (GhcPass p)))) => ToHie (LocatedA (Match (GhcPass p) (LocatedA (body (GhcPass p))))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (Match (GhcPass p) (LocatedA (body (GhcPass p)))) -> HieM [HieAST Type]
ToHie (LocatedA (ImportDecl GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (ImportDecl GhcRn) -> HieM [HieAST Type]
ToHie (LocatedA (ConDeclField GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (ConDeclField GhcRn) -> HieM [HieAST Type]
ToHie (LocatedA (HsType GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedA (HsType GhcRn) -> HieM [HieAST Type]
ToHie (LocatedC (DerivClauseTys GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedC (DerivClauseTys GhcRn) -> HieM [HieAST Type]
ToHie (LocatedC [LocatedA (HsType GhcRn)]) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedC [LocatedA (HsType GhcRn)] -> HieM [HieAST Type]
ToHie (LocatedL [LocatedA (ConDeclField GhcRn)]) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedL [LocatedA (ConDeclField GhcRn)] -> HieM [HieAST Type]
ToHie (LocatedP OverlapMode) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedP OverlapMode -> HieM [HieAST Type]
ToHie (Located [LocatedAn NoEpAnns (HsDerivingClause GhcRn)]) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: Located [LocatedAn NoEpAnns (HsDerivingClause GhcRn)] -> HieM [HieAST Type]
Outputable a => Outputable (SrcSpanAnn' a) |
Instance details Defined in GHC.Parser.Annotation Methods ppr :: SrcSpanAnn' a -> SDoc #
Eq a => Eq (SrcSpanAnn' a) |
Instance details Defined in GHC.Parser.Annotation Methods (==) :: SrcSpanAnn' a -> SrcSpanAnn' a -> Bool # (/=) :: SrcSpanAnn' a -> SrcSpanAnn' a -> Bool #
HasSrcSpan (SrcSpanAnn' ann) # |
Instance details Defined in Development.IDE.GHC.Compat.Core Methods getLoc :: SrcSpanAnn' ann -> SrcSpan #
ToHie (LocatedAn NoEpAnns (HsDerivingClause GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedAn NoEpAnns (HsDerivingClause GhcRn) -> HieM [HieAST Type]
ToHie (LocatedAn NoEpAnns (InjectivityAnn GhcRn)) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedAn NoEpAnns (InjectivityAnn GhcRn) -> HieM [HieAST Type]
(ToHie (LocatedA (body (GhcPass p))), HiePass p, AnnoBody p body) => ToHie (LocatedAn NoEpAnns (GRHS (GhcPass p) (LocatedA (body (GhcPass p))))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedAn NoEpAnns (GRHS (GhcPass p) (LocatedA (body (GhcPass p)))) -> HieM [HieAST Type]
HiePass p => ToHie (LocatedAn NoEpAnns (HsCmdTop (GhcPass p))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedAn NoEpAnns (HsCmdTop (GhcPass p)) -> HieM [HieAST Type]
ToHie (LocatedAn NoEpAnns HsIPName) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: LocatedAn NoEpAnns HsIPName -> HieM [HieAST Type]
(ToHie (LocatedA (body (GhcPass p))), HiePass p, AnnoBody p body) => ToHie (GRHSs (GhcPass p) (LocatedA (body (GhcPass p)))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: GRHSs (GhcPass p) (LocatedA (body (GhcPass p))) -> HieM [HieAST Type]
(HiePass p, AnnoBody p body, ToHie (LocatedA (body (GhcPass p)))) => ToHie (MatchGroup (GhcPass p) (LocatedA (body (GhcPass p)))) |
Instance details Defined in GHC.Iface.Ext.Ast Methods toHie :: MatchGroup (GhcPass p) (LocatedA (body (GhcPass p))) -> HieM [HieAST Type]
NamedThing (Located a) => NamedThing (LocatedAn an a) |
Instance details Defined in GHC.Parser.Annotation Methods getOccName :: LocatedAn an a -> OccName # getName :: LocatedAn an a -> Name #
(Outputable a, Outputable e) => Outputable (GenLocated (SrcSpanAnn' a) e) |
Instance details Defined in GHC.Parser.Annotation Methods ppr :: GenLocated (SrcSpanAnn' a) e -> SDoc #
(Outputable a, OutputableBndr e) => OutputableBndr (GenLocated (SrcSpanAnn' a) e) |
Instance details Defined in GHC.Parser.Annotation Methods pprBndr :: BindingSite -> GenLocated (SrcSpanAnn' a) e -> SDoc pprPrefixOcc :: GenLocated (SrcSpanAnn' a) e -> SDoc pprInfixOcc :: GenLocated (SrcSpanAnn' a) e -> SDoc bndrIsJoin_maybe :: GenLocated (SrcSpanAnn' a) e -> Maybe Int
HasSrcSpan (GenLocated (SrcSpanAnn' ann) a) # |
Instance details Defined in Development.IDE.GHC.Compat.Core Methods getLoc :: GenLocated (SrcSpanAnn' ann) a -> SrcSpan #
type Anno (LocatedA (IE (GhcPass p))) |
Instance details Defined in GHC.Hs.ImpExp type Anno (LocatedA (IE (GhcPass p))) = SrcSpanAnnA
type Anno (LocatedN Name) |
Instance details Defined in GHC.Hs.Binds type Anno (LocatedN Name) = SrcSpan
type Anno (LocatedN RdrName) |
Instance details Defined in GHC.Hs.Binds type Anno (LocatedN RdrName) = SrcSpan
type Anno (LocatedN Id) |
Instance details Defined in GHC.Hs.Binds type Anno (LocatedN Id) = SrcSpan
type Anno [LocatedA (Match (GhcPass p) (LocatedA (HsCmd (GhcPass p))))] |
Instance details Defined in GHC.Hs.Expr type Anno [LocatedA (Match (GhcPass p) (LocatedA (HsCmd (GhcPass p))))] = SrcSpanAnnL
type Anno [LocatedA (Match (GhcPass p) (LocatedA (HsExpr (GhcPass p))))] |
Instance details Defined in GHC.Hs.Expr type Anno [LocatedA (Match (GhcPass p) (LocatedA (HsExpr (GhcPass p))))] = SrcSpanAnnL
type Anno [LocatedA (Match GhcPs (LocatedA (PatBuilder GhcPs)))] |
Instance details Defined in GHC.Parser.PostProcess type Anno [LocatedA (Match GhcPs (LocatedA (PatBuilder GhcPs)))] = SrcSpanAnnL
type Anno [LocatedA (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (HsCmd (GhcPass pr))))] |
Instance details Defined in GHC.Hs.Expr type Anno [LocatedA (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (HsCmd (GhcPass pr))))] = SrcSpanAnnL
type Anno [LocatedA (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (HsCmd (GhcPass pr))))] |
Instance details Defined in GHC.Hs.Expr type Anno [LocatedA (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (HsCmd (GhcPass pr))))] = SrcSpanAnnL
type Anno [LocatedA (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (HsCmd (GhcPass pr))))] |
Instance details Defined in GHC.Hs.Expr type Anno [LocatedA (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (HsCmd (GhcPass pr))))] = SrcSpanAnnL
type Anno [LocatedA (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (HsExpr (GhcPass pr))))] |
Instance details Defined in GHC.Hs.Expr type Anno [LocatedA (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (HsExpr (GhcPass pr))))] = SrcSpanAnnL
type Anno [LocatedA (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (body (GhcPass pr))))] |
Instance details Defined in GHC.Hs.Expr type Anno [LocatedA (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (body (GhcPass pr))))] = SrcSpanAnnL
type Anno [LocatedA (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (body (GhcPass pr))))] |
Instance details Defined in GHC.Hs.Expr type Anno [LocatedA (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (body (GhcPass pr))))] = SrcSpanAnnL
type Anno [LocatedA (StmtLR GhcPs GhcPs (LocatedA (PatBuilder GhcPs)))] |
Instance details Defined in GHC.Parser.Types type Anno [LocatedA (StmtLR GhcPs GhcPs (LocatedA (PatBuilder GhcPs)))] = SrcSpanAnnL
type Anno [LocatedA (IE (GhcPass p))] |
Instance details Defined in GHC.Hs.ImpExp type Anno [LocatedA (IE (GhcPass p))] = SrcSpanAnnL
type Anno [LocatedA (ConDeclField (GhcPass _1))] |
Instance details Defined in GHC.Hs.Decls type Anno [LocatedA (ConDeclField (GhcPass _1))] = SrcSpanAnnL
type Anno [LocatedA (HsType (GhcPass p))] |
Instance details Defined in GHC.Hs.Type type Anno [LocatedA (HsType (GhcPass p))] = SrcSpanAnnC
type Anno [LocatedN Name] |
Instance details Defined in GHC.Hs.Binds type Anno [LocatedN Name] = SrcSpan
type Anno [LocatedN RdrName] |
Instance details Defined in GHC.Hs.Binds type Anno [LocatedN RdrName] = SrcSpan
type Anno [LocatedN Id] |
Instance details Defined in GHC.Hs.Binds type Anno [LocatedN Id] = SrcSpan
type Anno (FamEqn p (LocatedA (HsType p))) |
Instance details Defined in GHC.Hs.Decls type Anno (FamEqn p (LocatedA (HsType p))) = SrcSpanAnnA
type Anno (GRHS (GhcPass p) (LocatedA (HsCmd (GhcPass p)))) |
Instance details Defined in GHC.Hs.Expr type Anno (GRHS (GhcPass p) (LocatedA (HsCmd (GhcPass p)))) = SrcAnn NoEpAnns
type Anno (GRHS (GhcPass p) (LocatedA (HsExpr (GhcPass p)))) |
Instance details Defined in GHC.Hs.Expr type Anno (GRHS (GhcPass p) (LocatedA (HsExpr (GhcPass p)))) = SrcAnn NoEpAnns
type Anno (GRHS GhcPs (LocatedA (PatBuilder GhcPs))) |
Instance details Defined in GHC.Parser.PostProcess type Anno (GRHS GhcPs (LocatedA (PatBuilder GhcPs))) = SrcAnn NoEpAnns
type Anno (Match (GhcPass p) (LocatedA (HsCmd (GhcPass p)))) |
Instance details Defined in GHC.Hs.Expr type Anno (Match (GhcPass p) (LocatedA (HsCmd (GhcPass p)))) = SrcSpanAnnA
type Anno (Match (GhcPass p) (LocatedA (HsExpr (GhcPass p)))) |
Instance details Defined in GHC.Hs.Expr type Anno (Match (GhcPass p) (LocatedA (HsExpr (GhcPass p)))) = SrcSpanAnnA
type Anno (Match GhcPs (LocatedA (PatBuilder GhcPs))) |
Instance details Defined in GHC.Parser.PostProcess type Anno (Match GhcPs (LocatedA (PatBuilder GhcPs))) = SrcSpanAnnA
type Anno (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (body (GhcPass pr)))) |
Instance details Defined in GHC.Hs.Expr type Anno (StmtLR (GhcPass pl) (GhcPass pr) (LocatedA (body (GhcPass pr)))) = SrcSpanAnnA
type Anno (StmtLR GhcPs GhcPs (LocatedA (PatBuilder GhcPs))) |
Instance details Defined in GHC.Parser.PostProcess type Anno (StmtLR GhcPs GhcPs (LocatedA (PatBuilder GhcPs))) = SrcSpanAnnA
type Anno (StmtLR GhcRn GhcRn (LocatedA (body GhcRn))) |
Instance details Defined in GHC.Hs.Expr type Anno (StmtLR GhcRn GhcRn (LocatedA (body GhcRn))) = SrcSpanAnnA

getOptions :: ParserOpts -> StringBuffer -> FilePath -> (Messages PsMessage, [Located String]) #

checkProcessArgsResult :: MonadIO m => [Located String] -> m () #

getOptionsFromFile :: ParserOpts -> FilePath -> IO (Messages PsMessage, [Located String]) #

mkPrelImports :: ModuleName -> SrcSpan -> Bool -> [LImportDecl GhcPs] -> [LImportDecl GhcPs] #

toArgs :: RealSrcLoc -> String -> Either String [Located String] #

data Token #

Constructors

ITas |
ITcase |
ITclass |
ITdata |
ITdefault |
ITderiving |
ITdo (Maybe FastString) |
ITelse |
IThiding |
ITforeign |
ITif |
ITimport |
ITin |
ITinfix |
ITinfixl |
ITinfixr |
ITinstance |
ITlet |
ITmodule |
ITnewtype |
ITof |
ITqualified |
ITthen |
ITtype |
ITwhere |
ITforall IsUnicodeSyntax |
ITexport |
ITlabel |
ITdynamic |
ITsafe |
ITinterruptible |
ITunsafe |
ITstdcallconv |
ITccallconv |
ITcapiconv |
ITprimcallconv |
ITjavascriptcallconv |
ITmdo (Maybe FastString) |
ITfamily |
ITrole |
ITgroup |
ITby |
ITusing |
ITpattern |
ITstatic |
ITstock |
ITanyclass |
ITvia |
ITunit |
ITsignature |
ITdependency |
ITrequires |
ITinline_prag SourceText InlineSpec RuleMatchInfo |
ITopaque_prag SourceText |
ITspec_prag SourceText |
ITspec_inline_prag SourceText Bool |
ITsource_prag SourceText |
ITrules_prag SourceText |
ITwarning_prag SourceText |
ITdeprecated_prag SourceText |
ITline_prag SourceText |
ITcolumn_prag SourceText |
ITscc_prag SourceText |
ITunpack_prag SourceText |
ITnounpack_prag SourceText |
ITann_prag SourceText |
ITcomplete_prag SourceText |
ITclose_prag |
IToptions_prag String |
ITinclude_prag String |
ITlanguage_prag |
ITminimal_prag SourceText |
IToverlappable_prag SourceText |
IToverlapping_prag SourceText |
IToverlaps_prag SourceText |
ITincoherent_prag SourceText |
ITctype SourceText |
ITcomment_line_prag |
ITdotdot |
ITcolon |
ITdcolon IsUnicodeSyntax |
ITequal |
ITlam |
ITlcase |
ITlcases |
ITvbar |
ITlarrow IsUnicodeSyntax |
ITrarrow IsUnicodeSyntax |
ITdarrow IsUnicodeSyntax |
ITlolly |
ITminus |
ITprefixminus |
ITbang |
ITtilde |
ITat |
ITtypeApp |
ITpercent |
ITstar IsUnicodeSyntax |
ITdot |
ITproj Bool |
ITbiglam |
ITocurly |
ITccurly |
ITvocurly |
ITvccurly |
ITobrack |
ITopabrack |
ITcpabrack |
ITcbrack |
IToparen |
ITcparen |
IToubxparen |
ITcubxparen |
ITsemi |
ITcomma |
ITunderscore |
ITbackquote |
ITsimpleQuote |
ITvarid FastString |
ITconid FastString |
ITvarsym FastString |
ITconsym FastString |
ITqvarid (FastString, FastString) |
ITqconid (FastString, FastString) |
ITqvarsym (FastString, FastString) |
ITqconsym (FastString, FastString) |
ITdupipvarid FastString |
ITlabelvarid SourceText FastString |
ITchar SourceText Char |
ITstring SourceText FastString |
ITinteger IntegralLit |
ITrational FractionalLit |
ITprimchar SourceText Char |
ITprimstring SourceText ByteString |
ITprimint SourceText Integer |
ITprimword SourceText Integer |
ITprimfloat FractionalLit |
ITprimdouble FractionalLit |
ITopenExpQuote HasE IsUnicodeSyntax |
ITopenPatQuote |
ITopenDecQuote |
ITopenTypQuote |
ITcloseQuote IsUnicodeSyntax |
ITopenTExpQuote HasE |
ITcloseTExpQuote |
ITdollar |
ITdollardollar |
ITtyQuote |
ITquasiQuote (FastString, FastString, PsSpan) |
ITqQuasiQuote (FastString, FastString, FastString, PsSpan) |
ITproc |
ITrec |
IToparenbar IsUnicodeSyntax |
ITcparenbar IsUnicodeSyntax |
ITlarrowtail IsUnicodeSyntax |
ITrarrowtail IsUnicodeSyntax |
ITLarrowtail IsUnicodeSyntax |
ITRarrowtail IsUnicodeSyntax |
ITunknown String |
ITeof |
ITdocComment HsDocString PsSpan |
ITdocOptions String PsSpan |
ITlineComment String PsSpan |
ITblockComment String PsSpan |

#### Instances

Instances details

Show Token |
Instance details Defined in GHC.Parser.Lexer Methods showsPrec :: Int -> Token -> ShowS # show :: Token -> String # showList :: [Token] -> ShowS #
Outputable Token |
Instance details Defined in GHC.Parser.Lexer Methods ppr :: Token -> SDoc #

newtype P a #

Constructors

P |
Fields unP :: PState -> ParseResult a

#### Instances

Instances details

Applicative P |
Instance details Defined in GHC.Parser.Lexer Methods pure :: a -> P a # (<*>) :: P (a -> b) -> P a -> P b # liftA2 :: (a -> b -> c) -> P a -> P b -> P c # (*>) :: P a -> P b -> P b # (<*) :: P a -> P b -> P a #
Functor P |
Instance details Defined in GHC.Parser.Lexer Methods fmap :: (a -> b) -> P a -> P b # (<$) :: a -> P b -> P a #
Monad P |
Instance details Defined in GHC.Parser.Lexer Methods (>>=) :: P a -> (a -> P b) -> P b # (>>) :: P a -> P b -> P b # return :: a -> P a #
MonadP P |
Instance details Defined in GHC.Parser.Lexer Methods addError :: MsgEnvelope PsMessage -> P () # addWarning :: MsgEnvelope PsMessage -> P () # addFatalError :: MsgEnvelope PsMessage -> P a # getBit :: ExtBits -> P Bool # allocateCommentsP :: RealSrcSpan -> P EpAnnComments # allocatePriorCommentsP :: RealSrcSpan -> P EpAnnComments # allocateFinalCommentsP :: RealSrcSpan -> P EpAnnComments #

class Monad m => MonadP (m :: Type -> Type) where #

Methods

addError :: MsgEnvelope PsMessage -> m () #

addWarning :: MsgEnvelope PsMessage -> m () #

addFatalError :: MsgEnvelope PsMessage -> m a #

getBit :: ExtBits -> m Bool #

allocateCommentsP :: RealSrcSpan -> m EpAnnComments #

allocatePriorCommentsP :: RealSrcSpan -> m EpAnnComments #

allocateFinalCommentsP :: RealSrcSpan -> m EpAnnComments #

#### Instances

Instances details

MonadP P |
Instance details Defined in GHC.Parser.Lexer Methods addError :: MsgEnvelope PsMessage -> P () # addWarning :: MsgEnvelope PsMessage -> P () # addFatalError :: MsgEnvelope PsMessage -> P a # getBit :: ExtBits -> P Bool # allocateCommentsP :: RealSrcSpan -> P EpAnnComments # allocatePriorCommentsP :: RealSrcSpan -> P EpAnnComments # allocateFinalCommentsP :: RealSrcSpan -> P EpAnnComments #
MonadP PV |
Instance details Defined in GHC.Parser.PostProcess Methods addError :: MsgEnvelope PsMessage -> PV () # addWarning :: MsgEnvelope PsMessage -> PV () # addFatalError :: MsgEnvelope PsMessage -> PV a # getBit :: ExtBits -> PV Bool # allocateCommentsP :: RealSrcSpan -> PV EpAnnComments # allocatePriorCommentsP :: RealSrcSpan -> PV EpAnnComments # allocateFinalCommentsP :: RealSrcSpan -> PV EpAnnComments #

data ParseResult a :: TYPE ('SumRep '['TupleRep '[LiftedRep, LiftedRep], LiftedRep]) where #

Bundled Patterns

pattern PFailed :: PState -> ParseResult a |
pattern POk :: PState -> a -> ParseResult a |

data PState #

Constructors

PState |
Fields buffer :: StringBuffer options :: ParserOpts warnings :: Messages PsMessage errors :: Messages PsMessage tab_first :: Maybe RealSrcSpan tab_count :: !Word last_tk :: Maybe (PsLocated Token) prev_loc :: PsSpan prev_loc2 :: PsSpan last_loc :: PsSpan last_len :: !Int loc :: PsLoc context :: [LayoutContext] lex_state :: [Int] srcfiles :: [FastString] alr_pending_implicit_tokens :: [PsLocated Token] alr_next_token :: Maybe (PsLocated Token) alr_last_loc :: PsSpan alr_context :: [ALRContext] alr_expecting_ocurly :: Maybe ALRLayout alr_justClosedExplicitLetBlock :: Bool eof_pos :: Maybe (Pair RealSrcSpan RealSrcSpan) header_comments :: Maybe [LEpaComment] comment_q :: [LEpaComment] hdk_comments :: OrdList (PsLocated HdkComment)

data HdkComment #

Constructors

HdkCommentNext HsDocString |
HdkCommentPrev HsDocString |
HdkCommentNamed String HsDocString |
HdkCommentSection Int HsDocString |

#### Instances

Instances details

Show HdkComment |
Instance details Defined in GHC.Parser.Lexer Methods showsPrec :: Int -> HdkComment -> ShowS # show :: HdkComment -> String # showList :: [HdkComment] -> ShowS #

data ParserOpts #

Constructors

ParserOpts |
Fields pExtsBitmap :: !ExtsBitmap pDiagOpts :: !DiagOpts pSupportedExts :: [String]

data ExtBits #

Constructors

FfiBit |
InterruptibleFfiBit |
CApiFfiBit |
ArrowsBit |
ThBit |
ThQuotesBit |
IpBit |
OverloadedLabelsBit |
ExplicitForallBit |
BangPatBit |
PatternSynonymsBit |
HaddockBit |
MagicHashBit |
RecursiveDoBit |
QualifiedDoBit |
UnicodeSyntaxBit |
UnboxedParensBit |
DatatypeContextsBit |
MonadComprehensionsBit |
TransformComprehensionsBit |
QqBit |
RawTokenStreamBit |
AlternativeLayoutRuleBit |
ALRTransitionalBit |
RelaxedLayoutBit |
NondecreasingIndentationBit |
SafeHaskellBit |
TraditionalRecordSyntaxBit |
ExplicitNamespacesBit |
LambdaCaseBit |
BinaryLiteralsBit |
NegativeLiteralsBit |
HexFloatLiteralsBit |
StaticPointersBit |
NumericUnderscoresBit |
StarIsTypeBit |
BlockArgumentsBit |
NPlusKPatternsBit |
DoAndIfThenElseBit |
MultiWayIfBit |
GadtSyntaxBit |
ImportQualifiedPostBit |
LinearTypesBit |
NoLexicalNegationBit |
OverloadedRecordDotBit |
OverloadedRecordUpdateBit |
InRulePragBit |
InNestedCommentBit |
UsePosPragsBit |

#### Instances

Instances details

Enum ExtBits |
Instance details Defined in GHC.Parser.Lexer Methods succ :: ExtBits -> ExtBits pred :: ExtBits -> ExtBits toEnum :: Int -> ExtBits fromEnum :: ExtBits -> Int enumFrom :: ExtBits -> [ExtBits] enumFromThen :: ExtBits -> ExtBits -> [ExtBits] enumFromTo :: ExtBits -> ExtBits -> [ExtBits] enumFromThenTo :: ExtBits -> ExtBits -> ExtBits -> [ExtBits]

getPsErrorMessages :: PState -> Messages PsMessage #

lexTokenStream :: ParserOpts -> StringBuffer -> RealSrcLoc -> ParseResult [Located Token] #

getCommentsFor :: MonadP m => SrcSpan -> m EpAnnComments #

getEofPos :: P (Maybe (Pair RealSrcSpan RealSrcSpan)) #

getFinalCommentsFor :: MonadP m => SrcSpan -> m EpAnnComments #

getPriorCommentsFor :: MonadP m => SrcSpan -> m EpAnnComments #

getRealSrcLoc :: P RealSrcLoc #

lexer :: Bool -> (Located Token -> P a) -> P a #

popContext :: P () #

pushModuleContext :: P () #

srcParseFail :: P a #

disableHaddock :: ParserOpts -> ParserOpts #

initPragState :: ParserOpts -> StringBuffer -> RealSrcLoc -> PState #

activeContext :: P Bool #

addPsMessage :: SrcSpan -> PsMessage -> P () #

adjustChar :: Char -> Word8 #

allocateComments :: RealSrcSpan -> [LEpaComment] -> ([LEpaComment], [LEpaComment]) #

allocateFinalComments :: RealSrcSpan -> [LEpaComment] -> Maybe [LEpaComment] -> (Maybe [LEpaComment], [LEpaComment], [LEpaComment]) #

allocatePriorComments :: RealSrcSpan -> [LEpaComment] -> Maybe [LEpaComment] -> (Maybe [LEpaComment], [LEpaComment], [LEpaComment]) #

commentToAnnotation :: RealLocated Token -> LEpaComment #

failLocMsgP :: RealSrcLoc -> RealSrcLoc -> (SrcSpan -> MsgEnvelope PsMessage) -> P a #

failMsgP :: (SrcSpan -> MsgEnvelope PsMessage) -> P a #

getLexState :: P Int #

getPState :: P PState #

lexerDbg :: Bool -> (Located Token -> P a) -> P a #

mkParensEpAnn :: RealSrcSpan -> (AddEpAnn, AddEpAnn) #

mkParserOpts :: EnumSet Extension -> DiagOpts -> [String] -> Bool -> Bool -> Bool -> Bool -> ParserOpts #

nextIsEOF :: P Bool #

popLexState :: P Int #

pushLexState :: Int -> P () #

setLastToken :: PsSpan -> Int -> P () #

setSrcLoc :: RealSrcLoc -> P () #

warnopt :: WarningFlag -> ParserOpts -> Bool #

xset :: ExtBits -> ExtsBitmap -> ExtsBitmap #

xtest :: ExtBits -> ExtsBitmap -> Bool #

xunset :: ExtBits -> ExtsBitmap -> ExtsBitmap #

data CompileReason #

Constructors

MustCompile |
RecompBecause !RecompReason |

#### Instances

Instances details

Outputable CompileReason |
Instance details Defined in GHC.Iface.Recomp Methods ppr :: CompileReason -> SDoc #
Eq CompileReason |
Instance details Defined in GHC.Iface.Recomp Methods (==) :: CompileReason -> CompileReason -> Bool # (/=) :: CompileReason -> CompileReason -> Bool #

hsc_type_env_vars :: HscEnv -> KnotVars (IORef TypeEnv) #

hscUpdateHUG :: (HomeUnitGraph -> HomeUnitGraph) -> HscEnv -> HscEnv #

hscUpdateHPT :: (HomePackageTable -> HomePackageTable) -> HscEnv -> HscEnv #

hsc_HUG :: HscEnv -> HomeUnitGraph #

data GhcMessage where #

Constructors

GhcPsMessage :: PsMessage -> GhcMessage |
GhcTcRnMessage :: TcRnMessage -> GhcMessage |
GhcDsMessage :: DsMessage -> GhcMessage |
GhcDriverMessage :: DriverMessage -> GhcMessage |
GhcUnknownMessage :: UnknownDiagnostic -> GhcMessage |

#### Instances

Instances details

Generic GhcMessage |
Instance details Defined in GHC.Driver.Errors.Types Associated Types type Rep GhcMessage :: Type -> Type Methods from :: GhcMessage -> Rep GhcMessage x to :: Rep GhcMessage x -> GhcMessage
type Rep GhcMessage |
Instance details Defined in GHC.Driver.Errors.Types type Rep GhcMessage = D1 ('MetaData "GhcMessage" "GHC.Driver.Errors.Types" "ghc" 'False) ((C1 ('MetaCons "GhcPsMessage" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 PsMessage)) :+: C1 ('MetaCons "GhcTcRnMessage" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 TcRnMessage))) :+: (C1 ('MetaCons "GhcDsMessage" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 DsMessage)) :+: (C1 ('MetaCons "GhcDriverMessage" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 DriverMessage)) :+: C1 ('MetaCons "GhcUnknownMessage" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 UnknownDiagnostic)))))
type DiagnosticOpts GhcMessage |
Instance details Defined in GHC.Driver.Errors.Ppr type DiagnosticOpts GhcMessage = GhcMessageOpts

getKey :: Unique -> Int #

class (Typeable e, Show e) => Exception e where #

Minimal complete definition

Nothing

Methods

toException :: e -> SomeException #

fromException :: SomeException -> Maybe e #

displayException :: e -> String #

#### Instances

Instances details

Exception AesonException |
Instance details Defined in Data.Aeson.Types.Internal Methods toException :: AesonException -> SomeException # fromException :: SomeException -> Maybe AesonException # displayException :: AesonException -> String #
Exception AsyncCancelled |
Instance details Defined in Control.Concurrent.Async Methods toException :: AsyncCancelled -> SomeException # fromException :: SomeException -> Maybe AsyncCancelled # displayException :: AsyncCancelled -> String #
Exception ExceptionInLinkedThread |
Instance details Defined in Control.Concurrent.Async Methods toException :: ExceptionInLinkedThread -> SomeException # fromException :: SomeException -> Maybe ExceptionInLinkedThread # displayException :: ExceptionInLinkedThread -> String #
Exception NestedAtomically |
Instance details Defined in Control.Exception.Base Methods toException :: NestedAtomically -> SomeException # fromException :: SomeException -> Maybe NestedAtomically # displayException :: NestedAtomically -> String #
Exception NoMatchingContinuationPrompt |
Instance details Defined in Control.Exception.Base Methods toException :: NoMatchingContinuationPrompt -> SomeException # fromException :: SomeException -> Maybe NoMatchingContinuationPrompt # displayException :: NoMatchingContinuationPrompt -> String #
Exception NoMethodError |
Instance details Defined in Control.Exception.Base Methods toException :: NoMethodError -> SomeException # fromException :: SomeException -> Maybe NoMethodError # displayException :: NoMethodError -> String #
Exception NonTermination |
Instance details Defined in Control.Exception.Base Methods toException :: NonTermination -> SomeException # fromException :: SomeException -> Maybe NonTermination # displayException :: NonTermination -> String #
Exception PatternMatchFail |
Instance details Defined in Control.Exception.Base Methods toException :: PatternMatchFail -> SomeException # fromException :: SomeException -> Maybe PatternMatchFail # displayException :: PatternMatchFail -> String #
Exception RecConError |
Instance details Defined in Control.Exception.Base Methods toException :: RecConError -> SomeException # fromException :: SomeException -> Maybe RecConError # displayException :: RecConError -> String #
Exception RecSelError |
Instance details Defined in Control.Exception.Base Methods toException :: RecSelError -> SomeException # fromException :: SomeException -> Maybe RecSelError # displayException :: RecSelError -> String #
Exception RecUpdError |
Instance details Defined in Control.Exception.Base Methods toException :: RecUpdError -> SomeException # fromException :: SomeException -> Maybe RecUpdError # displayException :: RecUpdError -> String #
Exception TypeError |
Instance details Defined in Control.Exception.Base Methods toException :: TypeError -> SomeException # fromException :: SomeException -> Maybe TypeError # displayException :: TypeError -> String #
Exception Dynamic |
Instance details Defined in Data.Dynamic Methods toException :: Dynamic -> SomeException # fromException :: SomeException -> Maybe Dynamic # displayException :: Dynamic -> String #
Exception Void |
Instance details Defined in GHC.Exception.Type Methods toException :: Void -> SomeException # fromException :: SomeException -> Maybe Void # displayException :: Void -> String #
Exception ErrorCall |
Instance details Defined in GHC.Exception Methods toException :: ErrorCall -> SomeException # fromException :: SomeException -> Maybe ErrorCall # displayException :: ErrorCall -> String #
Exception ArithException |
Instance details Defined in GHC.Exception.Type Methods toException :: ArithException -> SomeException # fromException :: SomeException -> Maybe ArithException # displayException :: ArithException -> String #
Exception SomeException |
Instance details Defined in GHC.Exception.Type Methods toException :: SomeException -> SomeException # fromException :: SomeException -> Maybe SomeException # displayException :: SomeException -> String #
Exception AllocationLimitExceeded |
Instance details Defined in GHC.IO.Exception Methods toException :: AllocationLimitExceeded -> SomeException # fromException :: SomeException -> Maybe AllocationLimitExceeded # displayException :: AllocationLimitExceeded -> String #
Exception ArrayException |
Instance details Defined in GHC.IO.Exception Methods toException :: ArrayException -> SomeException # fromException :: SomeException -> Maybe ArrayException # displayException :: ArrayException -> String #
Exception AssertionFailed |
Instance details Defined in GHC.IO.Exception Methods toException :: AssertionFailed -> SomeException # fromException :: SomeException -> Maybe AssertionFailed # displayException :: AssertionFailed -> String #
Exception AsyncException |
Instance details Defined in GHC.IO.Exception Methods toException :: AsyncException -> SomeException # fromException :: SomeException -> Maybe AsyncException # displayException :: AsyncException -> String #
Exception BlockedIndefinitelyOnMVar |
Instance details Defined in GHC.IO.Exception Methods toException :: BlockedIndefinitelyOnMVar -> SomeException # fromException :: SomeException -> Maybe BlockedIndefinitelyOnMVar # displayException :: BlockedIndefinitelyOnMVar -> String #
Exception BlockedIndefinitelyOnSTM |
Instance details Defined in GHC.IO.Exception Methods toException :: BlockedIndefinitelyOnSTM -> SomeException # fromException :: SomeException -> Maybe BlockedIndefinitelyOnSTM # displayException :: BlockedIndefinitelyOnSTM -> String #
Exception CompactionFailed |
Instance details Defined in GHC.IO.Exception Methods toException :: CompactionFailed -> SomeException # fromException :: SomeException -> Maybe CompactionFailed # displayException :: CompactionFailed -> String #
Exception Deadlock |
Instance details Defined in GHC.IO.Exception Methods toException :: Deadlock -> SomeException # fromException :: SomeException -> Maybe Deadlock # displayException :: Deadlock -> String #
Exception ExitCode |
Instance details Defined in GHC.IO.Exception Methods toException :: ExitCode -> SomeException # fromException :: SomeException -> Maybe ExitCode # displayException :: ExitCode -> String #
Exception FixIOException |
Instance details Defined in GHC.IO.Exception Methods toException :: FixIOException -> SomeException # fromException :: SomeException -> Maybe FixIOException # displayException :: FixIOException -> String #
Exception IOException |
Instance details Defined in GHC.IO.Exception Methods toException :: IOException -> SomeException # fromException :: SomeException -> Maybe IOException # displayException :: IOException -> String #
Exception SomeAsyncException |
Instance details Defined in GHC.IO.Exception Methods toException :: SomeAsyncException -> SomeException # fromException :: SomeException -> Maybe SomeAsyncException # displayException :: SomeAsyncException -> String #
Exception SQLError |
Instance details Defined in Database.SQLite3 Methods toException :: SQLError -> SomeException # fromException :: SomeException -> Maybe SQLError # displayException :: SQLError -> String #
Exception Timeout |
Instance details Defined in System.Time.Extra Methods toException :: Timeout -> SomeException # fromException :: SomeException -> Maybe Timeout # displayException :: Timeout -> String #
Exception EncodingException |
Instance details Defined in System.OsPath.Encoding.Internal Methods toException :: EncodingException -> SomeException # fromException :: SomeException -> Maybe EncodingException # displayException :: EncodingException -> String #
Exception GhcApiError |
Instance details Defined in GHC Methods toException :: GhcApiError -> SomeException # fromException :: SomeException -> Maybe GhcApiError # displayException :: GhcApiError -> String #
Exception IOEnvFailure |
Instance details Defined in GHC.Data.IOEnv Methods toException :: IOEnvFailure -> SomeException # fromException :: SomeException -> Maybe IOEnvFailure # displayException :: IOEnvFailure -> String #
Exception SourceError |
Instance details Defined in GHC.Types.SourceError Methods toException :: SourceError -> SomeException # fromException :: SomeException -> Maybe SourceError # displayException :: SourceError -> String #
Exception GhcException |
Instance details Defined in GHC.Utils.Panic Methods toException :: GhcException -> SomeException # fromException :: SomeException -> Maybe GhcException # displayException :: GhcException -> String #
Exception PlainGhcException |
Instance details Defined in GHC.Utils.Panic.Plain Methods toException :: PlainGhcException -> SomeException # fromException :: SomeException -> Maybe PlainGhcException # displayException :: PlainGhcException -> String #
Exception BadDependency # |
Instance details Defined in Development.IDE.Types.Shake Methods toException :: BadDependency -> SomeException # fromException :: SomeException -> Maybe BadDependency # displayException :: BadDependency -> String #
Exception CradleError |
Instance details Defined in HIE.Bios.Types Methods toException :: CradleError -> SomeException # fromException :: SomeException -> Maybe CradleError # displayException :: CradleError -> String #
Exception HieDbException |
Instance details Defined in HieDb.Types Methods toException :: HieDbException -> SomeException # fromException :: SomeException -> Maybe HieDbException # displayException :: HieDbException -> String #
Exception GraphException |
Instance details Defined in Development.IDE.Graph.Internal.Types Methods toException :: GraphException -> SomeException # fromException :: SomeException -> Maybe GraphException # displayException :: GraphException -> String #
Exception StackException |
Instance details Defined in Development.IDE.Graph.Internal.Types Methods toException :: StackException -> SomeException # fromException :: SomeException -> Maybe StackException # displayException :: StackException -> String #
Exception ProgressCancelledException |
Instance details Defined in Language.LSP.Server.Core Methods toException :: ProgressCancelledException -> SomeException # fromException :: SomeException -> Maybe ProgressCancelledException # displayException :: ProgressCancelledException -> String #
Exception InvalidPosException |
Instance details Defined in Text.Megaparsec.Pos Methods toException :: InvalidPosException -> SomeException # fromException :: SomeException -> Maybe InvalidPosException # displayException :: InvalidPosException -> String #
Exception NullError |
Instance details Defined in Data.NonNull Methods toException :: NullError -> SomeException # fromException :: SomeException -> Maybe NullError # displayException :: NullError -> String #
Exception InvalidAccess |
Instance details Defined in Control.Monad.Trans.Resource.Internal Methods toException :: InvalidAccess -> SomeException # fromException :: SomeException -> Maybe InvalidAccess # displayException :: InvalidAccess -> String #
Exception ResourceCleanupException |
Instance details Defined in Control.Monad.Trans.Resource.Internal Methods toException :: ResourceCleanupException -> SomeException # fromException :: SomeException -> Maybe ResourceCleanupException # displayException :: ResourceCleanupException -> String #
Exception AsyncExceptionWrapper |
Instance details Defined in Control.Exception.Safe Methods toException :: AsyncExceptionWrapper -> SomeException # fromException :: SomeException -> Maybe AsyncExceptionWrapper # displayException :: AsyncExceptionWrapper -> String #
Exception StringException |
Instance details Defined in Control.Exception.Safe Methods toException :: StringException -> SomeException # fromException :: SomeException -> Maybe StringException # displayException :: StringException -> String #
Exception SyncExceptionWrapper |
Instance details Defined in Control.Exception.Safe Methods toException :: SyncExceptionWrapper -> SomeException # fromException :: SomeException -> Maybe SyncExceptionWrapper # displayException :: SyncExceptionWrapper -> String #
Exception FormatError |
Instance details Defined in Database.SQLite.Simple Methods toException :: FormatError -> SomeException # fromException :: SomeException -> Maybe FormatError # displayException :: FormatError -> String #
Exception ResultError |
Instance details Defined in Database.SQLite.Simple.FromField Methods toException :: ResultError -> SomeException # fromException :: SomeException -> Maybe ResultError # displayException :: ResultError -> String #
Exception ColumnOutOfBounds |
Instance details Defined in Database.SQLite.Simple.Internal Methods toException :: ColumnOutOfBounds -> SomeException # fromException :: SomeException -> Maybe ColumnOutOfBounds # displayException :: ColumnOutOfBounds -> String #
Exception UnicodeException |
Instance details Defined in Data.Text.Encoding.Error Methods toException :: UnicodeException -> SomeException # fromException :: SomeException -> Maybe UnicodeException # displayException :: UnicodeException -> String #
Exception StringException | Since: unliftio-0.1.0.0
Instance details Defined in UnliftIO.Exception Methods toException :: StringException -> SomeException # fromException :: SomeException -> Maybe StringException # displayException :: StringException -> String #
Exception ConcException |
Instance details Defined in UnliftIO.Internals.Async Methods toException :: ConcException -> SomeException # fromException :: SomeException -> Maybe ConcException # displayException :: ConcException -> String #
(Show s, Show (Token s), Show e, ShowErrorComponent e, VisualStream s, Typeable s, Typeable e) => Exception (ParseError s e) |
Instance details Defined in Text.Megaparsec.Error Methods toException :: ParseError s e -> SomeException # fromException :: SomeException -> Maybe (ParseError s e) # displayException :: ParseError s e -> String #
(Show s, Show (Token s), Show e, ShowErrorComponent e, VisualStream s, TraversableStream s, Typeable s, Typeable e) => Exception (ParseErrorBundle s e) |
Instance details Defined in Text.Megaparsec.Error Methods toException :: ParseErrorBundle s e -> SomeException # fromException :: SomeException -> Maybe (ParseErrorBundle s e) # displayException :: ParseErrorBundle s e -> String #

data GhcException #

Constructors

Signal Int |
UsageError String |
CmdLineError String |
Panic String |
PprPanic String SDoc |
Sorry String |
PprSorry String SDoc |
InstallationError String |
ProgramError String |
PprProgramError String SDoc |

#### Instances

Instances details

Exception GhcException |
Instance details Defined in GHC.Utils.Panic Methods toException :: GhcException -> SomeException # fromException :: SomeException -> Maybe GhcException # displayException :: GhcException -> String #
Show GhcException |
Instance details Defined in GHC.Utils.Panic Methods showsPrec :: Int -> GhcException -> ShowS # show :: GhcException -> String # showList :: [GhcException] -> ShowS #

try :: Exception e => IO a -> IO (Either e a) #

throwTo :: Exception e => ThreadId -> e -> IO () #

showException :: Exception e => e -> String #

panic :: HasCallStack => String -> a #

panicDoc :: String -> SDoc -> a #

pprPanic :: HasCallStack => String -> SDoc -> a #

handleGhcException :: ExceptionMonad m => (GhcException -> m a) -> m a -> m a #

showGhcException :: SDocContext -> GhcException -> ShowS #

throwGhcExceptionIO :: GhcException -> IO a #

withSignalHandlers :: ExceptionMonad m => m a -> m a #

assertPpr :: HasCallStack => Bool -> SDoc -> a -> a #

assertPprMaybe :: HasCallStack => Maybe SDoc -> a -> a #

massertPpr :: (HasCallStack, Applicative m) => Bool -> SDoc -> m () #

callStackDoc :: HasCallStack => SDoc #

throwGhcException :: GhcException -> a #

cmdLineError :: String -> a #

pgmError :: HasCallStack => String -> a #

tryMost :: IO a -> IO (Either SomeException a) #

sorry :: HasCallStack => String -> a #

assertPanic :: String -> Int -> a #

cmdLineErrorIO :: String -> IO a #

safeShowException :: Exception e => e -> IO String #

assertPprM :: (HasCallStack, Monad m) => m Bool -> SDoc -> m () #

assertPprPanic :: HasCallStack => SDoc -> a #

pgmErrorDoc :: String -> SDoc -> a #

prettyCallStackDoc :: CallStack -> SDoc #

showGhcExceptionUnsafe :: GhcException -> ShowS #

sorryDoc :: String -> SDoc -> a #

data Extension #

Constructors

OverlappingInstances |
UndecidableInstances |
IncoherentInstances |
UndecidableSuperClasses |
MonomorphismRestriction |
MonoLocalBinds |
DeepSubsumption |
RelaxedPolyRec |
ExtendedDefaultRules |
ForeignFunctionInterface |
UnliftedFFITypes |
InterruptibleFFI |
CApiFFI |
GHCForeignImportPrim |
JavaScriptFFI |
ParallelArrays |
Arrows |
TemplateHaskell |
TemplateHaskellQuotes |
QualifiedDo |
QuasiQuotes |
ImplicitParams |
ImplicitPrelude |
ScopedTypeVariables |
AllowAmbiguousTypes |
UnboxedTuples |
UnboxedSums |
UnliftedNewtypes |
UnliftedDatatypes |
BangPatterns |
TypeFamilies |
TypeFamilyDependencies |
TypeInType |
OverloadedStrings |
OverloadedLists |
NumDecimals |
DisambiguateRecordFields |
RecordWildCards |
NamedFieldPuns |
ViewPatterns |
GADTs |
GADTSyntax |
NPlusKPatterns |
DoAndIfThenElse |
BlockArguments |
RebindableSyntax |
ConstraintKinds |
PolyKinds |
DataKinds |
TypeData |
InstanceSigs |
ApplicativeDo |
LinearTypes |
StandaloneDeriving |
DeriveDataTypeable |
AutoDeriveTypeable |
DeriveFunctor |
DeriveTraversable |
DeriveFoldable |
DeriveGeneric |
DefaultSignatures |
DeriveAnyClass |
DeriveLift |
DerivingStrategies |
DerivingVia |
TypeSynonymInstances |
FlexibleContexts |
FlexibleInstances |
ConstrainedClassMethods |
MultiParamTypeClasses |
NullaryTypeClasses |
FunctionalDependencies |
UnicodeSyntax |
ExistentialQuantification |
MagicHash |
EmptyDataDecls |
KindSignatures |
RoleAnnotations |
ParallelListComp |
TransformListComp |
MonadComprehensions |
GeneralizedNewtypeDeriving |
RecursiveDo |
PostfixOperators |
TupleSections |
PatternGuards |
LiberalTypeSynonyms |
RankNTypes |
ImpredicativeTypes |
TypeOperators |
ExplicitNamespaces |
PackageImports |
ExplicitForAll |
AlternativeLayoutRule |
AlternativeLayoutRuleTransitional |
DatatypeContexts |
NondecreasingIndentation |
RelaxedLayout |
TraditionalRecordSyntax |
LambdaCase |
MultiWayIf |
BinaryLiterals |
NegativeLiterals |
HexFloatLiterals |
DuplicateRecordFields |
OverloadedLabels |
EmptyCase |
PatternSynonyms |
PartialTypeSignatures |
NamedWildCards |
StaticPointers |
TypeApplications |
Strict |
StrictData |
EmptyDataDeriving |
NumericUnderscores |
QuantifiedConstraints |
StarIsType |
ImportQualifiedPost |
CUSKs |
StandaloneKindSignatures |
LexicalNegation |
FieldSelectors |
OverloadedRecordDot |
OverloadedRecordUpdate |

#### Instances

Instances details

Bounded Extension |
Instance details Defined in GHC.LanguageExtensions.Type Methods minBound :: Extension maxBound :: Extension
Enum Extension |
Instance details Defined in GHC.LanguageExtensions.Type Methods succ :: Extension -> Extension pred :: Extension -> Extension toEnum :: Int -> Extension fromEnum :: Extension -> Int enumFrom :: Extension -> [Extension] enumFromThen :: Extension -> Extension -> [Extension] enumFromTo :: Extension -> Extension -> [Extension] enumFromThenTo :: Extension -> Extension -> Extension -> [Extension]
Generic Extension |
Instance details Defined in GHC.LanguageExtensions.Type Associated Types type Rep Extension :: Type -> Type Methods from :: Extension -> Rep Extension x to :: Rep Extension x -> Extension
Show Extension |
Instance details Defined in GHC.LanguageExtensions.Type Methods showsPrec :: Int -> Extension -> ShowS # show :: Extension -> String # showList :: [Extension] -> ShowS #
NFData Extension # |
Instance details Defined in Development.IDE.GHC.Orphans Methods rnf :: Extension -> () #
Outputable Extension |
Instance details Defined in GHC.Utils.Outputable Methods ppr :: Extension -> SDoc #
Eq Extension |
Instance details Defined in GHC.LanguageExtensions.Type Methods (==) :: Extension -> Extension -> Bool # (/=) :: Extension -> Extension -> Bool #
Ord Extension |
Instance details Defined in GHC.LanguageExtensions.Type Methods compare :: Extension -> Extension -> Ordering (<) :: Extension -> Extension -> Bool (<=) :: Extension -> Extension -> Bool (>) :: Extension -> Extension -> Bool (>=) :: Extension -> Extension -> Bool max :: Extension -> Extension -> Extension min :: Extension -> Extension -> Extension
type Rep Extension |
Instance details Defined in GHC.LanguageExtensions.Type type Rep Extension = D1 ('MetaData "Extension" "GHC.LanguageExtensions.Type" "ghc-boot-th-9.6.3" 'False) ((((((C1 ('MetaCons "Cpp" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "OverlappingInstances" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "UndecidableInstances" 'PrefixI 'False) (U1 :: Type -> Type))) :+: ((C1 ('MetaCons "IncoherentInstances" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "UndecidableSuperClasses" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "MonomorphismRestriction" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "MonoLocalBinds" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: (((C1 ('MetaCons "DeepSubsumption" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "RelaxedPolyRec" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "ExtendedDefaultRules" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "ForeignFunctionInterface" 'PrefixI 'False) (U1 :: Type -> Type))) :+: ((C1 ('MetaCons "UnliftedFFITypes" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "InterruptibleFFI" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "CApiFFI" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "GHCForeignImportPrim" 'PrefixI 'False) (U1 :: Type -> Type))))) :+: ((((C1 ('MetaCons "JavaScriptFFI" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "ParallelArrays" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "Arrows" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "TemplateHaskell" 'PrefixI 'False) (U1 :: Type -> Type))) :+: ((C1 ('MetaCons "TemplateHaskellQuotes" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "QualifiedDo" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "QuasiQuotes" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "ImplicitParams" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: (((C1 ('MetaCons "ImplicitPrelude" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "ScopedTypeVariables" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "AllowAmbiguousTypes" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "UnboxedTuples" 'PrefixI 'False) (U1 :: Type -> Type))) :+: ((C1 ('MetaCons "UnboxedSums" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "UnliftedNewtypes" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "UnliftedDatatypes" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "BangPatterns" 'PrefixI 'False) (U1 :: Type -> Type)))))) :+: (((((C1 ('MetaCons "TypeFamilies" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "TypeFamilyDependencies" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "TypeInType" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "OverloadedStrings" 'PrefixI 'False) (U1 :: Type -> Type))) :+: ((C1 ('MetaCons "OverloadedLists" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "NumDecimals" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "DisambiguateRecordFields" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "RecordWildCards" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: (((C1 ('MetaCons "NamedFieldPuns" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "ViewPatterns" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "GADTs" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "GADTSyntax" 'PrefixI 'False) (U1 :: Type -> Type))) :+: ((C1 ('MetaCons "NPlusKPatterns" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "DoAndIfThenElse" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "BlockArguments" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "RebindableSyntax" 'PrefixI 'False) (U1 :: Type -> Type))))) :+: ((((C1 ('MetaCons "ConstraintKinds" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "PolyKinds" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "DataKinds" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "TypeData" 'PrefixI 'False) (U1 :: Type -> Type))) :+: ((C1 ('MetaCons "InstanceSigs" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "ApplicativeDo" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "LinearTypes" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "StandaloneDeriving" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: (((C1 ('MetaCons "DeriveDataTypeable" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "AutoDeriveTypeable" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "DeriveFunctor" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "DeriveTraversable" 'PrefixI 'False) (U1 :: Type -> Type))) :+: ((C1 ('MetaCons "DeriveFoldable" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "DeriveGeneric" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "DefaultSignatures" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "DeriveAnyClass" 'PrefixI 'False) (U1 :: Type -> Type))))))) :+: (((((C1 ('MetaCons "DeriveLift" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "DerivingStrategies" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "DerivingVia" 'PrefixI 'False) (U1 :: Type -> Type))) :+: ((C1 ('MetaCons "TypeSynonymInstances" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "FlexibleContexts" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "FlexibleInstances" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "ConstrainedClassMethods" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: (((C1 ('MetaCons "MultiParamTypeClasses" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "NullaryTypeClasses" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "FunctionalDependencies" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "UnicodeSyntax" 'PrefixI 'False) (U1 :: Type -> Type))) :+: ((C1 ('MetaCons "ExistentialQuantification" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "MagicHash" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "EmptyDataDecls" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "KindSignatures" 'PrefixI 'False) (U1 :: Type -> Type))))) :+: ((((C1 ('MetaCons "RoleAnnotations" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "ParallelListComp" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "TransformListComp" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "MonadComprehensions" 'PrefixI 'False) (U1 :: Type -> Type))) :+: ((C1 ('MetaCons "GeneralizedNewtypeDeriving" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "RecursiveDo" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "PostfixOperators" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "TupleSections" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: (((C1 ('MetaCons "PatternGuards" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "LiberalTypeSynonyms" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "RankNTypes" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "ImpredicativeTypes" 'PrefixI 'False) (U1 :: Type -> Type))) :+: ((C1 ('MetaCons "TypeOperators" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "ExplicitNamespaces" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "PackageImports" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "ExplicitForAll" 'PrefixI 'False) (U1 :: Type -> Type)))))) :+: (((((C1 ('MetaCons "AlternativeLayoutRule" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "AlternativeLayoutRuleTransitional" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "DatatypeContexts" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "NondecreasingIndentation" 'PrefixI 'False) (U1 :: Type -> Type))) :+: ((C1 ('MetaCons "RelaxedLayout" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "TraditionalRecordSyntax" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "LambdaCase" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "MultiWayIf" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: (((C1 ('MetaCons "BinaryLiterals" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "NegativeLiterals" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "HexFloatLiterals" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "DuplicateRecordFields" 'PrefixI 'False) (U1 :: Type -> Type))) :+: ((C1 ('MetaCons "OverloadedLabels" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "EmptyCase" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "PatternSynonyms" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "PartialTypeSignatures" 'PrefixI 'False) (U1 :: Type -> Type))))) :+: ((((C1 ('MetaCons "NamedWildCards" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "StaticPointers" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "TypeApplications" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Strict" 'PrefixI 'False) (U1 :: Type -> Type))) :+: ((C1 ('MetaCons "StrictData" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "EmptyDataDeriving" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "NumericUnderscores" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "QuantifiedConstraints" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: (((C1 ('MetaCons "StarIsType" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "ImportQualifiedPost" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "CUSKs" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "StandaloneKindSignatures" 'PrefixI 'False) (U1 :: Type -> Type))) :+: ((C1 ('MetaCons "LexicalNegation" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "FieldSelectors" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "OverloadedRecordDot" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "OverloadedRecordUpdate" 'PrefixI 'False) (U1 :: Type -> Type))))))))

data UniqFM key ele #

#### Instances

Instances details

Functor (UniqFM key) |
Instance details Defined in GHC.Types.Unique.FM Methods fmap :: (a -> b) -> UniqFM key a -> UniqFM key b # (<$) :: a -> UniqFM key b -> UniqFM key a #
(Data key, Data ele) => Data (UniqFM key ele) |
Instance details Defined in GHC.Types.Unique.FM Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> UniqFM key ele -> c (UniqFM key ele) gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (UniqFM key ele) toConstr :: UniqFM key ele -> Constr dataTypeOf :: UniqFM key ele -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (UniqFM key ele)) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (UniqFM key ele)) gmapT :: (forall b. Data b => b -> b) -> UniqFM key ele -> UniqFM key ele gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> UniqFM key ele -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> UniqFM key ele -> r gmapQ :: (forall d. Data d => d -> u) -> UniqFM key ele -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> UniqFM key ele -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> UniqFM key ele -> m (UniqFM key ele) gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> UniqFM key ele -> m (UniqFM key ele) gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> UniqFM key ele -> m (UniqFM key ele)
Monoid (UniqFM key a) |
Instance details Defined in GHC.Types.Unique.FM Methods mempty :: UniqFM key a # mappend :: UniqFM key a -> UniqFM key a -> UniqFM key a # mconcat :: [UniqFM key a] -> UniqFM key a #
Semigroup (UniqFM key a) |
Instance details Defined in GHC.Types.Unique.FM Methods (<>) :: UniqFM key a -> UniqFM key a -> UniqFM key a # sconcat :: NonEmpty (UniqFM key a) -> UniqFM key a # stimes :: Integral b => b -> UniqFM key a -> UniqFM key a #
NFData (UniqFM Name [Name]) # |
Instance details Defined in Development.IDE.GHC.Orphans Methods rnf :: UniqFM Name [Name] -> () #
Outputable a => Outputable (UniqFM key a) |
Instance details Defined in GHC.Types.Unique.FM Methods ppr :: UniqFM key a -> SDoc #
Eq ele => Eq (UniqFM key ele) |
Instance details Defined in GHC.Types.Unique.FM Methods (==) :: UniqFM key ele -> UniqFM key ele -> Bool # (/=) :: UniqFM key ele -> UniqFM key ele -> Bool #

mkCgInteractiveGuts :: CgGuts -> CgInteractiveGuts #

justBytecode :: Linkable -> HomeModLinkable #

justObjects :: Linkable -> HomeModLinkable #

emptyHomeModInfoLinkable :: HomeModLinkable #

homeModInfoByteCode :: HomeModInfo -> Maybe Linkable #

homeModInfoObject :: HomeModInfo -> Maybe Linkable #

groupOrigin :: MatchGroup p body -> XMG p body #