1
0
forked from GitHub/gf-core

unlexer concat

This commit is contained in:
aarne
2005-02-08 15:35:58 +00:00
parent b9a2d6c5c3
commit 56c80bf8d9
22 changed files with 251 additions and 62 deletions

View File

@@ -17,6 +17,7 @@ module Lookup where
import Operations
import Abstract
import Modules
import Lockfield
import List (nub)
import Monad
@@ -34,6 +35,11 @@ lookupResDef gr = look True where
ResOper _ (Yes t) -> return $ qualifAnnot m t
ResOper _ Nope -> return (Q m c) ---- if isTop then lookExt m c
---- else prtBad "cannot find in exts" c
CncCat (Yes ty) _ _ -> lockRecType c $ ty
CncCat _ _ _ -> lockRecType c $ defLinType
CncFun _ (Yes tr) _ -> unlockRecord c tr
AnyInd _ n -> look False n c
ResParam _ -> return $ QC m c
ResValue _ -> return $ QC m c
@@ -51,6 +57,11 @@ lookupResType gr m c = do
case info of
ResOper (Yes t) _ -> return $ qualifAnnot m t
ResOper (May n) _ -> lookupResType gr n c
-- used in reused concrete
CncCat _ _ _ -> return typeType
CncFun (Just (_,(cont,val))) _ _ -> return $ mkProd (cont, val, [])
AnyInd _ n -> lookupResType gr n c
ResParam _ -> return $ typePType
ResValue (Yes t) -> return $ qualifAnnotPar m t