MCPcopy Create free account
hub / github.com/csskit/csskit / extract

Method extract

crates/csskit/src/commands/find.rs:165–174  ·  view source on GitHub ↗
(&self, stylesheet: &StyleSheet<'a>, src: &str, out: &mut Vec<(Span, FindData)>)

Source from the content-addressed store, hash-verified

163 }
164
165 fn extract<'a>(&self, stylesheet: &StyleSheet<'a>, src: &str, out: &mut Vec<(Span, FindData)>) {
166 let bump = Bump::default();
167 let Some(selectors) = self.parsed_selectors(&bump) else { return };
168 for m in SelectorMatcher::new(&selectors, &self.selector, src).run(stylesheet) {
169 let start = usize::from(m.span.start());
170 let end = usize::from(m.span.end());
171 let text = src[start..end].to_string();
172 out.push((m.span, FindData { kind: m.node_id.tag_name().to_string(), text }));
173 }
174 }
175
176 fn render_text(&self, ctx: &TokenHighlighter, _file: &str, src: &str, span: Span, _row: &FindData, color: bool) {
177 let (line, col) = span.line_and_column(src);

Callers 1

Calls 4

parsed_selectorsMethod · 0.80
runMethod · 0.45
startMethod · 0.45
endMethod · 0.45

Tested by

no test coverage detected