7

私は次のクラスを持っています:

class EventableNumber{

  num _val;

  num get val => _val;

  void set val(num v){

    num oldValue = _val;
    _val = v;
    _controller.add(new NumberChangedEvent(oldValue, v));

  }

  StreamController<NumberChangedEvent> _controller = new StreamController<NumberChangedEvent>();
  Stream<NumberChangedEvent> _stream;
  Stream<NumberChangedEvent> get onChange => (_stream != null) ? _stream : _stream = _controller.stream.asBroadcastStream();

  EventableNumber([num this._val = 0]);

}

=代入演算子をオーバーロードすることは可能ですか? getterとvalsetter を使用して、値が変更されたときにイベントを強制的に発生させるのではなく、.myEventableNum = 34myEventableNumonChangemyEventableNum.val = 34

4

1 に答える 1