From 7025ff0800de5725badbdeffc81fdf455abdd6b2 Mon Sep 17 00:00:00 2001 From: Joe Crayne Date: Sat, 13 Apr 2019 22:57:29 -0400 Subject: aliased signatures. --- ddl/Definitions.hs | 13 ++++++------- ddl/Language.hs | 3 ++- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/ddl/Definitions.hs b/ddl/Definitions.hs index 56fb6ee..5c9efa8 100644 --- a/ddl/Definitions.hs +++ b/ddl/Definitions.hs @@ -2,10 +2,9 @@ module Definitions (modules) where import Control.Monad.Writer -import Data.Functor.Identity import Language -ir :: WriterT ([DataDef], [String]) Identity () +ir :: DDef () ir = do -- type aliases "StreamName" #= Int @@ -436,7 +435,7 @@ ir = do ] deriving_ [Haskell] [Show] -mesh :: WriterT ([DataDef], [String]) Identity () +mesh :: DDef () mesh = do data_ "MeshAttribute" $ do const_ "A_Float" [Array Float] @@ -462,7 +461,7 @@ mesh = do , "mPrimitive" #:: "MeshPrimitive" ] -typeInfo :: WriterT ([DataDef], [String]) Identity () +typeInfo :: DDef () typeInfo = do data_ "Range" $ do constR_ "Range" @@ -494,7 +493,7 @@ typeInfo = do const_ "CompileError" [String, Array "TypeInfo", Array "WarningInfo", Array "ErrorInfo"] const_ "Compiled" [String, String, "Pipeline", Array "TypeInfo", Array "WarningInfo"] -pipelineSchema :: WriterT ([DataDef], [String]) Identity () +pipelineSchema :: DDef () pipelineSchema = do data_ "StreamType" $ do enum_ "Attribute_Word" @@ -532,7 +531,7 @@ pipelineSchema = do , "uniforms" #:: Map String "InputType" ] -testData :: WriterT ([DataDef], [String]) Identity () +testData :: DDef () testData = do -- client info data_ "ClientInfo" $ do @@ -584,7 +583,7 @@ testData = do const_ "RenderJobResult" ["FrameResult"] const_ "RenderJobError" [String] -modules :: WriterT [ModuleDef] Identity () +modules :: MDef () modules = do module_ "LambdaCube.IR" ir module_ "LambdaCube.PipelineSchema" $ do diff --git a/ddl/Language.hs b/ddl/Language.hs index 9701023..816bbb9 100644 --- a/ddl/Language.hs +++ b/ddl/Language.hs @@ -387,6 +387,7 @@ data_ n l = tell ([let (c,i) = execWriter l in DataDef n c i],mempty) alias_ :: String -> Type -> DDef () alias_ n t = tell ([TypeAlias n t],mempty) +(#=) :: String -> Type -> DDef () a #= b = alias_ a b class IsField a where @@ -449,4 +450,4 @@ a #:: b = Field a b serialization: json: encode/decode other? --} \ No newline at end of file +-} -- cgit v1.2.3