[svn] r6185: nemerle/trunk/ncc/parsing/Lexer.n

NoiseEHC svnadmin at nemerle.org
Tue Apr 11 00:29:32 CEST 2006


Log:
fix lexercolorizer not to include leading whitespace with grammar element

Author: NoiseEHC
Date: Tue Apr 11 00:29:31 2006
New Revision: 6185

Modified:
   nemerle/trunk/ncc/parsing/Lexer.n

Modified: nemerle/trunk/ncc/parsing/Lexer.n
==============================================================================
--- nemerle/trunk/ncc/parsing/Lexer.n	(original)
+++ nemerle/trunk/ncc/parsing/Lexer.n	Tue Apr 11 00:29:31 2006
@@ -1988,11 +1988,13 @@
   }
 
   public GetSyntaxToken (state : ref int) : SyntaxToken {
+    mutable begin_pos = pos;
     def loop (c) {
       | ' ' | '\t' | '\r' | '\n' =>
-        if (pos < reader.Length)
+        if (pos < reader.Length) {
+          ++begin_pos;
           loop (read ())
-        else
+        } else
           SyntaxType.EndOfFile
             
       | '/' =>
@@ -2007,7 +2009,6 @@
         
       | _ => --pos; get_token ()
     };
-    def begin_pos = pos;
     def tok =
       if (pos >= reader.Length)
         SyntaxType.EndOfFile
@@ -2023,7 +2024,7 @@
           | _ is LexerBase.Error => SyntaxType.EndOfFile
         }
       }
-    SyntaxToken (begin_pos, pos - 1, tok);
+    SyntaxToken (begin_pos-1, pos - 1, tok);
   }  
 } // end class LexerColorizer
 



More information about the svn mailing list