На информационном ресурсе применяются рекомендательные технологии (информационные технологии предоставления информации на основе сбора, систематизации и анализа сведений, относящихся к предпочтениям пользователей сети "Интернет", находящихся на территории Российской Федерации)

Декомпиляция Groovy байт кода

Для интересующихся Groovy:

result = 0
myMap = ["asdf": 1 , "qwer" : 2, "sdfg" : 10]= 0
println result

и тот же код после groovyc и jad
import groovy.lang.Binding;
import groovy.lang.Script;
import org.codehaus.groovy.runtime.ScriptBytecodeAdapter;

public class test1 extends Script
{

public test1()
{
}

public test1(Binding context)
{
super.setBinding(context);
}

public static void main(String args[])
{
Object aobj[] = {
test1.class, args
};
ScriptBytecodeAdapter.
invokeMethod(org.codehaus.groovy.runtime.InvokerHelper.class, "runScript", ((Object) (aobj)));
}

public Object run()
{
java.util.Map map = ScriptBytecodeAdapter.createMap(new Object[] {
"asdf", new Integer(1), "qwer", new Integer(2), "sdfg", new Integer(10)
});
java.util.Map _tmp = map;
ScriptBytecodeAdapter.setGroovyObjectProperty(map, this, "myMap");
Integer integer = new Integer(0);
Integer _tmp1 = integer;
ScriptBytecodeAdapter.setGroovyObjectProperty(integer, this, "result");
Object aobj[] = {
ScriptBytecodeAdapter.getGroovyObjectProperty(this, "result")
};
return ScriptBytecodeAdapter.invokeMethod(this, "println", ((Object) (aobj)));
}

public static Long __timeStamp;

static
{
Long long1;
Long long2;
long1 = new Long(0x118b2c76d19L);
Long _tmp = long1;
__timeStamp = (Long)long1;
long2 = new Long(0x118b2c76d19L);
Long _tmp1 = long2;
__timeStamp = (Long)long2;
}
}
наверх