Q?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`a None$/DIR[CDifferent classes of definitions that have different kind of names..Normal value definitions: functions, variablesData constructors "Functions with operator-like names%Constructors with operator-like names)Type definitions with operator-like namesThe refactoring monad 0Input and output information for the refactoring %The information a refactoring can useAPerforms the given refactoring, transforming it into a Ghc actionOAdds the imports that bring names into scope that are needed by the refactoringhCreate a name that references the definition. Generates an import if the definition is not yet imported.2Reference the name by the shortest suitable import.Get which category does a given name belong to=Check if a given name is valid for a given kind of definition%  !"#$ % $#"!      !"#$None$:OTf5BAll expressions that are bound stronger than function application.7BGets the values that have to be passed to the extracted definition95Generates the expression that calls the local binding:7Generates the local binding for the selected expression./0123456789:;./0123456789:;./0123456789:;./0123456789:;NoneT[\<=bc<==<<=bcNoneL>lCreates an export list that imports standalone top-level definitions with all of their contained definitions?Get all the top-level definitions with flags that mark if they can contain other top-level definitions (classes and data declarations).@Get all the standalone top level definitions (their GHC unique names) in a module. You could also do getting all the names with a biplate reference and select the top-level ones, but this is more efficient.A"Create the export for a give name.>?@A>?@A>?@A>?@ANone$:OTC?Perform the refactoring on either local or top-level definitiond7Generates the source-level type for a GHC internal typee9Check whether the definition already has a type signature fgBCBAccess for a top-level definition if it is the selected definitionCAccess for a definition list if it contains the selected definitionISelector for either local or top-level declaration in the definition listhidejBCCB fgBChidejNone /69:;<=DQRklmnopqrstuvwxyz{|} klmnopqrstuvklmnnopqrstuvwxyz{|} None/59:;<=j~~j~ None$/69:;<=DQRT[+           None/59:;<=i !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{i !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{ None/9;|}~|}~NoneT['Sorts the imports in alphabetical order5Modify an import to only import names that are used.@Narrows the import specification (explicitely imported elements)DDDDNone/5T[\YShould be only used for testingEFGHIJKLMNOPQRSTUVWXYZEGHJKFILMNOPQRSTUVWXYZMLEFGHIJKNOPQRSTUVWXYZEFGHIJKLMNOPQRSTUVWXYZ  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnop9qrstuvwxyz{|}~                                        ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~                           4haskell-tools-refactor-0.1.2.0-B426mjhlwuDI5ZI1qFKv9,Language.Haskell.Tools.Refactor.RefactorBase.Language.Haskell.Tools.Refactor.ExtractBinding0Language.Haskell.Tools.Refactor.RenameDefinition/Language.Haskell.Tools.Refactor.GenerateExports5Language.Haskell.Tools.Refactor.GenerateTypeSignature/Language.Haskell.Tools.Refactor.OrganizeImportsLanguage.Haskell.Tools.Refactor*Language.Haskell.Tools.Refactor.RangeDebug4Language.Haskell.Tools.Refactor.RangeDebug.Instances(Language.Haskell.Tools.Refactor.ASTDebug2Language.Haskell.Tools.Refactor.ASTDebug.Instances+Language.Haskell.Tools.Refactor.DebugGhcAST NameClassVariableCtor ValueOperatorDataCtorOperatorSynonymOperatorRefactoredModule STWithNamesRefactor RefactorT fromRefactorT RefactorCtx refModuleName refCtxImports runRefactoraddGeneratedImports refactErrorregisteredNamesFromPreludeotherNamesFromPrelude qualifiedName referenceNamereferenceOperatorreferenceName' referenceBy classifyName nameValid isIdStartCharisOperatorChar$fMonadTransRefactorT$fExceptionMonadExceptT$fGhcMonadExceptT$fExceptionMonadReaderT$fGhcMonadReaderT$fExceptionMonadWriterT$fGhcMonadWriterT$fFunctorRefactorT$fApplicativeRefactorT$fMonadRefactorT$fMonadReaderRefactorT$fMonadWriterRefactorT$fMonadIORefactorT$fHasDynFlagsRefactorT$fExceptionMonadRefactorT$fGhcMonadRefactorTSTWithIdextractBinding'extractBinding isConflictingextractThatBindaddLocalBindinginsertLocalBindisParenLikeExpr doExtractgetExternalBindsactualContainingExpr generateCall generateBindisValidBindingNamerenameDefinition'renameDefinitiongenerateExports getTopLevelsgetTopLevelDeclName createExportsgenerateTypeSignature'generateTypeSignatureorganizeImportsRefactorCommand NoRefactorOrganizeImportsGenerateExportsGenerateSignatureRenameDefinitionExtractBindingTemplateWithTypesTemplateWithNamesperformCommand readCommand readSrcSpan readSrcLoconlineRefactor onlineASTViewperformRefactorastView loadModule parseTyped parseRenamed demoRefactor printSemaInfo$fShowRefactorCommand$fGenericSpanInfo$fGenericSourceTemplate$fGenericSemanticInfo$fGenericRangeTemplate$fGenericNodeInfo$fGenericSrcSpan conflicts sameNamespacegenerateTypeFortypeSignatureAlreadyExist RefactorId genTypeSig generateTSForgetBindingName GTreeDebug gTreeDebug TreeDebug treeDebug' rangeDebugshortShowSpanInfo shortShowSpan shortShowLoc templateDebugshortShowRangeTemplatesourceTemplateDebugshortShowSourceTemplate$fGTreeDebugM1a$fGTreeDebugK1a$fGTreeDebugK1a0$fGTreeDebug:*:a$fGTreeDebug:+:a$fGTreeDebugU1a$fGTreeDebugV1a identLine$fTreeDebugPhaseInverta$fTreeDebugPhaseNumbera$fTreeDebugPhaseControla$fTreeDebugLineNumbera$fTreeDebugPrecedencea$fTreeDebugAssoca$fTreeDebugConlikeAnnota$fTreeDebugSafetya$fTreeDebugArrowAppla$fTreeDebugCallConva$fTreeDebugOverlapPragmaa$fTreeDebugTypeKeyworda$fTreeDebugDoKinda $fTreeDebugDataOrNewtypeKeyworda$fTreeDebugStringNodea$fTreeDebugUnqualNamea$fTreeDebugSimpleNamea$fTreeDebugNamea$fTreeDebugOperatora$fTreeDebugPromoteda$fTreeDebugLiterala$fTreeDebugMatchLhsa$fTreeDebugLanguageExtensiona$fTreeDebugCmda$fTreeDebugRolea $fTreeDebugPatternTypeSignaturea$fTreeDebugPatSynWherea$fTreeDebugPatSynLhsa$fTreeDebugPatSynRhsa$fTreeDebugPatternSynonyma$fTreeDebugGuardedCaseRhs'a$fTreeDebugCaseRhs'a$fTreeDebugInjectivityAnna$fTreeDebugTypeFamilySpeca$fTreeDebugTypeFamilya$fTreeDebugTupSecElema$fTreeDebugListCompBodya$fTreeDebugTypeSignaturea$fTreeDebugFixitySignaturea$fTreeDebugLocalBindsa$fTreeDebugLocalBinda$fTreeDebugRhsGuarda$fTreeDebugQuasiQuotea$fTreeDebugNumbera$fTreeDebugSourceRangea$fTreeDebugExprPragmaa$fTreeDebugMinimalFormulaa$fTreeDebugAnnotationSubjecta$fTreeDebugRulea$fTreeDebugTopLevelPragmaa$fTreeDebugBracketa$fTreeDebugFieldUpdatea$fTreeDebugGuardedRhsa$fTreeDebugRhsa$fTreeDebugAlt'a$fTreeDebugMatcha$fTreeDebugQQStringa$fTreeDebugSplicea$fTreeDebugPatternFielda$fTreeDebugPatterna$fTreeDebugValueBinda$fTreeDebugCompStmta$fTreeDebugStmt'a$fTreeDebugExpra$fTreeDebugAssertiona$fTreeDebugContexta$fTreeDebugKinda$fTreeDebugTypea$fTreeDebugTyVara$fTreeDebugKindConstrainta$fTreeDebugTypeEqna$fTreeDebugInstanceHeada$fTreeDebugInstanceRulea$fTreeDebugDerivinga$fTreeDebugFieldDecla$fTreeDebugConDecla$fTreeDebugFunDepa$fTreeDebugFunDepsa$fTreeDebugGadtFielda$fTreeDebugGadtConTypea$fTreeDebugGadtConDecla$fTreeDebugInstBodyDecla$fTreeDebugInstBodya$fTreeDebugDeclHeada$fTreeDebugClassElementa$fTreeDebugClassBodya$fTreeDebugDecla$fTreeDebugImportRenaminga$fTreeDebugTypeNamespacea$fTreeDebugImportSafea$fTreeDebugImportSourcea$fTreeDebugImportQualifieda$fTreeDebugImportSpeca$fTreeDebugImportDecla$fTreeDebugFilePragmaa$fTreeDebugModulePragmaa$fTreeDebugSubSpeca$fTreeDebugIESpeca$fTreeDebugExportSpeca$fTreeDebugExportSpecLista$fTreeDebugModuleHeada$fTreeDebugModulea$fTreeDebugAnnMaybea$fTreeDebugAnnLista$fTreeDebugAnna TreeDebugNode _nodeName _nodeInfo _children DebugNodeTreeNode SimpleNode _nodeLabel _nodeSubtree _nodeValue nodeLabel nodeSubtree nodeValue GAstDebug gAstDebugASTDebug astDebug'InspectableNameinspect AssocData assocNametoAssocchildrennodeInfonodeNameastDebugastDebugToJsonastDebugElemJson inspectScope$fGAstDebugM1a$fGAstDebugM1a0$fGAstDebugM1a1$fGAstDebugK1a$fGAstDebugK1a0$fGAstDebug:*:a$fGAstDebug:+:a$fGAstDebugU1a$fGAstDebugV1a$fInspectableNameVar$fInspectableNameRdrName$fInspectableNameName$fAssocDataSemanticInfo$fASTDebugPhaseInverta$fASTDebugPhaseNumbera$fASTDebugPhaseControla$fASTDebugLineNumbera$fASTDebugPrecedencea$fASTDebugAssoca$fASTDebugConlikeAnnota$fASTDebugSafetya$fASTDebugArrowAppla$fASTDebugCallConva$fASTDebugOverlapPragmaa$fASTDebugTypeKeyworda$fASTDebugDoKinda$fASTDebugDataOrNewtypeKeyworda$fASTDebugStringNodea$fASTDebugUnqualNamea$fASTDebugSimpleNamea$fASTDebugNamea$fASTDebugOperatora$fASTDebugPromoteda$fASTDebugLiterala$fASTDebugMatchLhsa$fASTDebugLanguageExtensiona$fASTDebugCmda$fASTDebugRolea$fASTDebugPatternTypeSignaturea$fASTDebugPatSynWherea$fASTDebugPatSynLhsa$fASTDebugPatSynRhsa$fASTDebugPatternSynonyma$fASTDebugGuardedCaseRhs'a$fASTDebugCaseRhs'a$fASTDebugInjectivityAnna$fASTDebugTypeFamilySpeca$fASTDebugTypeFamilya$fASTDebugTupSecElema$fASTDebugListCompBodya$fASTDebugTypeSignaturea$fASTDebugFixitySignaturea$fASTDebugLocalBindsa$fASTDebugLocalBinda$fASTDebugRhsGuarda$fASTDebugQuasiQuotea$fASTDebugNumbera$fASTDebugSourceRangea$fASTDebugExprPragmaa$fASTDebugMinimalFormulaa$fASTDebugAnnotationSubjecta$fASTDebugRulea$fASTDebugTopLevelPragmaa$fASTDebugBracketa$fASTDebugFieldUpdatea$fASTDebugGuardedRhsa$fASTDebugRhsa$fASTDebugAlt'a$fASTDebugMatcha$fASTDebugQQStringa$fASTDebugSplicea$fASTDebugPatternFielda$fASTDebugPatterna$fASTDebugValueBinda$fASTDebugCompStmta$fASTDebugStmt'a$fASTDebugExpra$fASTDebugAssertiona$fASTDebugContexta$fASTDebugKinda$fASTDebugTypea$fASTDebugTyVara$fASTDebugKindConstrainta$fASTDebugTypeEqna$fASTDebugInstanceHeada$fASTDebugInstanceRulea$fASTDebugDerivinga$fASTDebugFieldDecla$fASTDebugConDecla$fASTDebugFunDepa$fASTDebugFunDepsa$fASTDebugGadtFielda$fASTDebugGadtConTypea$fASTDebugGadtConDecla$fASTDebugInstBodyDecla$fASTDebugInstBodya$fASTDebugDeclHeada$fASTDebugClassElementa$fASTDebugClassBodya$fASTDebugDecla$fASTDebugImportRenaminga$fASTDebugTypeNamespacea$fASTDebugImportSafea$fASTDebugImportSourcea$fASTDebugImportQualifieda$fASTDebugImportSpeca$fASTDebugImportDecla$fASTDebugFilePragmaa$fASTDebugModulePragmaa$fASTDebugSubSpeca$fASTDebugIESpeca$fASTDebugExportSpeca$fASTDebugExportSpecLista$fASTDebugModuleHeada$fASTDebugModulea$fASTDebugAnnMaybea$fASTDebugAnnLista$fASTDebugAnna $fShowBag$fShowHsIPBinds $fShowTickish $fShowUniqFM$fShowCoercion $fShowClass$fShowHsWrapper$fShowTcEvBinds $fShowPatSyn $fShowDataCon $fShowVar $fShowHsTyLit $fShowName $fShowUnitId $fShowOccName $fShowType $fShowClsInst $fShowTyCon$fShowModuleName$fShowUnboundVar$fShowGenLocated sortImports narrowImportsnarrowImportSpecs narrowImportnarrowImportSubspecs