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

Function lex

crates/csskit_wasm/src/lib.rs:24–36  ·  view source on GitHub ↗
(source_text: String)

Source from the content-addressed store, hash-verified

22
23#[wasm_bindgen]
24pub fn lex(source_text: String) -> Result<JsValue, serde_wasm_bindgen::Error> {
25 let mut lex = Lexer::new(&CssAtomSet::ATOMS, source_text.as_str());
26 let serializer = serde_wasm_bindgen::Serializer::json_compatible();
27 let mut tokens = vec![];
28 loop {
29 let token = lex.advance();
30 tokens.push(token);
31 if token.kind() == Kind::Eof {
32 break;
33 }
34 }
35 Ok(tokens.serialize(&serializer).unwrap())
36}
37
38#[wasm_bindgen]
39pub fn parse(source_text: String) -> Result<SerializableParserResult, serde_wasm_bindgen::Error> {

Callers 1

handleEventMethod · 0.85

Calls 4

advanceMethod · 0.80
as_strMethod · 0.45
kindMethod · 0.45
serializeMethod · 0.45

Tested by

no test coverage detected