Beispiel #1
0
 def visitLiteral(self, ctx: MCParser.LiteralContext):
     if ctx.BOOLEANLIT():
         return BooleanLiteral(bool("1" if ctx.BOOLEANLIT().getText() == 'true' else ""))
     elif ctx.INTLIT():
         return IntLiteral(int(ctx.INTLIT().getText()))
     elif ctx.STRINGLIT():
         return StringLiteral(ctx.STRINGLIT().getText())
     else:
         return FloatLiteral(float(ctx.FLOATLIT().getText()))
Beispiel #2
0
 def visitLiteral(self, ctx: MCParser.LiteralContext):
     if ctx.INTLIT():
         return IntLiteral(int(ctx.INTLIT().getText()))
     elif ctx.FLOATLIT():
         return FloatLiteral(float(ctx.FLOATLIT().getText()))
     elif ctx.STRINGLIT():
         return StringLiteral(str(ctx.STRINGLIT().getText()))
     else:
         val = True if ctx.BOOLLIT().getText() == "true" else False
         return BooleanLiteral(val)
Beispiel #3
0
 def visitLiteral(self, ctx:MCParser.LiteralContext):
     # literal : INTLIT | FLOATLIT | BOOLEANLIT | STRINGLIT;
     if ctx.INTLIT():
         return IntLiteral(int(ctx.INTLIT().getText()))
     elif ctx.FLOATLIT():
         return FloatLiteral(float(ctx.FLOATLIT().getText()))
     elif ctx.STRINGLIT():
         return StringLiteral(ctx.STRINGLIT().getText())
     elif ctx.BOOLEANLIT():
         return BooleanLiteral(ctx.BOOLEANLIT().getText())
Beispiel #4
0
 def visitLiteral(self, ctx: MCParser.LiteralContext):
     if ctx.INTLIT():
         return IntLiteral(int(ctx.INTLIT().getText()))
     elif ctx.REAL():
         return FloatLiteral(float(ctx.REAL().getText()))
     elif ctx.BOOLLIT():
         if ctx.BOOLLIT().getText() == 'true':
             return BooleanLiteral(bool(True))
         else:
             return BooleanLiteral(bool(False))
     else:
         return StringLiteral(str(ctx.STRINGLIT().getText()))
Beispiel #5
0
 def visitLiteral(self, ctx: MCParser.LiteralContext):
     if ctx.INTLIT():
         return IntLiteral(int(ctx.INTLIT().getText()))
     if ctx.FLOATLIT():
         return FloatLiteral(float(ctx.FLOATLIT().getText()))
     if ctx.STRINGLIT():
         return StringLiteral(ctx.STRINGLIT().getText())
     if ctx.BOOLLIT():
         if (ctx.BOOLLIT().getText() == 'true'):
             boollit = True
         else:
             boollit = False
         return BooleanLiteral(boollit)
Beispiel #6
0
 def visitLiteral(self, ctx: MCParser.LiteralContext):
     # literal: INTLIT|FLOATLIT|BOOLLIT|STRINGLIT;
     if (ctx.INTLIT()):
         return IntLiteral(int(ctx.INTLIT().getText()))
     elif (ctx.FLOATLIT()):
         return FloatLiteral(float(ctx.FLOATLIT().getText()))
     elif (ctx.BOOLLIT()):
         text = ctx.BOOLLIT().getText().lower()
         if (text == 'true'):
             return BooleanLiteral(True)
         elif (text == 'false'):
             return BooleanLiteral(False)
     else:
         return StringLiteral(ctx.STRINGLIT().getText())