module Haddock.Backends.Xhtml.Meta where
import Haddock.Utils.Json
import Haddock.Version
import Data.ByteString.Builder (hPutBuilder)
import System.FilePath ((</>))
import System.IO (withFile, IOMode (WriteMode))
quickjumpVersion :: Int
quickjumpVersion = 1
writeHaddockMeta :: FilePath -> Bool -> IO ()
writeHaddockMeta odir withQuickjump = do
let
meta_json :: Value
meta_json = object (concat [
[ "haddock_version" .= String projectVersion ]
, [ "quickjump_version" .= quickjumpVersion | withQuickjump ]
])
withFile (odir </> "meta.json") WriteMode $ \h ->
hPutBuilder h (encodeToBuilder meta_json)