summaryrefslogtreecommitdiff
path: root/src/compiler/GF/Compile/Compute/ConcreteLazy.hs
diff options
context:
space:
mode:
authorhallgren <hallgren@chalmers.se>2013-09-19 18:23:47 +0000
committerhallgren <hallgren@chalmers.se>2013-09-19 18:23:47 +0000
commit3d5b9bd1fd46a51651cbfbd45f03e5b878aebbac (patch)
tree24e9cae9268da60b1a0d633ab4d9f970deee3905 /src/compiler/GF/Compile/Compute/ConcreteLazy.hs
parentc08f42ce9f1a0dc123896a8c94da24bb19756141 (diff)
Make Ident abstract; imports of Data.ByteString.Char8 down from 29 to 16 modules
Most of the explicit uses of ByteStrings were eliminated by using identS, identS = identC . BS.pack which was found in GF.Grammar.CF and moved to GF.Infra.Ident. The function prefixIdent :: String -> Ident -> Ident allowed one additional import of ByteString to be eliminated. The functions isArgIdent :: Ident -> Bool getArgIndex :: Ident -> Maybe Int were needed to eliminate explicit pattern matching on Ident from two modules.
Diffstat (limited to 'src/compiler/GF/Compile/Compute/ConcreteLazy.hs')
-rw-r--r--src/compiler/GF/Compile/Compute/ConcreteLazy.hs3
1 files changed, 1 insertions, 2 deletions
diff --git a/src/compiler/GF/Compile/Compute/ConcreteLazy.hs b/src/compiler/GF/Compile/Compute/ConcreteLazy.hs
index fce118fec..0e3a4fb45 100644
--- a/src/compiler/GF/Compile/Compute/ConcreteLazy.hs
+++ b/src/compiler/GF/Compile/Compute/ConcreteLazy.hs
@@ -508,8 +508,7 @@ computeTermOpt gr = comput True where
-- | argument variables cannot be glued
checkNoArgVars :: Term -> Comp Term
checkNoArgVars t = case t of
- Vr (IA _ _) -> fail $ glueErrorMsg $ ppTerm Unqualified 0 t
- Vr (IAV _ _ _) -> fail $ glueErrorMsg $ ppTerm Unqualified 0 t
+ Vr x | isArgIdent x -> fail $ glueErrorMsg $ ppTerm Unqualified 0 t
_ -> composOp checkNoArgVars t
glueErrorMsg s =