Resolve deferred size comparisons before allocating span slots
This commit is contained in:
1 parent
de1eb7e406
commit
8780b40bb7
23 files changed
+1471
-130
No files matched your search
+15
-2
@@ -11,7 +11,8 @@
|
||||
//! it is not drawn.
|
||||
|
||||
use iris::harness::Harness;
|
||||
use iris::random::{Edits, grow};
|
||||
use iris::prelude::{Axis, Bound, SizeRule};
|
||||
use iris::random::{Edits, build, plan};
|
||||
|
||||
fn env<T: std::str::FromStr>(name: &str, fallback: T) -> T {
|
||||
std::env::var(name)
|
||||
@@ -28,7 +29,19 @@ fn every_cold_layout_is_printed() {
|
||||
let mut out = String::new();
|
||||
for seed in 1..=seeds {
|
||||
let mut harness = Harness::new((1920.0, 1200.0));
|
||||
let (root, tree) = grow(&mut harness.rsc, seed, depth, &Edits::default());
|
||||
let mut plan = plan(seed, depth, &Edits::default());
|
||||
if std::env::var_os("IRIS_DUMP_UNBOUNDED").is_some() {
|
||||
plan.walk_mut(&mut |node| {
|
||||
if let Some(rules) = &mut node.size {
|
||||
for axis in Axis::BOTH {
|
||||
if rules[axis].bound() != Bound::ANY {
|
||||
rules[axis] = SizeRule::Free;
|
||||
}
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
let (root, tree) = build(&mut harness.rsc, &plan);
|
||||
harness.state.root = Some(root);
|
||||
harness.frame();
|
||||
for (index, id) in tree.ids.iter().enumerate() {
|
||||
|
||||
Reference in new issue
Block a user