Пример #1
0
    def t_func_idt(self, s):

        r'[a-zA-Z_][\.a-zA-Z_0-9]*'

        self.rv.append(Token(type='id', attr=s))
Пример #2
0
    def t_stringt(self, s):

        r'(\"|\')([^\"\'])*(\"|\')'

        self.rv.append(Token(type='string', attr=s))
Пример #3
0
    def t_bracketst(self, s):

        r'\[|\]|\(|\)'

        self.rv.append(Token(type=s, attr=s))
Пример #4
0
    def t_separatort(self, s):

        r'[,]'

        self.rv.append(Token(type=s, attr=s))
Пример #5
0
    def t_numbert(self, s):

        r'(\d+(\.(\d+)?)?|\.(\d+)?)((e|E)(\+|-)?\d+)?'

        self.rv.append(Token(type='number', attr=s))
Пример #6
0
    def t_nott(self, s):

        r'not'

        self.rv.append(Token(type='not', attr=s))
Пример #7
0
    def t_groupt(self, s):

        r'\(|\)'

        self.rv.append(Token(type=s, attr=s))
Пример #8
0
    def t_logical_opt(self, s):

        r'and|or'

        self.rv.append(Token(type='logop', attr=s))
Пример #9
0
    def t_relational_opt(self, s):

        r'<(?!(<|=))|>(?!(>|=))|<=|>=|\!=|=='

        self.rv.append(Token(type='relop', attr=s))
Пример #10
0
    def t_shift_opt(self, s):

        r'<<|>>'

        self.rv.append(Token(type=s, attr=s))
Пример #11
0
    def t_mul_opt(self, s):

        r'\*|\/'

        self.rv.append(Token(type='mulop', attr=s))
Пример #12
0
    def t_add_opt(self, s):

        r'\+|-'

        self.rv.append(Token(type=s, attr=s))