私は (Java で) API を設計しており、ユーザーが Matlab から API にアクセスすることを期待しています。問題は、API で次のような機能を提供することです。
javaApi.waitUntilPredicateIsTrue(Predicate<JavaObj> test);
私のAPIは(バックグラウンドで) (ポーリングJava Obj
などの何らかのメカニズムを介して)のインスタンスを取得します。に渡されたときに、これらのインスタンスのいずれかが に評価されるまで、この API メソッドをブロックする必要があります。この API を Java から呼び出す場合は、次のようにします。Predicate
true
javaApi.waitUntilPredicateIsTrue(new Predicate<JavaObj>() {
public boolean evaluate(JavaObj jo) {
return "READY".equals(jo.getState());
}
});
あなたはアイデアを得る。
これを Matlab 内から呼び出すにはどうすればよいですか? Matlab の匿名内部クラスを使用できますか? classdef
インターフェイスを拡張する Matlab を宣言できますかPredicate
(これは Java ジェネリック バージョンに対応できますか)?