diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/MoonP/moon_parser.cpp | 9 | ||||
-rw-r--r-- | src/MoonP/moon_parser.h | 1 |
2 files changed, 4 insertions, 6 deletions
diff --git a/src/MoonP/moon_parser.cpp b/src/MoonP/moon_parser.cpp index 358b660..0ea6e12 100644 --- a/src/MoonP/moon_parser.cpp +++ b/src/MoonP/moon_parser.cpp | |||
@@ -45,7 +45,6 @@ MoonParser::MoonParser() { | |||
45 | MultiLineComment = multi_line_open >> multi_line_content >> multi_line_close; | 45 | MultiLineComment = multi_line_open >> multi_line_content >> multi_line_close; |
46 | EscapeNewLine = expr('\\') >> *(set(" \t") | MultiLineComment) >> -Comment >> Break; | 46 | EscapeNewLine = expr('\\') >> *(set(" \t") | MultiLineComment) >> -Comment >> Break; |
47 | Space = *(set(" \t") | MultiLineComment | EscapeNewLine) >> -Comment; | 47 | Space = *(set(" \t") | MultiLineComment | EscapeNewLine) >> -Comment; |
48 | SomeSpace = +set(" \t") >> -Comment; | ||
49 | SpaceBreak = Space >> Break; | 48 | SpaceBreak = Space >> Break; |
50 | EmptyLine = SpaceBreak; | 49 | EmptyLine = SpaceBreak; |
51 | AlphaNum = range('a', 'z') | range('A', 'Z') | range('0', '9') | '_'; | 50 | AlphaNum = range('a', 'z') | range('A', 'Z') | range('0', '9') | '_'; |
@@ -396,7 +395,7 @@ MoonParser::MoonParser() { | |||
396 | export_op = expr('*') | expr('^'); | 395 | export_op = expr('*') | expr('^'); |
397 | Export = key("export") >> (ClassDecl | (Space >> export_op) | export_values); | 396 | Export = key("export") >> (ClassDecl | (Space >> export_op) | export_values); |
398 | 397 | ||
399 | variable_pair = sym(':') >> not_(SomeSpace) >> Space >> Variable; | 398 | variable_pair = sym(':') >> Variable; |
400 | 399 | ||
401 | normal_pair = ( | 400 | normal_pair = ( |
402 | KeyName | | 401 | KeyName | |
@@ -436,8 +435,8 @@ MoonParser::MoonParser() { | |||
436 | 435 | ||
437 | Backcall = -FnArgsDef >> Space >> symx("<-") >> Space >> ChainValue; | 436 | Backcall = -FnArgsDef >> Space >> symx("<-") >> Space >> ChainValue; |
438 | 437 | ||
439 | ExpList = Seperator >> Exp >> *(sym(',') >> Exp); | 438 | ExpList = Seperator >> Exp >> *(sym(',') >> White >> Exp); |
440 | ExpListLow = Seperator >> Exp >> *((sym(',') | sym(';')) >> Exp); | 439 | ExpListLow = Seperator >> Exp >> *((sym(',') | sym(';')) >> White >> Exp); |
441 | 440 | ||
442 | ArgLine = CheckIndent >> Exp >> *(sym(',') >> Exp); | 441 | ArgLine = CheckIndent >> Exp >> *(sym(',') >> Exp); |
443 | ArgBlock = ArgLine >> *(sym(',') >> SpaceBreak >> ArgLine) >> PopIndent; | 442 | ArgBlock = ArgLine >> *(sym(',') >> SpaceBreak >> ArgLine) >> PopIndent; |
@@ -457,7 +456,7 @@ MoonParser::MoonParser() { | |||
457 | ); | 456 | ); |
458 | 457 | ||
459 | const_value = (expr("nil") | expr("true") | expr("false")) >> not_(AlphaNum); | 458 | const_value = (expr("nil") | expr("true") | expr("false")) >> not_(AlphaNum); |
460 | minus_exp = expr('-') >> not_(SomeSpace) >> Exp; | 459 | minus_exp = expr('-') >> not_(set(" \t")) >> Exp; |
461 | sharp_exp = expr('#') >> Exp; | 460 | sharp_exp = expr('#') >> Exp; |
462 | tilde_exp = expr('~') >> Exp; | 461 | tilde_exp = expr('~') >> Exp; |
463 | not_exp = expr("not") >> not_(AlphaNum) >> Exp; | 462 | not_exp = expr("not") >> not_(AlphaNum) >> Exp; |
diff --git a/src/MoonP/moon_parser.h b/src/MoonP/moon_parser.h index a0ad2fa..2107a14 100644 --- a/src/MoonP/moon_parser.h +++ b/src/MoonP/moon_parser.h | |||
@@ -107,7 +107,6 @@ private: | |||
107 | rule Indent; | 107 | rule Indent; |
108 | rule EscapeNewLine; | 108 | rule EscapeNewLine; |
109 | rule Space; | 109 | rule Space; |
110 | rule SomeSpace; | ||
111 | rule SpaceBreak; | 110 | rule SpaceBreak; |
112 | rule EmptyLine; | 111 | rule EmptyLine; |
113 | rule AlphaNum; | 112 | rule AlphaNum; |