るりまサーチ

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

別のキーワード

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

ライブラリ

クラス

キーワード

検索結果

static VALUE proc_arity(VALUE proc) (32300.0)

Proc#arity -> Integer (21149.0)

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

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

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

-(必要とされる引数の数 + 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
//}...

Method#arity -> Integer (18197.0)

メソッドが受け付ける引数の数を返します。

...C.new
p
c.method(:u).arity #=> 0
p
c.method(:v).arity #=> 1
p
c.method(:w).arity #=> -1
p
c.method(:x).arity #=> 2
p
c.method(:y).arity #=> -3
p
c.method(:z).arity #=> -3

s = "xyz"
s.method(:size).arity #=> 0
s.method(:replace).arity #=> 1
s.method(:squeeze).arity #...
...=> -1
s.method(:count).arity #=> -1
//}...

UnboundMethod#arity -> Integer (18197.0)

メソッドが受け付ける引数の数を返します。

...end

p
C.instance_method(:one).arity #=> 0
p
C.instance_method(:two).arity #=> 1
p
C.instance_method(:three).arity #=> -1
p
C.instance_method(:four).arity #=> 2
p
C.instance_method(:five).arity #=> -3
p
C.instance_method(:six).arity #=> -3


String.instance_method(:size).arity...
...#=> 0
String.instance_method(:replace).arity #=> 1
String.instance_method(:squeeze).arity #=> -1
String.instance_method(:count).arity #=> -1
//}...

Proc#curry(arity) -> Proc (3327.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(...
...5)[1, 2][3, 4][5] #=> 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...

絞り込み条件を変える

Proc#curry -> Proc (3227.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(...
...5)[1, 2][3, 4][5] #=> 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...

Method#curry(arity) -> Proc (207.0)

self を元にカリー化した Proc を返します。

...化した Proc を返します。

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

@param arity 引数の個数を指定します。可変長の引数を指定できるメソッドを
カリー化する際には必ず指定する必要があります。

//emlist[例][ruby]{
def foo(a,b,c)
[a, b, c]
end

p
roc = self.method(:foo).curry
p
roc2 = proc.call(1, 2...
...) #=> #<Proc>
p
roc2.call(3) #=> [1,2,3]

def vararg(*args)
args
end

p
roc = self.method(:vararg).curry(4)
p
roc2 = proc.call(:x) #=> #<Proc>
p
roc3 = proc2.call(:y, :z) #=> #<Proc>
p
roc3.call(:a) #=> [:x, :y, :z, :a]
//}

@see Proc#curry...

Method#curry -> Proc (107.0)

self を元にカリー化した Proc を返します。

...化した Proc を返します。

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

@param arity 引数の個数を指定します。可変長の引数を指定できるメソッドを
カリー化する際には必ず指定する必要があります。

//emlist[例][ruby]{
def foo(a,b,c)
[a, b, c]
end

p
roc = self.method(:foo).curry
p
roc2 = proc.call(1, 2...
...) #=> #<Proc>
p
roc2.call(3) #=> [1,2,3]

def vararg(*args)
args
end

p
roc = self.method(:vararg).curry(4)
p
roc2 = proc.call(:x) #=> #<Proc>
p
roc3 = proc2.call(:y, :z) #=> #<Proc>
p
roc3.call(:a) #=> [:x, :y, :z, :a]
//}

@see Proc#curry...

NEWS for Ruby 3.0.0 (48.0)

NEWS for Ruby 3.0.0 このドキュメントは前回リリース以降のバグ修正を除くユーザーに影響のある機能の変更のリストです。

...separated from positional arguments.
Code that resulted in deprecation warnings in Ruby 2.7 will now
result in ArgumentError or different behavior. 14183
* Procs accepting a single rest argument and keywords are no longer
subject to autosplatting. This now matches the behavior of Pro...
...cepting a single rest argument and no keywords.
16166

//emlist[][ruby]{
p
r = proc{|*a, **kw| [a, kw]}

p
r.call([1])
# 2.7 => [[1], {}]
# 3.0 => [[[1]], {}]

p
r.call([1, {a: 1}])
# 2.7 => [[1], {:a=>1}] # and deprecation warning
# 3.0 => a=>1}, {}]
//}

* Arguments forwarding (`...`) now suppo...
...gexp literals and all Range objects are frozen. 8948 16377 15504

//emlist[][ruby]{
/foo/.frozen? #=> true
(42...).frozen? # => true
//}

* EXPERIMENTAL: Hash#each consistently yields a 2-element array. 12706
* Now `{ a: 1 }.each(&->(k, v) { })` raises an ArgumentError due to lambda's arity ch...