Example #1
0
 def eval(self):
     if self.operator == '+':
         return BasicType(self.left.eval().value + self.right.eval().value)
     elif self.operator == '-':
         return BasicType(self.left.eval().value - self.right.eval().value)
     elif self.operator == '*':
         return BasicType(self.left.eval().value * self.right.eval().value)
     elif self.operator == '/':
         return BasicType(self.left.eval().value / self.right.eval().value)
     elif self.operator == '%':
         return BasicType(self.left.eval().value % self.right.eval().value)
Example #2
0
def p_number(p):
    '''
    number : INT
           | DOUBLE
    '''
    p[0] = BasicType(p[1])
Example #3
0
def p_string(p):
    '''
    string : STRVALUE
    '''
    p[0] = BasicType(p[1])