1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
use crate::{
    dom_adapter::NodeKey,
    geometry::{Area, Size2D},
    node::Node,
};

pub trait LayoutMeasurer<Key: NodeKey> {
    fn measure(
        &mut self,
        node_id: Key,
        node: &Node,
        parent_area: &Area,
        available_parent_area: &Area,
    ) -> Option<Size2D>;
}