diff options
author | Josh Rahm <joshuarahm@gmail.com> | 2024-09-25 00:17:19 -0600 |
---|---|---|
committer | Josh Rahm <joshuarahm@gmail.com> | 2024-09-25 00:17:19 -0600 |
commit | fffe42ce4861f53dd86113ab8320e4754f2c570c (patch) | |
tree | d9fb492c4c821eec091b2012ffe626cda45f1bde /src/Language/Fiddle/Ast/FileInterface.hs | |
parent | 0c6ada2f5c8a3ac900fabd0384af558fb6bd334a (diff) | |
download | fiddle-fffe42ce4861f53dd86113ab8320e4754f2c570c.tar.gz fiddle-fffe42ce4861f53dd86113ab8320e4754f2c570c.tar.bz2 fiddle-fffe42ce4861f53dd86113ab8320e4754f2c570c.zip |
Split the Ast file into multiple sub files.
Make some more changes to the generic implementation of EasySwitchStage.
Diffstat (limited to 'src/Language/Fiddle/Ast/FileInterface.hs')
-rw-r--r-- | src/Language/Fiddle/Ast/FileInterface.hs | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/src/Language/Fiddle/Ast/FileInterface.hs b/src/Language/Fiddle/Ast/FileInterface.hs new file mode 100644 index 0000000..d29fc9d --- /dev/null +++ b/src/Language/Fiddle/Ast/FileInterface.hs @@ -0,0 +1,33 @@ +module Language.Fiddle.Ast.FileInterface where + +-- Definitions for file interfaces. These interfaces contain an abstract +-- representation of the symbols and information exported by a fiddle file. +-- These interfaces are also serializable, and when compiling a fiddle file, all +-- 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] +-- } |