pretty: make some method more robust (or more informative when crashing)
authorJean Privat <jean@pryen.org>
Fri, 24 Apr 2015 10:25:20 +0000 (17:25 +0700)
committerJean Privat <jean@pryen.org>
Fri, 24 Apr 2015 15:12:59 +0000 (22:12 +0700)
Signed-off-by: Jean Privat <jean@pryen.org>

src/pretty.nit

index 963ba76..9969218 100644 (file)
@@ -145,12 +145,16 @@ class PrettyPrinterVisitor
        # Skip `current_token` until `target` is reached.
        fun skip_to(target: nullable Token) do
                if target == null then return
-               while current_token != target do skip
+               while current_token != null and current_token != target do skip
+               if current_token == null then
+                       target.debug("Looked for, but not found :(")
+                       abort
+               end
        end
 
        # Visit `current_token`.
        fun consume(token: String) do
-               assert current_token.text == token
+               if current_token.text == token then else current_token.debug("Got `{current_token.text}`; expected `{token}`.")
                visit current_token
        end