| Index: tools/lexer_generator/rule_parser.py
|
| diff --git a/tools/lexer_generator/rule_parser.py b/tools/lexer_generator/rule_parser.py
|
| index 72d4e105bb716c36603f01fecc89e407cba6c323..1884df567cb49461d13415c2ab322c9df7a40e68 100644
|
| --- a/tools/lexer_generator/rule_parser.py
|
| +++ b/tools/lexer_generator/rule_parser.py
|
| @@ -26,7 +26,7 @@
|
| # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
|
| import ply.yacc as yacc
|
| -from automaton import Action
|
| +from automaton import Term, Action
|
| from rule_lexer import RuleLexer
|
| from regex_parser import RegexParser
|
| from nfa_builder import NfaBuilder
|
| @@ -148,12 +148,9 @@ class RuleParser:
|
| | IDENTIFIER LEFT_PARENTHESIS RIGHT_PARENTHESIS
|
| | IDENTIFIER LEFT_PARENTHESIS action_params RIGHT_PARENTHESIS'''
|
| if len(p) == 2 or len(p) == 4:
|
| - p[0] = (p[1], None)
|
| + p[0] = Term(p[1])
|
| elif len(p) == 5:
|
| - if len(p[3]) == 1:
|
| - p[0] = (p[1], p[3][0])
|
| - else:
|
| - p[0] = (p[1], p[3])
|
| + p[0] = Term(p[1], *p[3])
|
| else:
|
| raise Exception()
|
|
|
|
|