{-| Description : Formatting process itself -} module Language.Haskell.Formatter.Process.Control (format) where import qualified Language.Haskell.Formatter.ExactCode as ExactCode import qualified Language.Haskell.Formatter.Process.AttachComments as AttachComments import qualified Language.Haskell.Formatter.Process.DetachComments as DetachComments import qualified Language.Haskell.Formatter.Process.FormatActualCode as FormatActualCode import qualified Language.Haskell.Formatter.Process.FormatComments as FormatComments import qualified Language.Haskell.Formatter.Process.Formatter as Formatter import qualified Language.Haskell.Formatter.Result as Result import qualified Language.Haskell.Formatter.Style as Style format :: Style.Style -> ExactCode.ExactCode -> Result.Result ExactCode.ExactCode format style = Formatter.format $ createFormatter style createFormatter :: Style.Style -> Formatter.Formatter createFormatter style = Formatter.Formatter{Formatter.attachComments = AttachComments.attachComments style, Formatter.formatActualCode = FormatActualCode.formatActualCode style, Formatter.formatComments = FormatComments.formatComments style, Formatter.detachComments = DetachComments.detachComments style}