読者です 読者をやめる 読者になる 読者になる

倍返しにするJavaAgent

計算機

YAPC::Asia Tokyo 2013 3日目に行ってきた。Perl知らないけど。

LTで、半沢直樹のネタに乗っかって、関数の返り値を倍返しにする何かを作ったとかいうネタを話してた人がいたので、Javaでパクった。

javassistバイトコード弄ってる。

hanzawa_java

class Test {
    int return1() {
        System.out.println("##treturn1##");
        return 1;
    }

    static int return2() {
        System.out.println("##treturn2##");
        return 2;
    }

    public static void main(String[] args) {
        Test inst = new Test();
        System.out.println(inst.return1());
        System.out.println(return2());
    }
}

$ java Test
##treturn1##
1
##treturn2##
2

$ java -javaagent:hanzawa.jar Test
##treturn1##
2
##treturn2##
4

参考文献