def visitOperand(self, ctx: BKITParser.OperandContext): if ctx.getChildCount() == 3: return self.visit(ctx.exp()) else: if ctx.ID(): return Id(ctx.ID().getText()) else: return self.visit(ctx.getChild(0))
def visitOperand(self, ctx: BKITParser.OperandContext): if ctx.literal(): return self.visit(ctx.literal()) elif ctx.ID(): return Id(ctx.ID().getText()) elif ctx.callexpr(): return self.visit(ctx.callexpr()) elif ctx.expr() and ctx.LB() and ctx.RB(): return self.visit(ctx.expr())
def visitOperand(self, ctx: BKITParser.OperandContext): # '(' exp ')' if (ctx.getChildCount() == 3): return ctx.exp().accept(self) # ID | INTLIT | BOOLIT if (ctx.ID() != None): return Id(ctx.ID().getText()) if (ctx.INTLIT() != None): return IntLiteral(ctx.INTLIT().getText()) if (ctx.BOOLIT() != None): return BooleanLiteral(ctx.BOOLIT().getText())
def visitOperand(self, ctx: BKITParser.OperandContext): if ctx.ID(): return Id(ctx.ID().getText()) # elif ctx.typearray(): return self.visit(ctx.typearray()) elif ctx.literal(): return self.visit(ctx.literal()) elif ctx.call_func(): return self.visit(ctx.call_func()) else: return self.visit(ctx.exp())
def visitOperand(self, ctx:BKITParser.OperandContext): if ctx.ID(): return Id(ctx.ID().getText()) if ctx.primitive_data(): return self.visitPrimitive_data(ctx.primitive_data()) if ctx.array_lit(): return self.visitArray_lit(ctx.array_lit())
def visitOperand(self, ctx: BKITParser.OperandContext): if ctx.var_non_init(): return self.visitVar_non_init(ctx.var_non_init()) if ctx.primitive_data(): return self.visitPrimitive_data(ctx.primitive_data()) if ctx.array_lit(): return self.visitArray_lit(ctx.array_lit())
def visitOperand(self, ctx: BKITParser.OperandContext): if ctx.INTLIT(): return IntLiteral(int(ctx.INTLIT().getText())) if ctx.BOOLIT(): return BoolLiteral(bool(ctx.BOOLIT().getText())) if ctx.ID(): return Id(ctx.ID().getText()) return self.visitExp(ctx.exp())
def visitOperand(self, ctx: BKITParser.OperandContext): if ctx.ID(): return Id(ctx.ID().getText()) elif ctx.type_list(): return self.visit(ctx.type_list()) elif ctx.sub_expression(): return self.visit(ctx.sub_expression()) elif ctx.array_id(): return self.visit(ctx.array_id()) elif ctx.function_call(): return self.visit(ctx.function_call()) elif ctx.index_operator(): return self.visit(ctx.index_operator())
def visitOperand(self, ctx: BKITParser.OperandContext): if ctx.callee(): return self.visit(ctx.callee()) elif ctx.INTERGER(): return VarDecl(Id(ctx.ID().getText()), [], IntLiteral(int(ctx.INTERGER().getText(), 0))) elif ctx.FLOAT(): return VarDecl(Id(ctx.ID().getText()), [], FloatLiteral(float(ctx.FLOAT().getText()))) elif ctx.BOOLEAN(): return VarDecl(Id(ctx.ID().getText()), [], BooleanLiteral(ctx.BOOLEAN().getText() == 'True')) elif ctx.STRING(): return VarDecl(Id(ctx.ID().getText()), [], StringLiteral(ctx.STRING().getText())) elif ctx.ID(): return VarDecl(Id(ctx.ID().getText()), [], None) return ArrayLiteral(ctx.ARRAY().getText())
def visitOperand(self, ctx: BKITParser.OperandContext): if ctx.ID(): return Id(ctx.ID().getText()) elif ctx.INT_LIT(): return IntLiteral( self.IntegerStandardization(ctx.INT_LIT().getText())) elif ctx.FLOAT_LIT(): return FloatLiteral(float(ctx.FLOAT_LIT().getText())) elif ctx.BOOL_LIT(): temp = ctx.BOOL_LIT().getText() if temp == 'False': return BooleanLiteral(False) else: return BooleanLiteral(True) elif ctx.STRING_LIT(): return StringLiteral(ctx.STRING_LIT().getText()) elif ctx.function_call(): return self.visit(ctx.function_call()) elif ctx.element_expression(): return self.visit(ctx.element_expression()) elif ctx.array_lit(): return self.visit(ctx.array_lit()) else: return self.visit(ctx.exp())
def visitOperand(self, ctx: BKITParser.OperandContext): if ctx.callee(): return self.visit(ctx.callee()) elif ctx.INTERGER(): return IntLiteral(int(ctx.INTERGER().getText(), 0)) elif ctx.FLOAT(): return FloatLiteral(float(ctx.FLOAT().getText())) elif ctx.BOOLEAN(): return BooleanLiteral(ctx.BOOLEAN().getText() == 'True') elif ctx.STRING(): return StringLiteral(ctx.STRING().getText()) elif ctx.ID(): return Id(ctx.ID().getText()) return self.visit(ctx.array())
def visitOperand(self, ctx: BKITParser.OperandContext): """Return operand object""" if ctx.ID(): return Id(ctx.ID().getText()) else: return ctx.literal().accept(self)