{- |
Module : $Header$
Description : Conditional compilation
Copyright : (c) 2017 Finn Teegen
License : BSD-3-clause
Maintainer : fte@informatik.uni-kiel.de
Stability : experimental
Portability : portable
TODO
-}
module CondCompile (condCompile) where
import Curry.Base.Monad
import Curry.CondCompile.Transform (condTransform)
import CompilerOpts (CppOpts (..))
condCompile :: CppOpts -> FilePath -> String -> CYIO String
condCompile opts fn p
| not (cppRun opts) = return p
| otherwise = either (failMessages . (: []))
ok
(condTransform (cppDefinitions opts) fn p)