Agda-2.5.1: A dependently typed functional programming language and proof assistant

Safe HaskellNone
LanguageHaskell98

Agda.TypeChecking.Monad.Caching

Contents

Synopsis

Log reading/writing operations

writeToCurrentLog :: TypeCheckAction -> TCM () Source

Writes a TypeCheckAction to the current log, using the current PostScopeState

readFromCachedLog :: TCM (Maybe (TypeCheckAction, PostScopeState)) Source

Reads the next entry in the cached type check log, if present.

cleanCachedLog :: TCM () Source

Empties the "to read" CachedState. To be used when it gets invalid.

cacheCurrentLog :: TCM () Source

Caches the current type check log. Discardes the old cache. Does nothing if caching is inactive.

Activating

activateLoadedFileCache :: TCM () Source

Makes sure that the stLoadedFileCache is Just, with a clean current log. Crashes is stLoadedFileCache is already active with a dirty log. Should be called when we start typechecking the current file.

cachingStarts :: TCM () Source

To be called before any write or restore calls.

Restoring the PostScopeState