60件ヒット
  
    
      [1-60件を表示]
    
  
    (0.079秒)
  
  
ライブラリ
- ビルトイン (36)
- continuation (12)
- pathname (12)
キーワード
- Complex (12)
- Continuation (12)
- Pathname (12)
- Proc (12)
- TracePoint (12)
検索結果
- 
      Proc (6055.0)
- 
      
      
      ブロックをコンテキスト(ローカル変数のスコープやスタックフ レーム)とともにオブジェクト化した手続きオブジェクトです。 ...た手続きオブジェクトです。
 Proc は ローカル変数のスコープを導入しないことを除いて
 名前のない関数のように使えます。ダイナミックローカル変数は
 Proc ローカルの変数として使えます。
 Proc がローカル変数のスコー......][ruby]{
 var = 1
 $foo = Proc.new { var }
 var = 2
 def foo
 $foo.call
 end
 p foo # => 2
 //}
 ===[a:should_use_next] 手続きを中断して値を返す
 手続きオブジェクトを中断して、呼出し元(呼び出しブロックでは yield、それ以外では Proc#call)
 へジャン......[ruby]{
 def foo
 f = Proc.new{
 next 1
 2 # この行に到達することはない
 }
 end
 p foo().call #=> 1
 //}
 ===[a:block] Proc オブジェクトをブロック付きメソッド呼び出しに使う
 ブロック付きメソッドに対して Proc オブジェク...
- 
      TracePoint (6023.0)
- 
      
      
      Kernel.#set_trace_func と同様の機能をオブジェクト指向的な API で 提供するクラスです。 ...Kernel.#set_trace_func と同様の機能をオブジェクト指向的な API で
 提供するクラスです。
 //emlist[例:例外に関する情報を収集する][ruby]{
 trace = TracePoint.new(:raise) do |tp|
 p [tp.lineno, tp.event, tp.raised_exception]
 end
 # => #<TracePoint:0x007f786a452448......ivided by 0>]
 //}
 TracePoint.new または、TracePoint.trace で指定したブロック
 は、メソッドの引数(上記の例では :raise)に対応するイベントが発生した時に
 呼び出されます。
 発生するイベントの詳細については、TracePoint.new を参照し......ダー #12 TracePoint の紹介 (1): https://www.atdot.net/~ko1/diary/201212.html#d12
 * Ruby VM アドベントカレンダー #13 TracePoint の紹介 (2): https://www.atdot.net/~ko1/diary/201212.html#d13
 * Ruby VM アドベントカレンダー #14 TracePoint の紹介 (3): https://www.atdot.net...
- 
      Complex (6007.0)
- 
      
      
      複素数を扱うクラスです。 ...Complex オブジェクトを作成するには、Kernel.#Complex、
 Complex.rect、Complex.polar、Numeric#to_c、
 String#to_c のいずれかを使用します。
 //emlist[Complex オブジェクトの作り方][ruby]{
 Complex(1) # => (1+0i)
 Complex(2, 3) # => (2+3i)
 Complex.pola......r(2, 3) # => (-1.9799849932008908+0.2822400161197344i)
 Complex(0.3) # => (0.3+0i)
 Complex('0.3-0.5i') # => (0.3-0.5i)
 Complex('2/3+3/4i') # => ((2/3)+(3/4)*i)
 Complex('1@2') # => (-0.4161468365471424+0.9092974268256817i)
 3.to_c # => (3+0i)
 0.3.to_c # => (0.......# => ((2/3)+(3/4)*i)
 '1@2'.to_c # => (-0.4161468365471424+0.9092974268256817i)
 //}
 Complex オブジェクトは有理数の形式も実数の形式も扱う事ができます。
 //emlist[例][ruby]{
 Complex(1, 1) / 2 # => ((1/2)+(1/2)*i)
 Complex(1, 1) / 2.0 # => (0.5+0.5i)
 //}...
- 
      Pathname (6007.0)
- 
      
      
      パス名をオブジェクト指向らしく扱うクラスです。 ...うクラスです。
 Pathname オブジェクトはパス名を表しており、ファイルやディレクトリそのものを表してはいません。
 当然、存在しないファイルのパス名も扱えます。
 絶対パスも相対パスも扱えます。
 Pathname オブジェク......するメソッドはありません。
 Pathname のインスタンスメソッドには、ディレクトリのパスを返す Pathname#dirname のように、
 文字列操作だけで結果を返すものもあれば、ファイルの中身を読み出す Pathname#read のように
 ファイル......ムにアクセスするものもあります。
 Pathname オブジェクトの生成には、Pathname.new のほかに Kernel#Pathname も使えます。
 //emlist[例][ruby]{
 require 'pathname'
 Pathname.new("foo/bar") # => #<Pathname:foo/bar>
 Pathname("foo/bar") # => #<Pathname:foo/bar>
 //}...
- 
      Continuation (13.0)
- 
      
      
      継続を表すクラスです。 ...継続を表すクラスです。
 Kernel.#callcc { |cont| ... } の呼び出し
 は、直前の状態(ローカル変数の定義、スタックフレーム)を cont に記憶
 してブロックを実行します。cont は、Continuation クラスのインスタ
 ンスで、Continuation#call メ......を実行するこ
 とでいつでも記憶した状態を継続することができます。
 C 言語の setjmp()/longjmp() がわかる人は
 setjmp() == callcc {|c| }
 longjmp() == c.call
 と考えれば、わかりやすいかも知れません(ただし、callcc はスタックが深く......args を返します。
 例:
 以下は、Continuationによる無限ループの例
 
 def LOOP
 c = nil
 yield callcc {|cnt| c = cnt; true }
 c.call(false)
 end
 
 LOOP {|v| p v}
 
 => true
 false
 false
 false
 :
 :
 callcc とは、call-with-current-co...

 :
:![条件を削除 [x]](/images/drop-condition-icon.png)
 :クラス
:クラス