diff --git a/AG.PascalTokeniser.pas b/AG.PascalTokeniser.pas
index 24adfea..8e7ca23 100644
--- a/AG.PascalTokeniser.pas
+++ b/AG.PascalTokeniser.pas
@@ -2,46 +2,9 @@ unit AG.PascalTokeniser;
interface
-implementation
-
-(*
-#
-# PyPascalTokenizer
-# Author: Artem Gavrilov (@Artem3213212)
-# License: MPL 2.0
-#
-
-import queue, threading
-
-SYMS1 = ['(',')','[',']','/','|','\\','@','#','=','>','<',':',';',',','.','$','+','-','*']
-SYMS2 = ['>=','<=','<>',':=','..','-=','+=','/=','*=']
-SPACES = ['\f','\n','\r','\t','\v',' ']
-NO_NAME_SYMS = SYMS1 + SPACES + ['{','}']
-CHARS_ID0 = '&abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ_'
-CHARS_ID = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789_'
-
-def is_comment(s):
- if type(s) is list:
- return True
- else:
- return s.startswith('{') or s.startswith('(*') or s.startswith('//')
-
-def is_name(s):
- if len(s)<=0:
- return False
- if s=='&':
- return False
- if not (s[0] in CHARS_ID0):
- return False
- for i in s[1:]:
- if not (i in CHARS_ID):
- return False
- return True
-
-def is_string(s):
- return s.startswith("'")
-
-class PasTokenizer():
+type
+ TPasTokenizer=class
+ (*class PasTokenizer():
def __init__(self, s):
self.s, self.y, self.x, self.ended = s, 0, 0, False
self._skip_spaces()
@@ -169,7 +132,43 @@ class PasTokenizer():
return z
def is_ended(self):
- return self.ended
+ return self.ended*)
+ end;
+
+implementation
+
+(*
+import queue, threading
+
+SYMS1 = ['(',')','[',']','/','|','\\','@','#','=','>','<',':',';',',','.','$','+','-','*']
+SYMS2 = ['>=','<=','<>',':=','..','-=','+=','/=','*=']
+SPACES = ['\f','\n','\r','\t','\v',' ']
+NO_NAME_SYMS = SYMS1 + SPACES + ['{','}']
+CHARS_ID0 = '&abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ_'
+CHARS_ID = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789_'
+
+def is_comment(s):
+ if type(s) is list:
+ return True
+ else:
+ return s.startswith('{') or s.startswith('(*') or s.startswith('//')
+
+def is_name(s):
+ if len(s)<=0:
+ return False
+ if s=='&':
+ return False
+ if not (s[0] in CHARS_ID0):
+ return False
+ for i in s[1:]:
+ if not (i in CHARS_ID):
+ return False
+ return True
+
+def is_string(s):
+ return s.startswith("'")
+
+
class PasTokenizerStack():
def __init__(self, s, comments=True):
diff --git a/DelphiTests/Tests.dpr b/DelphiTests/Tests.dpr
index 2f25df5..f8ce4d2 100644
--- a/DelphiTests/Tests.dpr
+++ b/DelphiTests/Tests.dpr
@@ -12,7 +12,7 @@ uses
DUnitX.Loggers.Xml.NUnit,
DUnitX.TestFramework,
MainTest in 'MainTest.pas',
- AGPascalTokeniser in '..\AGPascalTokeniser.pas';
+ AG.PascalTokeniser in '..\AG.PascalTokeniser.pas';
var
runner : ITestRunner;
diff --git a/DelphiTests/Tests.dproj b/DelphiTests/Tests.dproj
index 8e427c8..a63ec25 100644
--- a/DelphiTests/Tests.dproj
+++ b/DelphiTests/Tests.dproj
@@ -93,7 +93,7 @@
MainSource
-
+
Cfg_2
Base
@@ -455,13 +455,13 @@
1
-
+
+
-
False