0 | module Idrall.API.V2
 1 |
 2 | import Idrall.Value
 3 | import public Idrall.Expr
 4 | import public Idrall.Error
 5 | import public Idrall.Derive
 6 | import public Idrall.Derive.ToDhall
 7 | import public Idrall.IOEither
 8 | import Idrall.APIv1
 9 |
10 | import System.Path -- TODO make public export in System.Directory.Tree?
11 |
12 | export
13 | deriveFromDhallString : FromDhall ty => String -> IOEither Error ty
14 | deriveFromDhallString x = do
15 |   e <- roundTripCheckEvalQuote $ x
16 |   liftEither $ fromDhall e
17 |
18 | export
19 | deriveFromDhallFile : FromDhall a => Path -> IOEither Error a
20 | deriveFromDhallFile = deriveFromDhallString . show
21 |