use record update for top
This commit is contained in:
@@ -154,7 +154,13 @@ processModule importFC base stk qn@(QN ns nm) = do
|
||||
top <- getTop
|
||||
let freshMC = MC emptyMap Nil 0 CheckAll
|
||||
-- set imported, mod, freshMC, ops before processing
|
||||
modifyTop (\ top => MkTop top.modules imported emptyMap modns emptyMap freshMC top.verbose top.errors ops)
|
||||
modifyTop [ imported := imported
|
||||
; hints := emptyMap
|
||||
; ns := modns
|
||||
; defs := emptyMap
|
||||
; metaCtx := freshMC
|
||||
; ops := ops
|
||||
]
|
||||
for imported $ \ ns => do
|
||||
let (Just mod) = lookupMap' ns top.modules | _ => error emptyFC "namespace \{show ns} missing"
|
||||
importHints (listValues mod.modDefs)
|
||||
@@ -234,7 +240,12 @@ processFile fn = do
|
||||
|
||||
top <- getTop
|
||||
let modules = updateMap primNS (MkModCtx "" top.defs (MC emptyMap Nil 0 CheckAll) top.ops Nil) top.modules
|
||||
modifyTop (\ top => MkTop modules (primNS :: Nil) emptyMap Nil emptyMap top.metaCtx top.verbose top.errors top.ops)
|
||||
modifyTop [ modules := modules
|
||||
; imported := primNS :: Nil
|
||||
; hints := emptyMap
|
||||
; ns := Nil
|
||||
; defs := emptyMap
|
||||
]
|
||||
|
||||
invalidateModule qn
|
||||
|
||||
|
||||
Reference in New Issue
Block a user