pub trait CanContain<Child> { }Expand description
Trait indicating that an element can contain another element as a child.
This trait enables compile-time validation of parent-child relationships in HTML documents according to the WHATWG specification.
§Example
use ironhtml_elements::{CanContain, Div, Span, P, Ul, Li, Table, Tr, Td, Text};
// Check valid parent-child relationships
fn valid_child<Parent, Child>() where Parent: CanContain<Child> {}
valid_child::<Div, Span>(); // OK - div can contain span
valid_child::<Div, P>(); // OK - div can contain p
valid_child::<Ul, Li>(); // OK - ul can contain li
valid_child::<Tr, Td>(); // OK - tr can contain td
valid_child::<Div, Text>(); // OK - div can contain text
// valid_child::<P, Div>(); // ERROR - p cannot contain div (block in inline)
// valid_child::<Ul, Div>(); // ERROR - ul can only contain li