MCPcopy Create free account
hub / github.com/dylan-sutton-chavez/edge-python / token_to_str

Function token_to_str

compiler/src/modules/lexer/tables.rs:171–236  ·  view source on GitHub ↗

Reverse lookup for diagnostics: TokenType -> quoted display name. */

(kind: &TokenType)

Source from the content-addressed store, hash-verified

169
170/* Reverse lookup for diagnostics: TokenType -> quoted display name. */
171pub const fn token_to_str(kind: &TokenType) -> &'static str {
172 match kind {
173 // Keywords
174 TokenType::False => "'False'", TokenType::None => "'None'", TokenType::True => "'True'",
175 TokenType::And => "'and'", TokenType::As => "'as'", TokenType::Assert => "'assert'",
176 TokenType::Async => "'async'", TokenType::Await => "'await'", TokenType::Break => "'break'",
177 TokenType::Class => "'class'", TokenType::Continue => "'continue'", TokenType::Def => "'def'",
178 TokenType::Del => "'del'", TokenType::Elif => "'elif'", TokenType::Else => "'else'",
179 TokenType::Except => "'except'", TokenType::Finally => "'finally'", TokenType::For => "'for'",
180 TokenType::From => "'from'", TokenType::Global => "'global'", TokenType::If => "'if'",
181 TokenType::Import => "'import'", TokenType::In => "'in'", TokenType::Is => "'is'",
182 TokenType::Lambda => "'lambda'", TokenType::Nonlocal => "'nonlocal'", TokenType::Not => "'not'",
183 TokenType::Or => "'or'", TokenType::Pass => "'pass'", TokenType::Raise => "'raise'",
184 TokenType::Return => "'return'", TokenType::Try => "'try'", TokenType::While => "'while'",
185 TokenType::With => "'with'", TokenType::Yield => "'yield'",
186
187 // Soft keywords
188 TokenType::Case => "'case'", TokenType::Match => "'match'",
189 TokenType::Type => "'type'", TokenType::Underscore => "'_'",
190
191 // Operators (3-char)
192 TokenType::DoubleStarEqual => "'**='", TokenType::DoubleSlashEqual => "'//='",
193 TokenType::LeftShiftEqual => "'<<='", TokenType::RightShiftEqual => "'>>='",
194
195 // Operators (2-char)
196 TokenType::NotEqual => "'!='", TokenType::PercentEqual => "'%='", TokenType::AmperEqual => "'&='",
197 TokenType::DoubleStar => "'**'", TokenType::StarEqual => "'*='", TokenType::PlusEqual => "'+='",
198 TokenType::MinEqual => "'-='", TokenType::Rarrow => "'->'", TokenType::Ellipsis => "'...'",
199 TokenType::DoubleSlash => "'//'", TokenType::SlashEqual => "'/='", TokenType::ColonEqual => "':='",
200 TokenType::LeftShift => "'<<'", TokenType::LessEqual => "'<='", TokenType::EqEqual => "'=='",
201 TokenType::GreaterEqual => "'>='", TokenType::RightShift => "'>>'", TokenType::AtEqual => "'@='",
202 TokenType::CircumflexEqual => "'^='", TokenType::VbarEqual => "'|='",
203
204 // Operators (1-char)
205 TokenType::Exclamation => "'!'", TokenType::Percent => "'%'", TokenType::Amper => "'&'",
206 TokenType::Star => "'*'", TokenType::Plus => "'+'", TokenType::Minus => "'-'",
207 TokenType::Dot => "'.'", TokenType::Slash => "'/'", TokenType::Less => "'<'",
208 TokenType::Equal => "'='", TokenType::Greater => "'>'", TokenType::At => "'@'",
209 TokenType::Circumflex => "'^'", TokenType::Vbar => "'|'", TokenType::Tilde => "'~'",
210 TokenType::Comma => "','", TokenType::Colon => "':'", TokenType::Semi => "';'",
211
212 // Delimiters
213 TokenType::Lpar => "'('", TokenType::Rpar => "')'",
214 TokenType::Lsqb => "'['", TokenType::Rsqb => "']'",
215 TokenType::Lbrace => "'{'", TokenType::Rbrace => "'}'",
216
217 // Literals
218 TokenType::Name => "identifier",
219 TokenType::Float => "float",
220 TokenType::Int => "integer",
221 TokenType::String => "string",
222 TokenType::Bytes => "bytes literal",
223
224 // F-string
225 TokenType::FstringStart => "f-string start",
226 TokenType::FstringMiddle => "f-string content",
227 TokenType::FstringEnd => "f-string end",
228

Callers 1

as_strMethod · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected