trait Collector {
// Required methods
fn dependency(&mut self) -> Dependency;
fn id_map(&mut self) -> &mut IdOrClassDependencyMap;
fn class_map(&mut self) -> &mut IdOrClassDependencyMap;
fn state_map(&mut self) -> &mut StateDependencyMap;
fn attribute_map(&mut self) -> &mut LocalNameDependencyMap;
fn custom_state_map(&mut self) -> &mut CustomStateDependencyMap;
fn update_states(
&mut self,
element_state: ElementState,
document_state: DocumentState,
);
// Provided methods
fn type_map(&mut self) -> &mut LocalNameDependencyMap { ... }
fn ts_state_map(&mut self) -> &mut TSStateDependencyMap { ... }
fn any_vec(&mut self) -> &mut AnyDependencyMap { ... }
}