module YesodDsl.Generator.Fay (fay) where
import YesodDsl.AST
import Text.Shakespeare.Text hiding (toText)
import qualified Data.Text as T
import Data.List
import Data.Maybe
import Data.Char
import YesodDsl.Generator.Common
trPathPiece :: PathPiece -> String
trPathPiece pp = case pp of
PathText pt -> "PathText " ++ show pt
PathId pi -> "PathId " ++ show pi
trHandlerType :: HandlerType -> String
trHandlerType ht = case ht of
PutHandler -> "PutHandler"
GetHandler -> "GetHandler"
PostHandler -> "PostHandler"
DeleteHandler -> "DeleteHandler"
trHandler :: Handler -> String
trHandler h = T.unpack $(codegenFile "codegen/fay-handler.cg")
trField :: Field -> String
trField f = T.unpack $(codegenFile "codegen/fay-field.cg")
trEntity :: Entity -> String
trEntity e = T.unpack $(codegenFile "codegen/fay-entity.cg")
trClass :: Class -> String
trClass c = T.unpack $(codegenFile "codegen/fay-class.cg")
trEnum :: EnumType -> String
trEnum e = T.unpack $(codegenFile "codegen/fay-enum.cg")
trRoute:: Route -> String
trRoute r = T.unpack $(codegenFile "codegen/fay-route.cg")
fay :: Module -> String
fay m = T.unpack $(codegenFile "codegen/fay-header.cg")