from modgrammar import *
from functools import *
from math import *
#grammar_whitespace_mode = 'optional'
class Name(Grammar):
grammar = ONE_OR_MORE(OR(WORD('a-z'),WORD('A-Z')))
class Term(Grammar):
#grammar = OR(Name, (REF('Term'),'.',Name), (REF('Term'), '(', REF('Term'), ')'))
grammar = OR(Name,
(
REF('Term'),
OR(
(L('.'), Name),
(L('('),REF('Term'),')')
)
)
)
def grammar_elem_init(self, sd):
if isinstance(self[0],Name):
self.value = [self[0].string]
elif self[0][1].string == '.':