src: use 'loop' for infinite loop and do-until-like
authorJean Privat <jean@pryen.org>
Fri, 28 Aug 2009 15:40:01 +0000 (11:40 -0400)
committerJean Privat <jean@pryen.org>
Fri, 28 Aug 2009 15:40:01 +0000 (11:40 -0400)
Signed-off-by: Jean Privat <jean@pryen.org>

lib/standard/collection/hash_collection.nit
lib/standard/stream.nit
src/parser/lexer.nit
src/parser/parser.nit
src/parser/xss/lexer.xss
src/parser/xss/parser.xss

index fde2fff..818da57 100644 (file)
@@ -47,7 +47,7 @@ special ArrayCapable[nullable N]
 
                # Look for the key in the array
                var cur = base
-               while true do
+               loop
                        var c = arr[cur]
                        if c == null or c.key == k then # REAL equals
                                _last_accessed_index = cur
@@ -106,7 +106,7 @@ special ArrayCapable[nullable N]
                _array[i] = null
                _length -= 1
                # Now replaces things before if needed
-               while true do
+               loop
                        i -= 1
                        if i < 0 then
                                i = _capacity - 1
index 0d59246..7752773 100644 (file)
@@ -64,7 +64,7 @@ special IOS
        # Read a string until the end of the line and append it to `s'.
        fun append_line_to(s: Buffer)
        do
-               while true do
+               loop
                        var x = read_char
                        if x == -1 then
                                if eof then return
@@ -147,7 +147,7 @@ special IStream
 
        redef fun append_line_to(s)
        do
-               while true do
+               loop
                        # First phase: look for a '\n'
                        var i = _buffer_pos
                        while i < _buffer.length and _buffer[i] != '\n' do i += 1
index 7beefa5..46efff9 100644 (file)
@@ -1260,7 +1260,7 @@ class Lexer
                var text = _text
                text.clear
 
-               while true do
+               loop
                        var c = get_char
 
                        if c != -1 then
@@ -1285,8 +1285,7 @@ class Lexer
 
                                text.add(c.ascii)
 
-                               var first_loop = true # aka until
-                               while dfa_state < -1 or first_loop do
+                               loop
                                        var old_state = dfa_state
                                        if dfa_state < -1 then
                                                old_state = -2 - dfa_state
@@ -1310,11 +1309,11 @@ class Lexer
                                                                low = middle + 1
                                                        else
                                                                dfa_state = tmp2[2]
-                                                               low = high + 1 # aka break
+                                                               break
                                                        end
                                                end
                                        end
-                                       first_loop = false # aka until
+                                       if dfa_state > -2 then break
                                end
 
                                _cr = cr
index e2109b5..d8565fd 100644 (file)
@@ -100,7 +100,7 @@ special ParserTable
                push(0, null)
 
                var lexer = _lexer
-               while true do
+               loop
                        var token = lexer.peek
                        if token isa AError then
                                return new Start(null, token)
index 3e8a246..6bb0008 100644 (file)
@@ -109,7 +109,7 @@ $ end foreach
                var text = _text
                text.clear
 
-               while true do
+               loop
                        var c = get_char
 
                        if c != -1 then
@@ -134,8 +134,7 @@ $ end foreach
 
                                text.add(c.ascii)
 
-                               var first_loop = true # aka until
-                               while dfa_state < -1 or first_loop do
+                               loop
                                        var old_state = dfa_state
                                        if dfa_state < -1 then
                                                old_state = -2 - dfa_state
@@ -159,11 +158,11 @@ $ end foreach
                                                                low = middle + 1
                                                        else
                                                                dfa_state = tmp2[2]
-                                                               low = high + 1 # aka break
+                                                               break
                                                        end
                                                end
                                        end
-                                       first_loop = false # aka until
+                                       if dfa_state > -2 then break
                                end
 
                                _cr = cr
index ca42350..08510f7 100644 (file)
@@ -112,7 +112,7 @@ special ParserTable
                push(0, null)
 
                var lexer = _lexer
-               while true do
+               loop
                        var token = lexer.peek
                        if token isa PError then
                                return new Start(null, token)