0
Кто-нибудь знает, как выполнять математические операции в codeModel? Я был везде и не могу понять. У меня есть сгенерированный класс, и я хочу, например. добавьте 2 переменных (я сделал это с помощью Long.staticInvoke("sum")
, но я имею в виду добавление, вычитание, умножение, деление и все такое). Пример вывода я хочу добиться:Java sun CodeModel математические операции
class C {
int a;
int b;
C() {
a=5;
b=7;
}
int foo() {
return (a+b)/4*7;
}
}
У меня есть что-то вроде этого:
try {
String className = "C";
JCodeModel model = new JCodeModel();
JDefinedClass jdc = model._class(className);
JFieldVar a = jdc.field(0, Integer.TYPE, "a");
JFieldVar b = jdc.field(0, Integer.TYPE, "b");
JMethod constructor = jdc.constructor(0);
constructor.body().assign(a, JExpr.lit(5));
constructor.body().assign(b, JExpr.lit(7));
JMethod foo = jdc.method(0,Double.TYPE,"foo");
foo.body()._return(/* WHAT GOES HERE? */);
File file = new File("./src/types/");
file.mkdirs();
model.build(file);
} catch(Exception e) {
e.printStackTrace();
}
любые идеи?