(&self, f: &mut core::fmt::Formatter<'_>)
| 1159 | |
| 1160 | impl core::fmt::Debug for Token { |
| 1161 | fn fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result { |
| 1162 | let mut d = f.debug_struct(format!("Token::{}", self.kind().as_str()).as_str()); |
| 1163 | match self.kind() { |
| 1164 | Kind::Eof => &mut d, |
| 1165 | Kind::Number => d.field("value", &self.value()).field("len", &self.numeric_len()), |
| 1166 | Kind::Dimension => { |
| 1167 | d.field("value", &self.value()).field("len", &self.numeric_len()).field("dimension_len", &self.len()) |
| 1168 | } |
| 1169 | _ if self.is_delim_like() => { |
| 1170 | d.field("char", &self.char().unwrap()).field("len", &self.len()); |
| 1171 | if !self.associated_whitespace().is_none() { |
| 1172 | d.field("associated_whitespace", &self.associated_whitespace()); |
| 1173 | } |
| 1174 | &mut d |
| 1175 | } |
| 1176 | Kind::String => d |
| 1177 | .field("quote_style", &if self.first_flag() { "Double" } else { "Single" }) |
| 1178 | .field("has_close_quote", &self.second_flag()) |
| 1179 | .field("contains_escape_chars", &self.third_flag()) |
| 1180 | .field("len", &self.len()), |
| 1181 | Kind::Ident | Kind::Function | Kind::AtKeyword => d |
| 1182 | .field("is_lower_case", &self.first_flag()) |
| 1183 | .field("is_dashed_ident", &self.second_flag()) |
| 1184 | .field("contains_escape_chars", &self.third_flag()) |
| 1185 | .field("len", &self.len()), |
| 1186 | Kind::Hash => d |
| 1187 | .field("is_lower_case", &self.first_flag()) |
| 1188 | .field("hash_is_id_like", &self.second_flag()) |
| 1189 | .field("contains_escape_chars", &self.third_flag()) |
| 1190 | .field("len", &self.len()), |
| 1191 | Kind::Url => d |
| 1192 | .field("url_has_closing_paren", &self.first_flag()) |
| 1193 | .field("url_has_leading_space", &self.second_flag()) |
| 1194 | .field("contains_escape_chars", &self.third_flag()) |
| 1195 | .field("len", &self.len()), |
| 1196 | Kind::UnicodeRange => d |
| 1197 | .field("start", &format_args!("U+{:X}", self.unicode_range_start())) |
| 1198 | .field("end", &format_args!("U+{:X}", self.unicode_range_end())) |
| 1199 | .field("len", &self.len()), |
| 1200 | Kind::CdcOrCdo => d.field("is_cdc", &self.first_flag()).field("len", &self.len()), |
| 1201 | Kind::Whitespace => d.field("contains", &self.whitespace_style()).field("len", &self.len()), |
| 1202 | _ => d |
| 1203 | .field("flag_0", &self.first_flag()) |
| 1204 | .field("flag_1", &self.second_flag()) |
| 1205 | .field("flag_2", &self.third_flag()) |
| 1206 | .field("len", &self.len()), |
| 1207 | } |
| 1208 | .finish() |
| 1209 | } |
| 1210 | } |
| 1211 | |
| 1212 | impl std::fmt::Display for Token { |
nothing calls this directly
no test coverage detected