{"record":{"id":"6941ccbecfad7120","repo":"swc-project/swc","slug":"expected-ident-or-str-tokens","errorCode":null,"errorMessage":"Expected ident or str tokens","messagePattern":"Expected ident or str tokens","errorType":"validation","errorClass":"Error","httpStatus":null,"severity":"error","filePath":"crates/swc_css_parser/src/parser/selectors/mod.rs","lineNumber":904,"sourceCode":"                            ));\n                        }\n                        \"dir\" => {\n                            self.input.skip_ws();\n\n                            let ident: Ident = self.parse()?;\n\n                            self.input.skip_ws();\n\n                            children.push(PseudoClassSelectorChildren::Ident(ident));\n                        }\n                        \"lang\" => {\n                            self.input.skip_ws();\n\n                            let child = match cur!(self) {\n                                tok!(\"ident\") => PseudoClassSelectorChildren::Ident(self.parse()?),\n                                tok!(\"string\") => PseudoClassSelectorChildren::Str(self.parse()?),\n                                _ => {\n                                    return Err(Error::new(\n                                        span,\n                                        ErrorKind::Expected(\"ident or str tokens\"),\n                                    ));\n                                }\n                            };\n\n                            children.push(child);\n\n                            loop {\n                                self.input.skip_ws();\n\n                                if is!(self, \",\") {\n                                    children.push(PseudoClassSelectorChildren::Delimiter(\n                                        self.parse()?,\n                                    ));\n\n                                    self.input.skip_ws();\n                                } else {","sourceCodeStart":886,"sourceCodeEnd":922,"githubUrl":"https://github.com/swc-project/swc/blob/5176682b65416c6b5de6b47379ae1588ea3ecb3f/crates/swc_css_parser/src/parser/selectors/mod.rs#L886-L922","documentation":"Fired while parsing the `:lang()` pseudo-class argument: after the `lang` name, the parser expects a sequence of ident or string tokens representing language-range tags, but the current token was neither. Input at fault is a malformed :lang() such as `:lang()` with a non-string/non-ident argument.","triggerScenarios":"Thrown at crates/swc_css_parser/src/parser/selectors/mod.rs:904 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Pass an ident or quoted string to the pseudo-class","Report the collected error","Fix the selector syntax"],"exampleFix":null,"handlingStrategy":"validation","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"5176682b65416c6b5de6b47379ae1588ea3ecb3f","analyzedAt":"2026-08-17T16:16:52.067Z","contentChangedAt":"2026-08-17T16:16:52.067Z","schemaVersion":2},"datasetVersion":"2026-09-14T05:17:10.506Z"}