[ruby-list:50444] Re: [質問] インスタンスメッソド hookについて
From:
<yamataka@...08.itscom.net>
Date:
2016-10-26 05:22:06 UTC
List:
ruby-list #50444
山口です。
なかださん、内海さん、市田さん、dezawaさん
それぞれコード提示いただき、大変ありがとうございます。
Rubyコード記述への理解が、非常に深まりました。
インスタンスメッソド呼び出しと、Class内メッソド定義が同じ方が、
後々コードを見返した際に、分かりやすいと思うので、
今回は、dezawaさんのコードを参考にさせて頂こうと思います。
----- Original Message -----
> 市田さんの言われる
> > 共通の処理をくくりだすというのであれば、共通部分を別メソッドとして定
義
> > して、対象となるメソッドの先頭で呼び出すというのはどうでしょうか。
>
> が良いのでは
>
> class WebAPI
>
> attr_reader :is_in_nw
>
> def initialize(ip,is_in_nw=false)
> @ip = ip
> @is_in_nw = is_in_nw
> end
>
> def check_and_go(&block)
> if !is_in_nw then
> puts "TV(#{@ip}) is not in Network"
> return nil
> end
> yield
> end
>
> def Register(code)
> check_and_go{
> puts "Register(code)"
> }
> end
> end
> code=12
> webapi =WebAPI.new("ip",true)
> webapi.Register(code)
> webapi =WebAPI.new("ip",false)
> webapi.Register(code)
>