diff options
author | stefanheule <unknown> | 2012-05-18 18:36:33 +0200 |
---|---|---|
committer | stefanheule <unknown> | 2012-05-18 18:36:33 +0200 |
commit | f5ff0fd118013ff6e5adf03b1e42d15887a69696 (patch) | |
tree | 125177116f564fb395840cd2ab008ea0109e1749 /Chalice/src/main/scala/Translator.scala | |
parent | 10a9094286836692c9fa7bf3b3e662b35602ec73 (diff) |
Chalice: code documentation
Diffstat (limited to 'Chalice/src/main/scala/Translator.scala')
-rw-r--r-- | Chalice/src/main/scala/Translator.scala | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/Chalice/src/main/scala/Translator.scala b/Chalice/src/main/scala/Translator.scala index 67649df5..6a10df3b 100644 --- a/Chalice/src/main/scala/Translator.scala +++ b/Chalice/src/main/scala/Translator.scala @@ -2234,6 +2234,7 @@ class ExpressionTranslator(val globals: Globals, preGlobals: Globals, val fpi: F Comment("end exhale")
}
+ /** copy all the values of locations that are folded under any predicate (that we care about) one or more levels down from 'heap' to 'exhaleHeap' */
def restoreFoldedLocations(mask: Expr, heap: Boogie.Expr, exhaleHeap: Boogie.Expr): List[Boogie.Stmt] = {
val foldedPredicates = etran.fpi.getFoldedPredicates()
(for (fp <- foldedPredicates) yield {
@@ -2252,6 +2253,7 @@ class ExpressionTranslator(val globals: Globals, preGlobals: Globals, val fpi: F Boogie.If(CanRead(receiver, pred.FullName, mask, ZeroMask), stmts, Nil)
}
+ /** the actual recursive method for restoreFoldedLocationsHelperPred */
def restoreFoldedLocationsHelper(expr: Expression, mask: Expr, heap: Boogie.Expr, exhaleHeap: Boogie.Expr, otherPredicates: List[FoldedPredicate]): List[Boogie.Stmt] = {
val f = (expr: Expression) => restoreFoldedLocationsHelper(expr, mask, heap, exhaleHeap, otherPredicates)
expr match {
|