{-# LANGUAGE FlexibleContexts, TypeFamilies #-} module Language.Haskell.Tools.Refactor.Builtin ( builtinRefactorings ) where import Language.Haskell.Tools.Refactor (RefactoringChoice) import Language.Haskell.Tools.Refactor.Builtin.ExtractBinding (extractBindingRefactoring) import Language.Haskell.Tools.Refactor.Builtin.FloatOut (floatOutRefactoring) import Language.Haskell.Tools.Refactor.Builtin.GenerateExports (generateExportsRefactoring) import Language.Haskell.Tools.Refactor.Builtin.GenerateTypeSignature (generateTypeSignatureRefactoring) import Language.Haskell.Tools.Refactor.Builtin.InlineBinding (inlineBindingRefactoring) import Language.Haskell.Tools.Refactor.Builtin.OrganizeExtensions (organizeExtensionsRefactoring, projectOrganizeExtensionsRefactoring) import Language.Haskell.Tools.Refactor.Builtin.OrganizeImports (organizeImportsRefactoring, projectOrganizeImportsRefactoring) import Language.Haskell.Tools.Refactor.Builtin.RenameDefinition (renameDefinitionRefactoring) builtinRefactorings :: [RefactoringChoice] builtinRefactorings = [ organizeImportsRefactoring , projectOrganizeImportsRefactoring , inlineBindingRefactoring , generateTypeSignatureRefactoring , renameDefinitionRefactoring , generateExportsRefactoring , floatOutRefactoring , extractBindingRefactoring , organizeExtensionsRefactoring , projectOrganizeExtensionsRefactoring ]