-- Hoogle documentation, generated by Haddock
-- See Hoogle, http://www.haskell.org/hoogle/
-- | Relational optimiser and code generator
--
-- The library provides FFI bindings to the Pathfinder relational
-- optimiser and code generator. Specifically, the provided functions
-- allow for
--
--
-- - optimisation of table algebra (a variant of relational algebra)
-- expressions
-- - and compilation of table algebra expressions into SQL:1999
-- queries
--
--
-- More information about Pathfinder is available from the following web
-- page:
--
--
@package Pathfinder
@version 0.4
module Database.Pathfinder
-- | Accept a logical query plan bundle in XML format and transform it into
-- one of the output formats.
compileFerry :: XmlString -> OutputFormat -> IO (Either ErrorString OutputString)
-- | Accept a logical query plan bundle in XML format, optimize it based on
-- the argument OptArgs or (if Nothing) the default
-- optimization arguments in PFopt_args, and transform it into
-- one of the output formats.
compileFerryOpt :: XmlString -> OutputFormat -> Maybe OptArgs -> IO (Either ErrorString OutputString)
data OutputFormat
OutputSql :: OutputFormat
OutputXml :: OutputFormat
OutputDot :: OutputFormat
type XmlString = String
type ErrorString = String
type OutputString = String
type OptArgs = String