module Language.Haskell.Refact.API
(
ParseResult
, VerboseLevel(..)
, RefactSettings(..)
, TargetModule
, RefactFlags(..)
, StateStorage(..)
, RefactGhc
, runRefactGhc
, getRefacSettings
, defaultSettings
, logSettings
, logm
, logDataWithAnns
, parseSourceFileGhc
, getTargetGhc
, runRefacSession
, applyRefac
, refactDone
, ApplyRefacResult
, RefacSource(..)
, nameSybQuery
, fileNameFromModSummary
, getModuleName
, clientModsAndFiles
, serverModsAndFiles
, getTypecheckedModule
, RefacResult(..)
, getRefactStreamModified
, setRefactStreamModified
, getRefactInscopes
, getRefactRenamed
, putRefactRenamed
, getRefactParsed
, putRefactParsed
, putParsedModule
, clearParsedModule
, getRefactFileName
, getRefactTargetModule
, getRefactNameMap
, getRefactModule
, getRefactModuleName
, liftT
, getRefactDone
, setRefactDone
, clearRefactDone
, setStateStorage
, getStateStorage
, SimpPos
, getGhcLoc
, getGhcLocEnd
, getLocatedStart
, getLocatedEnd
, getStartEndLoc
, startEndLocGhc
, emptyList, nonEmptyList
, InScopes
, ghead
, glast
, gtail
, gfromJust
, inScopeInfo, isInScopeAndUnqualified, isInScopeAndUnqualifiedGhc, inScopeNames
, isExported, isExplicitlyExported, modIsExported
, equivalentNameInNewMod
, isFieldName
, isClassName
, isInstanceName
, hsPNs
, hsBinds
, HsValBinds(..)
,isDeclaredIn,isDeclaredInRdr
,FreeNames(..),DeclaredNames(..)
,hsFreeAndDeclaredPNsOld, hsFreeAndDeclaredNameStrings
,hsFreeAndDeclaredRdr
,hsFreeAndDeclaredPNs
,hsFreeAndDeclaredGhc
,getDeclaredTypes
,getFvs, getFreeVars, getDeclaredVars
,hsVisiblePNs, hsVisiblePNsRdr, hsVisibleNames
,hsVisibleNamesRdr
,hsFDsFromInsideRdr, hsFDNamesFromInsideRdr
,hsFDsFromInside, hsFDNamesFromInside
,hsVisibleDs
,rdrName2Name, rdrName2NamePure
,isVarId,isConId,isOperator,isTopLevelPN,isLocalPN,isNonLibraryName
,isQualifiedPN, isFunOrPatName,isTypeSig
,isFunBindP,isFunBindR,isPatBindP,isPatBindR,isSimplePatBind,isSimplePatDecl
,isComplexPatBind,isComplexPatDecl,isFunOrPatBindP,isFunOrPatBindR
,usedWithoutQualR,isUsedInRhs
,findNameInRdr
,findPNT,findPN,findAllNameOccurences
,findPNs, findNamesRdr, findEntity, findEntity'
,sameOccurrence
, findIdForName
, getTypeForName
,defines, definesP,definesTypeSig
,sameBind,sameBindRdr
,UsedByRhs(..)
, isMainModule
, getModule
,defineLoc, useLoc, locToExp
,locToName, locToRdrName
,getName
,addDecl, addItemsToImport, addHiding
,addParamsToDecls, addActualParamsToRhs, addImportDecl, duplicateDecl
,rmDecl, rmTypeSig, rmTypeSigs
,Update(update)
,rmQualifier,qualifyToplevelName,renamePN',autoRenameLocalVar
, showEntities,showPNwithLoc
,defaultPN,defaultName,defaultExp
,ghcToPN,lghcToPN, expToName, expToNameRdr
,patToNameRdr
,nameToString
,patToPNT ,pNtoPat
, definedPNs, definedPNsRdr,definedNamesRdr
, definingDeclsRdrNames, definingDeclsRdrNames', definingSigsRdrNames
, definingDeclsNames, definingDeclsNames', definingSigsNames
, definingTyClDeclsNames
, allNames
, divideDecls
, mkRdrName,mkNewGhcName,mkNewName,mkNewToplevelName
, causeNameClashInExports
, declsSybTransform
, getParsedForRenamedLPat
, getParsedForRenamedName
, getParsedForRenamedLocated
, stripLeadingSpaces
, everywhereMStaged'
, everywhereStaged
, everywhereStaged'
, onelayerStaged
, listifyStaged
, zeverywhereStaged
, zopenStaged
, zsomewhereStaged
, transZ
, transZM
, zopenStaged'
, ztransformStagedM
, upUntil
, findAbove
, showGhc
, showGhcQual
, prettyprint
, prettyprint2
, ppType
, setGhcContext
, NameMap
, replace
, setRefactAnns
) where
import Language.Haskell.Refact.Utils.Binds
import Language.Haskell.Refact.Utils.ExactPrint
import Language.Haskell.Refact.Utils.GhcUtils
import Language.Haskell.Refact.Utils.GhcVersionSpecific
import Language.Haskell.Refact.Utils.LocUtils
import Language.Haskell.Refact.Utils.Monad
import Language.Haskell.Refact.Utils.MonadFunctions
import Language.Haskell.Refact.Utils.TypeSyn
import Language.Haskell.Refact.Utils.TypeUtils
import Language.Haskell.Refact.Utils.Types
import Language.Haskell.Refact.Utils.Utils
import Language.Haskell.Refact.Utils.Variables
import Language.Haskell.GHC.ExactPrint.Utils