2006-02-01から1ヶ月間の記事一覧

業務連絡?

大学のメールサーバ死亡中…orz

java.lang.reflect.Proxy

いまさらですが、 http://java.sun.com/j2se/1.5.0/ja/docs/ja/api/java/lang/reflect/Proxy.html これがすごい便利な気がしてならない。

tuigwaa

急にtuigwaaクローンを作りたくなってしまった件これが現実逃避というものなのですね。

irenka-overview

その2。irenkaは、コンパイルタイム、ランタイム(クラスロード)などに、その読み込み処理に先立ってプログラム構造を調査し、必要であれば生成/ロードされるクラスを書き換えることを最初の目標とする。例として、下記のようなクラスを考える。 @Hoge(Foo.c…

irenka-architecture

そろそろ明文化を始める。irenkaとは「掟」や「法律」を表すアイヌ語で、このプロジェクトはJavaプログラムに構文的/意味的な掟を容易に課すためのフレームワークを提供することを目標とする。 現状のJavaでは、アノテーションとその処理器Aptなどによって実…

variable injection

apt

たぶん発想がアフォすぎて誰も手を出さなかったinjection. public class Hoge { @Injection private static final String[] FOO = {"dummy"}; public static void main(String[] args) { @Injection int bar = 0; System.out.println(FOO[bar]); } }annotati…

Property

同じ日付に2回トラバ送ってもしょうがないので省略。 下の項と同じネタで。書き方はともかくとして、こんな使い方できそうですねぇ annotation ? annotates ?f name Property getter = ?g setter = ?s apply TemplateProcessor.process(?f, ?g, ?s) public c…

id:masataka_k:20060215 からのインスパイア。 public class ClassTmpl { private String _member; public Clazz(String test) { _member = test; } public String template() { return _member != null ? _member : ""; } } public class Mixin { private S…