summaryrefslogtreecommitdiff
path: root/sci2jslex.py
diff options
context:
space:
mode:
authorSunil Shetye2018-06-18 23:41:23 +0530
committerSunil Shetye2018-06-19 10:31:46 +0530
commit1170404c7650cb531534b308f103c9b6abd50d14 (patch)
treea6a61ae2a9a3592440483906ce6c7254b3243553 /sci2jslex.py
parentcd5b0819762aa4a1cb72d29ab7b8c3ac65bbad76 (diff)
downloadsci2js-1170404c7650cb531534b308f103c9b6abd50d14.tar.gz
sci2js-1170404c7650cb531534b308f103c9b6abd50d14.tar.bz2
sci2js-1170404c7650cb531534b308f103c9b6abd50d14.zip
handle multiple rows
Diffstat (limited to 'sci2jslex.py')
-rwxr-xr-xsci2jslex.py37
1 files changed, 22 insertions, 15 deletions
diff --git a/sci2jslex.py b/sci2jslex.py
index ed8bdb18..6b82b2ae 100755
--- a/sci2jslex.py
+++ b/sci2jslex.py
@@ -68,6 +68,7 @@ predefinedvariables = {
tokens = [
'ASSIGNMENT',
'CLOSEBRACKET',
+ 'CLOSEOPENBRACKET',
'CLOSESQBRACKET',
'COLON',
'COMMA',
@@ -114,6 +115,27 @@ def t_SEMICOLON(t):
t.type = 'EOL'
return t
+def t_CLOSESQBRACKET(t):
+ r'([ \t]*\.\.+[ \t]*\n)?[ \t]*\]'
+ global afterarray, brackets, sqbrackets
+ afterarray = True
+ brackets -= 1
+ sqbrackets -= 1
+ return t
+
+def t_CLOSEOPENBRACKET(t):
+ r'[ \t]*\)\(([ \t]*(//.*)?\n?)*'
+ global afterarray, brackets
+ afterarray = True
+ return t
+
+def t_CLOSEBRACKET(t):
+ r'([ \t]*\.\.+[ \t]*\n)?[ \t]*\)'
+ global afterarray, brackets
+ afterarray = True
+ brackets -= 1
+ return t
+
def t_COMMENT(t):
r'\.\.+[ \t]*(//.*)?(\n[ \t]*|$)|//.*'
pass
@@ -187,14 +209,6 @@ def t_OPENSQBRACKET(t):
sqbrackets += 1
return t
-def t_CLOSESQBRACKET(t):
- r'[ \t]*\]'
- global afterarray, brackets, sqbrackets
- afterarray = True
- brackets -= 1
- sqbrackets -= 1
- return t
-
def t_OPENBRACKET(t):
r'\(([ \t]*(//.*)?\n?)*'
global afterarray, brackets
@@ -202,13 +216,6 @@ def t_OPENBRACKET(t):
brackets += 1
return t
-def t_CLOSEBRACKET(t):
- r'[ \t]*\)'
- global afterarray, brackets
- afterarray = True
- brackets -= 1
- return t
-
def t_NOT(t):
r'~'
global afterarray