diff options
author | Adam Chlipala <adam@chlipala.net> | 2012-05-02 08:56:19 -0400 |
---|---|---|
committer | Adam Chlipala <adam@chlipala.net> | 2012-05-02 08:56:19 -0400 |
commit | bba878651c459b4863ae907784270070e0048e51 (patch) | |
tree | 62439e548ac25411e953783beb116b5937e87fae /src/mod_db.sml | |
parent | 457b3c776325042c81b0cb5804e7881e0c1d1bf3 (diff) |
Don't modify the module cache after elaboration failures
Diffstat (limited to 'src/mod_db.sml')
-rw-r--r-- | src/mod_db.sml | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/mod_db.sml b/src/mod_db.sml index 22c11183..5e9e3342 100644 --- a/src/mod_db.sml +++ b/src/mod_db.sml @@ -141,4 +141,10 @@ fun lookup (d : Source.decl) = NONE) | _ => NONE +val byNameBackup = ref (!byName) +val byIdBackup = ref (!byId) + +fun snapshot () = (byNameBackup := !byName; byIdBackup := !byId) +fun revert () = (byName := !byNameBackup; byId := !byIdBackup) + end |