summaryrefslogtreecommitdiff
path: root/src/GF/Infra
diff options
context:
space:
mode:
authoraarne <unknown>2003-10-09 15:23:32 +0000
committeraarne <unknown>2003-10-09 15:23:32 +0000
commit2ee936c7e23bd690b05b8362179911a2d176f150 (patch)
tree00e54d208f21b4f0278aab96ae551ecd6cae4abc /src/GF/Infra
parentddd103ccd7422c35b5af0bcb5bad5edd49b080bb (diff)
Added treatment of transfer modules. Aggregation is an example.
Diffstat (limited to 'src/GF/Infra')
-rw-r--r--src/GF/Infra/Modules.hs8
-rw-r--r--src/GF/Infra/ReadFiles.hs2
2 files changed, 9 insertions, 1 deletions
diff --git a/src/GF/Infra/Modules.hs b/src/GF/Infra/Modules.hs
index 01b789f8f..bae22219f 100644
--- a/src/GF/Infra/Modules.hs
+++ b/src/GF/Infra/Modules.hs
@@ -66,6 +66,10 @@ openedModule o = case o of
OSimple m -> m
OQualif _ m -> m
+allOpens m = case mtype m of
+ MTTransfer a b -> a : b : opens m
+ _ -> opens m
+
-- initial dependency list
depPathModule :: Ord i => Module i f a -> [OpenSpec i]
depPathModule m = fors m ++ exts m ++ opens m where
@@ -176,6 +180,10 @@ isModCnc m = case mtype m of
MTConcrete _ -> True
_ -> False
+isModTrans m = case mtype m of
+ MTTransfer _ _ -> True
+ _ -> False
+
sameMType m n = case (m,n) of
(MTConcrete _, MTConcrete _) -> True
_ -> m == n
diff --git a/src/GF/Infra/ReadFiles.hs b/src/GF/Infra/ReadFiles.hs
index f755397f2..5e4d2b165 100644
--- a/src/GF/Infra/ReadFiles.hs
+++ b/src/GF/Infra/ReadFiles.hs
@@ -99,7 +99,7 @@ importsOfFile =
unComm -- ignore comments before the headed line
where
term = flip elem ["{",";"]
- spec = flip elem ["of", "open","in", "reuse", "=", "(", ")",",","**"]
+ spec = flip elem ["of", "open","in", ":", "->", "reuse", "=", "(", ")",",","**"]
unqual ws = case ws of
"(":q:ws' -> unqual ws'
w:ws' -> w:unqual ws'