case and default do not need implicit colon
authorLuke Kenneth Casson Leighton <lkcl@lkcl.net>
Sun, 5 Apr 2020 14:56:13 +0000 (15:56 +0100)
committerLuke Kenneth Casson Leighton <lkcl@lkcl.net>
Sun, 5 Apr 2020 14:56:13 +0000 (15:56 +0100)
src/soc/decoder/pseudo/lexer.py

index 7c1d642054b5c867620293497d898a9645c48322..1bd5d79eba0686ff606f0385231b184e9e9ddf7a 100644 (file)
@@ -37,7 +37,7 @@ MUST_INDENT = 2
 # complex grammar rules
 def python_colonify(lexer, tokens):
 
-    fake_colon_needed = False
+    implied_colon_needed = False
     for token in tokens:
         #print ("track colon token", token, token.type)
 
@@ -50,15 +50,15 @@ def python_colonify(lexer, tokens):
             token = copy(token)
             token.type = "COLON"
             yield token
-        elif token.type in ['DO', 'WHILE', 'FOR', 'SWITCH', 'CASE', 'DEFAULT']:
-            fake_colon_needed = True
+        elif token.type in ['DO', 'WHILE', 'FOR', 'SWITCH']:
+            implied_colon_needed = True
             yield token
         elif token.type == 'NEWLINE':
-            if fake_colon_needed:
+            if implied_colon_needed:
                 ctok = copy(token)
                 ctok.type = "COLON"
                 yield ctok
-                fake_colon_needed = False
+                implied_colon_needed = False
             yield token
         else:
             yield token