{-# LANGUAGE DeriveDataTypeable #-}
{-# LANGUAGE GADTs #-}
{-# LANGUAGE TemplateHaskell #-}
{-# OPTIONS_GHC -fno-warn-overlapping-patterns #-}
module Lambdabot.Config.Haskell
( evalPrefixes
, languageExts
, trustedPackages
, djinnBinary
, ghcBinary
, ghciBinary
, hoogleBinary
, muevalBinary
, maxPasteLength
) where
import Lambdabot.Config
config "evalPrefixes" [t| [String] |] [| [">"] |]
trustedPkgs :: [String]
trustedPkgs =
[ "array"
, "base"
, "bytestring"
, "containers"
, "lambdabot-trusted"
, "random"
]
configWithMerge [| (++) |] "trustedPackages" [t| [String] |] [| trustedPkgs |]
defaultExts :: [String]
defaultExts =
[ "ImplicitPrelude"
, "ExtendedDefaultRules"
]
configWithMerge [| (++) |] "languageExts" [t| [String] |] [| defaultExts |]
config "djinnBinary" [t| String |] [| "djinn" |]
config "ghcBinary" [t| String |] [| "ghc" |]
config "ghciBinary" [t| String |] [| "ghci" |]
config "hoogleBinary" [t| String |] [| "hoogle" |]
config "muevalBinary" [t| String |] [| "mueval" |]
config "maxPasteLength" [t| Int |] [| 4096 :: Int |]