Beispiel #1
0
 def visitOperand(self, ctx:MCParser.OperandContext):
     if ctx.INTLIT(): return IntLiteral(int(ctx.INTLIT().getText()))
     elif ctx.FLOATLIT(): return FloatLiteral(float(ctx.FLOATLIT().getText()))
     elif ctx.STRLIT(): return StringLiteral(str(ctx.STRLIT().getText()))
     elif ctx.BOOLLIT(): return BooleanLiteral(True if ctx.BOOLLIT().getText() == 'true' else False)
     elif ctx.ID(): return Id(ctx.ID().getText())
     else: return self.visitCall(ctx.call())
Beispiel #2
0
 def visitOperand(self, ctx: MCParser.OperandContext):
     if ctx.INTLIT():
         return IntLiteral(ctx.INTLIT())
     elif ctx.BOOLLIT():
         return BooleanLiteral(ctx.BOOLLIT())
     elif ctx.FLOATLIT():
         return FloatLiteral(ctx.FLOATLIT())
     elif ctx.STRLIT():
         return StringLiteral(ctx.STRLIT().getText())
     elif ctx.ID():
         return Id(ctx.ID().getText())
     elif ctx.index_exp():
         return self.visit(ctx.index_exp())
     elif ctx.funcall():
         return self.visit(ctx.funcall())