るりまサーチ

最速Rubyリファレンスマニュアル検索!
210件ヒット [1-100件を表示] (0.059秒)
トップページ > クエリ:p[x] > クエリ:LocalJumpError[x]

別のキーワード

  1. openssl p
  2. openssl p=
  3. fileutils mkdir_p
  4. kernel p
  5. kernel $-p

検索結果

<< 1 2 3 > >>

LocalJumpError (44000.0)

ある Proc オブジェクトの作成元スコープがすでに終了しているとき、 その Proc オブジェクト内で return, break, retry のいずれかを実行すると発生します。

...ある Proc オブジェクトの作成元スコープがすでに終了しているとき、
その Proc オブジェクト内で
return, break, retry のいずれかを実行すると発生します。

P
roc の例を参照してください。...

LocalJumpError#exit_value -> object (24076.0)

例外 LocalJumpError を発生する原因となった break や return に渡した値を返します。

...例外 LocalJumpError を発生する原因となった
break や return に渡した値を返します。

例:

def foo
p
roc { return 10 }
end

begin
foo.call
rescue LocalJumpError => err
p
err # => #<LocalJumpError: return from block-closure>
p
err.reason...
...# => :return
p
err.exit_value # => 10
end

begin
Block.new { break 5 }.call
rescue LocalJumpError => err
p
err # => #<LocalJumpError: break from block-closure>
p
err.reason # => :break
p
err.exit_value # => 5
end...

LocalJumpError#reason -> Symbol (24060.0)

例外を発生させた原因をシンボルで返します。

...foo
p
roc { return 10 }
end

begin
foo.call
rescue LocalJumpError => err
p
err # => #<LocalJumpError: return from block-closure>
p
err.reason # => :return
p
err.exit_value # => 10
end

begin
Block.new { break 5 }.call
rescue LocalJumpError =>...
...err
p
err # => #<LocalJumpError: break from block-closure>
p
err.reason # => :break
p
err.exit_value # => 5
end...

メソッド呼び出し(super・ブロック付き・yield) (6180.0)

メソッド呼び出し(super・ブロック付き・yield) * super * block * yield * block_arg * numbered_parameters * call_method

...メソッド呼び出し(super・ブロック付き・yield)
* super
* block
* yield
* block_arg
* numbered_parameters
* call_method

//emlist[例][ruby]{
foo.bar()
foo.bar
bar()
p
rint "hello world\n"
p
rint
Class.new
Class::new
//}

文法:

[式 `.'] 識別子 [`(' [[`*']...
...
す。

`.' と `::' とはほぼ同じ意味です。但し、定数を表す場合は、
`::' を使わなければいけません(例: Math::PI)。逆に、

//emlist[][ruby]{
Klass::Foo
//}

とした場合、常に定数と見なされるという制限があります。
`::' を、クラ...
...elem
}
p
sum # => 55
//}

ブロックパラメータの代入はd:spec/operator#multiassignと同じルールで行われます。
また yield を実行したメソッドにブロックが渡されていない
(ブロック付きメソッド呼び出しではない)時は例外 LocalJumpError...

Proc (6066.0)

ブロックをコンテキスト(ローカル変数のスコープやスタックフ レーム)とともにオブジェクト化した手続きオブジェクトです。

...た手続きオブジェクトです。

P
roc は ローカル変数のスコープを導入しないことを除いて
名前のない関数のように使えます。ダイナミックローカル変数は
P
roc ローカルの変数として使えます。

P
roc がローカル変数のスコー...
...][ruby]{
var = 1
$foo = Proc.new { var }
var = 2

def foo
$foo.call
end

p
foo # => 2
//}

===[a:should_use_next] 手続きを中断して値を返す

手続きオブジェクトを中断して、呼出し元(呼び出しブロックでは yield、それ以外では Proc#call)
へジャン...
...は、Proc オブジェクトが呼び出しブロックとして振舞う際の制限です。

//emlist[問題なし][ruby]{
(1..5).each { break }
//}

//emlist[LocalJumpError が発生します。][ruby]{
p
r = Proc.new { break }
(1..5).each(&pr)
//}

===[a:lambda_proc] lambda と proc と Proc.ne...

絞り込み条件を変える

Kernel.#proc -> Proc (3266.0)

与えられたブロックから手続きオブジェクト (Proc のインスタンス) を生成して返します。Proc.new に近い働きをします。

...与えられたブロックから手続きオブジェクト (Proc のインスタンス)
を生成して返します。Proc.new に近い働きをします。

ブロックが指定されなければ、呼び出し元のメソッドで指定されたブロック
を手続きオブジェクトと...
...ied to create Proc object without a block」
が出力され、Ruby 2.7 では
ArgumentError (tried to create Proc object without a block)
が発生します。

ブロックを指定しない proc は、Ruby 2.7 では
$VERBOSE = true のときには警告メッセージ
「warning: Capturing the g...
...は、Proc オブジェクトが呼び出しブロックとして振舞う際の制限です。

//emlist[問題なし][ruby]{
(1..5).each { break }
//}

//emlist[LocalJumpError が発生します。][ruby]{
p
r = Proc.new { break }
(1..5).each(&pr)
//}

===[a:lambda_proc] lambda と proc と Proc.ne...

Kernel.#proc { ... } -> Proc (3266.0)

与えられたブロックから手続きオブジェクト (Proc のインスタンス) を生成して返します。Proc.new に近い働きをします。

...与えられたブロックから手続きオブジェクト (Proc のインスタンス)
を生成して返します。Proc.new に近い働きをします。

ブロックが指定されなければ、呼び出し元のメソッドで指定されたブロック
を手続きオブジェクトと...
...ied to create Proc object without a block」
が出力され、Ruby 2.7 では
ArgumentError (tried to create Proc object without a block)
が発生します。

ブロックを指定しない proc は、Ruby 2.7 では
$VERBOSE = true のときには警告メッセージ
「warning: Capturing the g...
...は、Proc オブジェクトが呼び出しブロックとして振舞う際の制限です。

//emlist[問題なし][ruby]{
(1..5).each { break }
//}

//emlist[LocalJumpError が発生します。][ruby]{
p
r = Proc.new { break }
(1..5).each(&pr)
//}

===[a:lambda_proc] lambda と proc と Proc.ne...
...(Proc のインスタンス)
を生成して返します。Proc.new に近い働きをします。


また、lambda に & 引数を渡すのは推奨されません。& 引数ではなくてブロック記法で記述する必要があります。

& 引数を渡した lambda は Warning[:deprecat...
...block is deprecated; use the proc without lambda instead」
を出力します。

@raise ArgumentError ブロックを省略した呼び出しを行ったときに発生します。

//emlist[例][ruby]{
def foo &block
lambda(&block)
end

it = foo{p 12}
it.call #=> 12
//}

@see Proc,Proc.new

==...
...l block is deprecated; use the proc without lambda instead」
を出力します。

@raise ArgumentError ブロックを省略した呼び出しを行ったときに発生します。

//emlist[例][ruby]{
def foo &block
p
roc(&block)
end

it = foo{p 12}
it.call #=> 12
//}

@see Proc,Proc.new

===...

手続きオブジェクトの挙動の詳細 (3066.0)

手続きオブジェクトの挙動の詳細 * def * should_use_next * block * lambda_proc * orphan

...se_next
* block
* lambda_proc
* orphan

===[a:def] 手続きオブジェクトとは

手続きオブジェクトとはブロックをコンテキスト(ローカル変数のスコープやスタックフレーム)と
ともにオブジェクトにしたものです。Proc クラスのインス...
...照できます。
P
roc オブジェクトがローカル変数のスコープを保持していることは以下の例で変数 var を
参照できていることからわかります。

//emlist[例][ruby]{
var = 1
$foo = Proc.new { var }
var = 2

def foo
$foo.call
end

p
foo # => 2
//}...
...は、Proc オブジェクトが呼び出しブロックとして振舞う際の制限です。

//emlist[問題なし][ruby]{
(1..5).each { break }
//}

//emlist[LocalJumpError が発生します。][ruby]{
p
r = Proc.new { break }
(1..5).each(&pr)
//}

===[a:lambda_proc] lambda と proc と Proc.ne...

Proc#===(*arg) -> () (3024.0)

手続きオブジェクトを実行してその結果を返します。

... Proc#lambda? を参照してください。

「===」は when の所に手続きを渡せるようにするためのものです。

//emlist[例][ruby]{
def sign(n)
case n
when lambda{|n| n > 0} then 1
when lambda{|n| n < 0} then -1
else 0
end
end

p
sign(-4) #=> -1
p
sign(0) #=> 0
p
s...
...when 0 then 0
when 1 then 1
else
fib.(n - 2) + fib.(n - 1)
end
}
fib.(10) # => 55
//}



@param arg 手続きオブジェクトに与える引数を指定します。

@raise LocalJumpError Procを生成したメソッドからリターンしてしまった場合に発生します。...
<< 1 2 3 > >>