これを書くよりエレガントな方法はありますか?
@on_connection_callback.call() if @on_connection_callback
@on_connection_callback を 2 回参照する必要があり、イライラしています。
これを書くよりエレガントな方法はありますか?
@on_connection_callback.call() if @on_connection_callback
@on_connection_callback を 2 回参照する必要があり、イライラしています。
あなたはこれを次のように書くことができます
@on_connection_callback.call() rescue nil
この小さな宝石を使用してください:
tryit { @on_connection_callback.call() }
@on_connection_callback.call() if @on_connection_callback
は問題なく、実際にテストする最速の方法です。私は最近、ここでベンチマーク テストを行い、上記が以下よりもわずかに高速であることを証明しました。
@on_connection_callback && @on_connection_callback.call()
@on_connection_callback.instance_eval{call if self}
または
->p{p.call if p}.call(@on_connection_callback)