タグ

関連タグで絞り込む (0)

  • 関連タグはありません

タグの絞り込みを解除

rubyとblockとRubyに関するclavierのブックマーク (7)

  • Ruby block/proc/lambdaの使いどころ - Qiita

    (2015/10/13追記) 今なら、他言語には無名関数やcallback関数というものがありますねとか、イベント駆動の世界を覗いてから戻ってくるとより腑に落ちるかもしれませんとか、もう少し全体観の中で説明する気がしますが、当時は記事の様な理解が役に立ったことは事実なので、引き続き公開を続けます。 (2013/11/29追記) block_given? について Twitter上で「Kernel.#block_given?についての解説があってもよさそう」と 指摘を頂きましたので、文下部に追記しました。 概要 Ruby on Rails Tutorialのエッセンスを自分なりに整理してみる4 Railsを触る際知っていると便利なRubyの基礎 [ブロックとかシンボルとか] http://qiita.com/kidachi_/items/46a6e49b6306655ccd64 の続き。

    Ruby block/proc/lambdaの使いどころ - Qiita
  • Ruby でスコープをはずれたときに自動で何かをする | tech - 氾濫原

    Guard オブジェクト Perl だと Guard オブジェクトとかいうハックがあって、スコープを出るタイミングで必ず呼ばれるファイナライザを使って、あるスコープでだけ有効な処理を書けたりします。 例えば、DB のトランザクションや、あるいは以下のように依存するプロセスをあるスコープでだけ起動して終了するような用途で使われています。 { my $guard = Proc::Guard->new(command => [ "memcached", "-p", "12321" ]); # do something ... }; # memcached has been killed 適当なメソッドにブロック(サブルーチン)を渡せばええやん、という気もしますし、実際 Ruby の transaction の場合そういう感じになります (Perl でももちろん同じようなサブルーチンを書くことはで

  • 【ruby】ブロックの変わりにProcオブジェクトを引数に渡す - tanihiro.log

    ブロックを渡すようなメソッドは、Procオブジェクトを引数として渡すことも出来ます。 普通にブロックを渡すとこんな感じ。 hoge = %w(foo bar piyo) hoge.each do |val| puts val end これをProcオブジェクトを引数として渡すとこんな感じになります。 hoge = %w(foo bar piyo) block = Proc.new {|val| puts val } hoge.each &block Procオブジェクトを格納した変数を引数として渡す時に、先頭に「&」をつけると、渡すことができます。 これだけだと、あんまり利用価値が無さそうに思いますが、応用するとかなり便利です。 シンボルの先頭に「&」をつける 引数の先頭に「&」をつけると、Procオブジェクト以外の場合は渡ってきた値に対して「to_proc」メソッドを呼び出した結果が実行

    【ruby】ブロックの変わりにProcオブジェクトを引数に渡す - tanihiro.log
  • メタプログラミングRuby | 番外編 | Ghostableでゴーストメソッドを少しだけ楽に作成 - Tbpgr Blog

    概要 Ghostableでゴーストメソッドを少しだけ楽に作成 内容 ゴーストメソッドの定義を支援するモジュール=Ghostableを作成します。 今回想定するのはあるパターンの文字列を持つメソッド名のみゴーストメソッドとして扱います。 通常のゴーストメソッド ソースコード # encoding: utf-8 module Lawable def method_missing(method_name, *args, &block) lawnized_call method_name.to_s if method_name.to_s.include?("呼ぶ") end def lawnized_call(name) puts "create new method = #{name}" singleton_class.class_eval do define_method name do na

    メタプログラミングRuby | 番外編 | Ghostableでゴーストメソッドを少しだけ楽に作成 - Tbpgr Blog
  • はてなブログ | 無料ブログを作成しよう

    勉強が習慣になってるとセルフネグレクトしなくて済む。2025年の英語いろいろ 梅つま子です。 英語を日々学習しています。 フィリピンに留学したことがあったり、20年くらい前に英検1級を取ってたりと、20代半ばまでは英語とはかなり接近した時期がありましたが、 就職したり子育てしたりで30代は英語とは全く縁のない時期を過ごし、 上の子が小学…

    はてなブログ | 無料ブログを作成しよう
  • Shibuya.rbで発表してきた #shibuyarb #rubymotionjp - ainameの日記

    以前、書いた記事(最近投げたpull requestとかソーシャルコーディングとかリファクタリング )の反響が若干あったので、RubyMotionTokyo meetupの宣伝も兼ねて発表してきた。 ibをリファクタリングして、tsort依存関係解決の機能を導入したという話。 tsortの使い方の話は一切してなかったのですけど、公式ドキュメントの通り使うとすげー簡単に使えます。 http://doc.ruby-lang.org/ja/2.0.0/class/TSort.html require 'tsort' class Hash include TSort alias tsort_each_node each_key def tsort_each_child(node, &block) fetch(node).each(&block) end end {1=>[2], 2=>[3, 4]

    Shibuya.rbで発表してきた #shibuyarb #rubymotionjp - ainameの日記
  • Recipeが実行されるまでの仕組みと変数の関係 - Taste of Tech Topics

    こんにちは、Ruby大好きMiyakeです :-) "DevOps"という言葉がクローズアップされるようになってから、Chefがかなり流行ってきてますよね。 ブログとかTwitterをみていても、ここ1年で実際の業務や、開発環境を構築するのにChefを使ってる人がかなり増えたな~って思っています :-) 今日は、そんなChefを使っていく中で気になった、Recipeが実行されるまでの仕組みと、Recipe内で宣言している変数の関係について調べてみたので、紹介したいと思います。 実はこのRecipeが実行されるまでの仕組みを理解することで、Recipe内で宣言した変数の使い方が、より理解できるようになります :-) まずは、Recipeが実行されるまでの仕組みが見えてくるよう、わざと誤った変数の使い方をしたサンプルを書いてみました。 誤った変数の使い方をしているのは、リソースBlockとリソ

    Recipeが実行されるまでの仕組みと変数の関係 - Taste of Tech Topics
  • 1