@Override public DataType visitFuncdef(@NotNull PythonParser.FuncdefContext ctx) { String name = ctx.NAME().getText(); scope.setMethodName(name); String[] argumentNames = visitParameters(ctx.parameters()); Integer numberParms = argumentNames.length; // System.out.println(name + numberParms); scope.declareFunction(name, numberParms); scope.addFunctionSuite(name, numberParms, ctx.suite()); scope.addFunctionArgumentsNames(name, numberParms, argumentNames); // mv = cw.visitMethod(ACC_PUBLIC | ACC_STATIC, name, "()V", null, null);//TODO to // function call // visitSuite(ctx.suite()); // mv.visitMaxs(0, 0); // mv.visitEnd(); // scope.setMethodName(name); // scope.refreshLocalVariables(); return null; }