summaryrefslogtreecommitdiff
path: root/src/layout/mod.rs
diff options
context:
space:
mode:
authorLaurenz <laurmaedje@gmail.com>2021-06-27 19:02:23 +0200
committerGitHub <noreply@github.com>2021-06-27 19:02:23 +0200
commitd8d60207ef1833001196feccb84cc0c78bdd84df (patch)
treecdc2130d8b4265c52863f10418842d188afb63e8 /src/layout/mod.rs
parentf64c772b6d969fa3aa1a7391a3d8118b21430434 (diff)
parente9960b89424ab67e633076ccc9f8c420316b076a (diff)
Merge pull request #33 from typst/cache-patterns
A test framework for incremental compilation
Diffstat (limited to 'src/layout/mod.rs')
-rw-r--r--src/layout/mod.rs14
1 files changed, 3 insertions, 11 deletions
diff --git a/src/layout/mod.rs b/src/layout/mod.rs
index 10c30f41..dc819a16 100644
--- a/src/layout/mod.rs
+++ b/src/layout/mod.rs
@@ -102,18 +102,10 @@ impl Layout for AnyNode {
regions: &Regions,
) -> Vec<Constrained<Rc<Frame>>> {
ctx.level += 1;
- let frames = ctx
- .cache
- .layout
- .frames
- .get(&self.hash)
- .and_then(|x| x.check(regions.clone()))
- .unwrap_or_else(|| {
+ let frames =
+ ctx.cache.layout.get(self.hash, regions.clone()).unwrap_or_else(|| {
let frames = self.node.layout(ctx, regions);
- ctx.cache.layout.frames.insert(self.hash, FramesEntry {
- frames: frames.clone(),
- level: ctx.level - 1,
- });
+ ctx.cache.layout.insert(self.hash, frames.clone(), ctx.level - 1);
frames
});
ctx.level -= 1;