diff options
Diffstat (limited to 'src/Language/Fiddle/Ast/FileInterface.hs')
-rw-r--r-- | src/Language/Fiddle/Ast/FileInterface.hs | 55 |
1 files changed, 30 insertions, 25 deletions
diff --git a/src/Language/Fiddle/Ast/FileInterface.hs b/src/Language/Fiddle/Ast/FileInterface.hs index d29fc9d..c1cfac8 100644 --- a/src/Language/Fiddle/Ast/FileInterface.hs +++ b/src/Language/Fiddle/Ast/FileInterface.hs @@ -6,28 +6,33 @@ module Language.Fiddle.Ast.FileInterface where -- the import statements should supply an fdi (fiddle interface) file to speed -- up subsequent compilations. --- import Data.Text --- --- data ObjectType = ObjectType --- { objectTypeSize :: Word32 --- } --- --- data Metatype --- = Object --- { objectLocation :: Word64, --- objectType :: Text --- } --- | Type --- { typeSizeBytes :: Word32 --- } --- --- data Element a = Element --- { elementFullyQualifiedSymbol :: Text, --- elementDocumentation :: Maybe Text, --- elementMetatype :: Metatype, --- elementAnnotation :: a --- } --- --- data FileInterface a = FiddleInterface --- { exportedElements :: [Element a] --- } +import Data.Text +import Data.Word + +data ObjectType = ObjectType + { objectTypeSize :: Word32 + } + +data Metatype + = Object + { objectLocation :: Word64, + objectType :: Text + } + | Type + { typeSizeBytes :: Word32 + } + +data Element a = Element + { elementFullyQualifiedSymbol :: Text, + elementDocumentation :: Maybe Text, + elementMetatype :: Metatype, + elementAnnotation :: a + } + +data ResolvedImport a = ResolvedImport { + dependencies :: [String] +} + +data FileInterface a = FiddleInterface + { exportedElements :: [Element a] + } |