selfは糖衣構文で&が付いていようがついてなかろうが、引数を使う時はself。
&selfで定義して、使う時は&をとったselfで使うことに少しもやっとしていたので、理解できてよかった
(&selfで定義するとselfが&selfとして利用できる糖衣構文)
struct ReactiveProperty<T> { value: T, } impl<T> ReactiveProperty<T> { fn value(&self) -> &T { &self.value // (self.valueの&) } fn value_mut(&mut self) -> &mut T { &mut self.value // (self.valueの&mut) } }