def visitLiteral(self, ctx: BKITParser.ProgramContext): if (ctx.INTEGER_LITERAL()): return IntLiteral(int(ctx.INTEGER_LITERAL().getText(), 0)) if (ctx.FLOAT_LITERAL()): return FloatLiteral(float(ctx.FLOAT_LITERAL().getText())) if (ctx.STRING_LITERAL()): return StringLiteral(ctx.STRING_LITERAL().getText()) if (ctx.array_literal()): return ctx.array_literal().accept(self) return ctx.bool_literal().accept(self)
def visitArray_type(self, ctx: BKITParser.ProgramContext): variable = { "id": Id(ctx.ID().getText()), "dimension": [], } # calc dimension listOfDimension = list( map(lambda x: int(x.getText(), 0), ctx.INTEGER_LITERAL())) variable['dimension'] = listOfDimension return variable