るりまサーチ

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

別のキーワード

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

検索結果

<< 1 2 3 ... > >>

Proc (44348.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)
へジャン...
...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.new...

Proc#lambda? -> bool (30413.0)

手続きオブジェクトの引数の取扱が厳密であるならば true を返します。

...ruby]{
# lambda で生成した Proc オブジェクトでは true
lambda
{}.lambda? # => true
# proc で生成した Proc オブジェクトでは false
proc
{}.lambda? # => false
# Proc.new で生成した Proc オブジェクトでは false
Proc
.new{}.lambda? # => false

# 以下、lambda?が偽...
...る場合
# 余分な引数を無視する
proc
{|a,b| [a,b]}.call(1,2,3) # => [1,2]
# 足りない引数には nil が渡される
proc
{|a,b| [a,b]}.call(1) # => [1, nil]
# 配列1つだと展開される
proc
{|a,b| [a,b]}.call([1,2]) # => [1,2]
# lambdaの場合これらはすべて ArgumentError...
... Proc lambda? が偽となる
def n(&b) b.lambda? end
n {} # => false

# &が付いた実引数によるものは、lambda?が元の Procオブジェクトから
# 引き継がれる
lambda
(&lambda {}).lambda? #=> true
proc
(&lambda {}).lambda? #=> true
Proc
.new(&lambda {}).lambda? #=> t...

Proc#parameters(lambda: nil) -> [object] (27319.0)

Proc オブジェクトの引数の情報を返します。

...Proc オブジェクトの引数の情報を返します。

Proc
オブジェクトが引数を取らなければ空の配列を返します。引数を取る場合は、配列の配列を返し、
各配列の要素は引数の種類に対応した以下のような Symbol と、引数名を表す...
...Symbol の 2 要素です。

: :req
必須の引数
: :opt
デフォルト値が指定されたオプショナルな引数
: :rest
* で指定された残りすべての引数
: :keyreq
必須のキーワード引数
: :key
デフォルト値が指定されたオプショナルなキーワー...
...

@param lambda true なら lambda として扱ったとき、false なら lambda ではない Proc として
扱ったときの引数の情報を返します。

//emlist[例][ruby]{
p
rc = lambda{|x, y=42, *other, k_x:, k_y: 42, **k_other, &b|}
p
rc.parameters #=> x], [:opt, :y], [:...

Proc#parameters -> [object] (27128.0)

Proc オブジェクトの引数の情報を返します。

...Proc オブジェクトの引数の情報を返します。

Proc
オブジェクトが引数を取らなければ空の配列を返します。引数を取る場合は、配列の配列を返し、
各配列の要素は引数の種類に対応した以下のような Symbol と、引数名を表す...
...Symbol の 2 要素です。

: :req
必須の引数
: :opt
デフォルト値が指定されたオプショナルな引数
: :rest
* で指定された残りすべての引数
: :keyreq
必須のキーワード引数
: :key
デフォルト値が指定されたオプショナルなキーワー...
...ck
& で指定されたブロック引数


//emlist[例][ruby]{
p
rc = lambda{|x, y=42, *other, k_x:, k_y: 42, **k_other, &b|}
p
rc.parameters #=> x], [:opt, :y], [:rest, :other], [:keyreq, :k_x], [:key, :k_y], [:keyrest, :k_other], [:block, :b
//}


@see Method#parameters, UnboundMethod#parameters...

Proc#curry -> Proc (24392.0)

Procをカリー化します

...Procをカリー化します

カリー化したProcはいくつかの引数をとります。十分な数の引数が与えられると、元のProcに引数を渡し
て実行し、結果を返します。引数の個数が足りないときは、部分適用したカリー化Procを返します...
...

@param arity 引数の個数を指定します
@return カリー化したProcオブジェクトを返します

//emlist[例][ruby]{
b = proc {|x, y, z| (x||0) + (y||0) + (z||0) }
p
b.curry[1][2][3] #=> 6
p
b.curry[1, 2][3, 4] #=> 6
p
b.curry(5)[1][2][3][4][5] #=> 6
p
b.curry(...
...] #=> 6
p
b.curry(1)[1] #=> 1

b = proc {|x, y, z, *w| (x||0) + (y||0) + (z||0) + w.sum }
p
b.curry[1][2][3] #=> 6
p
b.curry[1, 2][3, 4] #=> 10
p
b.curry(5)[1][2][3][4][5] #=> 15
p
b.curry(5)[1, 2][3, 4][5] #=> 15
p
b.curry(1)[1] #=> 1

b = lambda {|x, y...

絞り込み条件を変える

Proc#curry(arity) -> Proc (24392.0)

Procをカリー化します

...Procをカリー化します

カリー化したProcはいくつかの引数をとります。十分な数の引数が与えられると、元のProcに引数を渡し
て実行し、結果を返します。引数の個数が足りないときは、部分適用したカリー化Procを返します...
...

@param arity 引数の個数を指定します
@return カリー化したProcオブジェクトを返します

//emlist[例][ruby]{
b = proc {|x, y, z| (x||0) + (y||0) + (z||0) }
p
b.curry[1][2][3] #=> 6
p
b.curry[1, 2][3, 4] #=> 6
p
b.curry(5)[1][2][3][4][5] #=> 6
p
b.curry(...
...] #=> 6
p
b.curry(1)[1] #=> 1

b = proc {|x, y, z, *w| (x||0) + (y||0) + (z||0) + w.sum }
p
b.curry[1][2][3] #=> 6
p
b.curry[1, 2][3, 4] #=> 10
p
b.curry(5)[1][2][3][4][5] #=> 15
p
b.curry(5)[1, 2][3, 4][5] #=> 15
p
b.curry(1)[1] #=> 1

b = lambda {|x, y...

Proc#arity -> Integer (24064.0)

Proc オブジェクトが受け付ける引数の数を返します。

...
Proc
オブジェクトが受け付ける引数の数を返します。

ただし、可変長引数を受け付ける場合、負の整数

-(必要とされる引数の数 + 1)

を返します。

//emlist[例][ruby]{
lambda
{ }.arity # => 0
lambda
{|| }.arity # => 0
lambd...
...a{|x| }.arity # => 1
lambda
{|*x| }.arity # => -1
lambda
{|x, y| }.arity # => 2
lambda
{|x, *y| }.arity # => -2
lambda
{|(x, y)| }.arity # => 1
lambda
{|(x, y), z|}.arity # => 2
//}...

Proc#===(*arg) -> () (24054.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...
...ます。

//emlist[例][ruby]{
fib = lambda{|n|
case n
when 0 then 0
when 1 then 1
else
fib.(n - 2) + fib.(n - 1)
end
}
fib.(10) # => 55
//}



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

@raise LocalJumpError Procを生成したメソッドからリ...

Proc#[](*arg) -> () (24054.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...
...ます。

//emlist[例][ruby]{
fib = lambda{|n|
case n
when 0 then 0
when 1 then 1
else
fib.(n - 2) + fib.(n - 1)
end
}
fib.(10) # => 55
//}



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

@raise LocalJumpError Procを生成したメソッドからリ...

Proc#call(*arg) -> () (24054.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...
...ます。

//emlist[例][ruby]{
fib = lambda{|n|
case n
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 ... > >>