0

セッターが定義されたクラスがある場合、そのクラスのインスタンスから関数として生成されたメソッドを参照するにはどうすればよいですか。スペックの種類は、それが変数+'= "(daftのようです)のIDであることを示唆していますが、これは解析されません。

したがって、たとえば:

class Bar {

  set foo(int value) {
  //whatever
  }
}

typedef F(int value);

void main() {
  F f = new Bar().foo=; //Fails, but what should this be??
  f(5);
}
4

1 に答える 1

2

セッターには名前foo=が付けられていますが、これは希望どおりに参照できるものではありません。dart:mirrorsを見ても、MethodMirror(セッターを含むオブジェクトメソッドのミラー)を呼び出す方法はありません。これは簡単に次のように書き直すことができます。

class Bar {

  set foo(int value) {
  //whatever
  }
}

typedef F(int value);

void main() {
  Bar b = new Bar();
  F f = (int value) => b.foo = value;
  f(5);
}
于 2012-09-22T00:25:33.630 に答える