module Ormolu.Parser.Result
( SourceSnippet (..),
ParseResult (..),
)
where
import Data.Set (Set)
import Data.Text (Text)
import Distribution.ModuleName (ModuleName)
import GHC.Data.EnumSet (EnumSet)
import GHC.Hs (GhcPs, HsModule)
import GHC.LanguageExtensions.Type
import Ormolu.Config (SourceType)
import Ormolu.Fixity (ModuleFixityMap)
import Ormolu.Parser.CommentStream
import Ormolu.Parser.Pragma (Pragma)
data SourceSnippet = RawSnippet Text | ParsedSnippet ParseResult
data ParseResult = ParseResult
{
ParseResult -> HsModule GhcPs
prParsedSource :: HsModule GhcPs,
ParseResult -> SourceType
prSourceType :: SourceType,
:: Maybe LComment,
ParseResult -> [([LComment], Pragma)]
prPragmas :: [([LComment], Pragma)],
:: CommentStream,
ParseResult -> EnumSet Extension
prExtensions :: EnumSet Extension,
ParseResult -> ModuleFixityMap
prModuleFixityMap :: ModuleFixityMap,
ParseResult -> Int
prIndent :: Int,
ParseResult -> Set ModuleName
prLocalModules :: Set ModuleName
}