るりまサーチ

最速Rubyリファレンスマニュアル検索!
368件ヒット [1-100件を表示] (0.011秒)

別のキーワード

  1. _builtin &
  2. set &
  3. ipaddr &
  4. array &
  5. status &

検索結果

<< 1 2 3 ... > >>

Integer#[](nth) -> Integer (18148.0)

nth 番目のビット(最下位ビット(LSB)が 0 番目)が立っている時 1 を、そうでなければ 0 を返します。

...self[i, len] は (n >> i) & ((1 << len) - 1) と同じ
@return self[i..j] は (n >> i) & ((1 << (j - i + 1)) - 1) と同じ
@return self[i...j] は (n >> i) & ((1 << (j - i)) - 1) と同じ
@return self[i..] は (n >> i) と同じ
@return self[..j] は n & ((1 << (j + 1)) - 1) が...
...0 なら 0
@return self[...j] は n & ((1 << j) - 1) が 0 なら 0
@raise ArgumentError self[..j] で n & ((1 << (j + 1)) - 1) が 0 以外のとき
@raise ArgumentError self[...j] で n & ((1 << j) - 1) が 0 以外のとき

//emlist[][ruby]{
a = 0b11001100101010
30.downto(0) {|n| print a[n]...
...nto(0) {|n| print a[n] }
# => 000101110110100000111000011110010100111100010111001
//}

n[i] は (n >> i) & 1 と等価なので、負のインデックスは常に 0 を返します。

//emlist[][ruby]{
p 255[-1] # => 0
//}

//emlist[複数ビットの例][ruby]{
0b01001101[2, 4] #=> 0b0011
0b0100...

Integer#[](nth, len) -> Integer (18148.0)

nth 番目のビット(最下位ビット(LSB)が 0 番目)が立っている時 1 を、そうでなければ 0 を返します。

...self[i, len] は (n >> i) & ((1 << len) - 1) と同じ
@return self[i..j] は (n >> i) & ((1 << (j - i + 1)) - 1) と同じ
@return self[i...j] は (n >> i) & ((1 << (j - i)) - 1) と同じ
@return self[i..] は (n >> i) と同じ
@return self[..j] は n & ((1 << (j + 1)) - 1) が...
...0 なら 0
@return self[...j] は n & ((1 << j) - 1) が 0 なら 0
@raise ArgumentError self[..j] で n & ((1 << (j + 1)) - 1) が 0 以外のとき
@raise ArgumentError self[...j] で n & ((1 << j) - 1) が 0 以外のとき

//emlist[][ruby]{
a = 0b11001100101010
30.downto(0) {|n| print a[n]...
...nto(0) {|n| print a[n] }
# => 000101110110100000111000011110010100111100010111001
//}

n[i] は (n >> i) & 1 と等価なので、負のインデックスは常に 0 を返します。

//emlist[][ruby]{
p 255[-1] # => 0
//}

//emlist[複数ビットの例][ruby]{
0b01001101[2, 4] #=> 0b0011
0b0100...

Integer#[](range) -> Integer (18148.0)

nth 番目のビット(最下位ビット(LSB)が 0 番目)が立っている時 1 を、そうでなければ 0 を返します。

...self[i, len] は (n >> i) & ((1 << len) - 1) と同じ
@return self[i..j] は (n >> i) & ((1 << (j - i + 1)) - 1) と同じ
@return self[i...j] は (n >> i) & ((1 << (j - i)) - 1) と同じ
@return self[i..] は (n >> i) と同じ
@return self[..j] は n & ((1 << (j + 1)) - 1) が...
...0 なら 0
@return self[...j] は n & ((1 << j) - 1) が 0 なら 0
@raise ArgumentError self[..j] で n & ((1 << (j + 1)) - 1) が 0 以外のとき
@raise ArgumentError self[...j] で n & ((1 << j) - 1) が 0 以外のとき

//emlist[][ruby]{
a = 0b11001100101010
30.downto(0) {|n| print a[n]...
...nto(0) {|n| print a[n] }
# => 000101110110100000111000011110010100111100010111001
//}

n[i] は (n >> i) & 1 と等価なので、負のインデックスは常に 0 を返します。

//emlist[][ruby]{
p 255[-1] # => 0
//}

//emlist[複数ビットの例][ruby]{
0b01001101[2, 4] #=> 0b0011
0b0100...

Integer#[](nth) -> Integer (18106.0)

nth 番目のビット(最下位ビット(LSB)が 0 番目)が立っている時 1 を、そうでなければ 0 を返します。

...の数値
@return 1 か 0

//emlist[][ruby]{
a = 0b11001100101010
30.downto(0) {|n| print a[n] }
# => 0000000000000000011001100101010

a = 9**15
50.downto(0) {|n| print a[n] }
# => 000101110110100000111000011110010100111100010111001
//}

n[i] は (n >> i) & 1 と等価なので、負のインデ...
...ックスは常に 0 を返します。

//emlist[][ruby]{
p 255[-1] # => 0
//}


self[nth]=bit (つまりビットの修正) がないのは、Numeric 関連クラスが
immutable であるためです。...

TSort#each_strongly_connected_component_from(node, id_map={}, stack=[]) -> Enumerator (106.0)

node から到達可能な強連結成分についてのイテレータです。

...equire 'tsort'

class Hash
include TSort
alias tsort_each_node each_key
def tsort_each_child(node, &block)
fetch(node).each(&block)
end
end

non_sort = {1=>[2], 2=>[3, 4], 3=>[2], 4=>[]}

non_sort.each_strongly_connected_component{|nodes|
p nodes
nodes.each {|node|
non_sort.each_...

絞り込み条件を変える

TSort#each_strongly_connected_component_from(node, id_map={}, stack=[]) {|nodes| ...} -> () (106.0)

node から到達可能な強連結成分についてのイテレータです。

...equire 'tsort'

class Hash
include TSort
alias tsort_each_node each_key
def tsort_each_child(node, &block)
fetch(node).each(&block)
end
end

non_sort = {1=>[2], 2=>[3, 4], 3=>[2], 4=>[]}

non_sort.each_strongly_connected_component{|nodes|
p nodes
nodes.each {|node|
non_sort.each_...

TSort.each_strongly_connected_component_from(node, each_child, id_map={}, stack=[]) -> Enumerator (106.0)

node から到達可能な強連結成分についてのイテレータです。

...オブジェクトを指定します。

//emlist[使用例][ruby]{
require 'tsort'

graph = {1=>[2], 2=>[3, 4], 3=>[2], 4=>[]}
each_child = lambda {|n, &b| graph[n].each(&b) }
TSort.each_strongly_connected_component_from(1, each_child) {|scc|
p scc
}
# => [4]
# [2, 3]
# [1]
//}

@see TSort#...

TSort.each_strongly_connected_component_from(node, each_child, id_map={}, stack=[]) {|nodes| ...} -> () (106.0)

node から到達可能な強連結成分についてのイテレータです。

...オブジェクトを指定します。

//emlist[使用例][ruby]{
require 'tsort'

graph = {1=>[2], 2=>[3, 4], 3=>[2], 4=>[]}
each_child = lambda {|n, &b| graph[n].each(&b) }
TSort.each_strongly_connected_component_from(1, each_child) {|scc|
p scc
}
# => [4]
# [2, 3]
# [1]
//}

@see TSort#...

1.6.8から1.8.0への変更点(まとめ) (96.0)

1.6.8から1.8.0への変更点(まとめ) * ((<1.6.8から1.8.0への変更点(まとめ)/インタプリタの変更>)) * ((<1.6.8から1.8.0への変更点(まとめ)/追加されたクラス/モジュール>)) * ((<1.6.8から1.8.0への変更点(まとめ)/追加されたメソッド>)) * ((<1.6.8から1.8.0への変更点(まとめ)/追加された定数>)) * ((<1.6.8から1.8.0への変更点(まとめ)/拡張されたクラス/メソッド(互換性のある変更)>)) * ((<1.6.8から1.8.0への変更点(まとめ)/変更されたクラス/メソッド(互換性のない変更)>)) * ((<1.6.8から1.8.0への変更点(まとめ)/文法の変更>)) * ((<1.6.8から1.8.0への変更点(まとめ)/正規表現>)) * ((<1.6.8から1.8.0への変更点(まとめ)/Marshal>)) * ((<1.6.8から1.8.0への変更点(まとめ)/Windows 対応>)) * ((<1.6.8から1.8.0への変更点(まとめ)/廃止された(される予定の)機能>)) * ((<1.6.8から1.8.0への変更点(まとめ)/ライブラリ>)) * ((<1.6.8から1.8.0への変更点(まとめ)/拡張ライブラリAPI>)) * ((<1.6.8から1.8.0への変更点(まとめ)/バグ修正>)) * ((<1.6.8から1.8.0への変更点(まとめ)/サポートプラットフォームの追加>))

...ています。

def foo
yield 1,2,3,4
end

foo {|a,b,c| p [a,b,c]; break }

foo( &proc {|a,b,c| p [a,b,c]; break } )

foo( &Proc.new {|a,b,c| p [a,b,c]; break } )

=> ruby 1.6.8 (2002-12-24) [i586-linux]
[1, 2, 3]
[1, 2...
...i、String#oct もこの prefix を認識します。

: ((<メソッド引数の & 修飾|メソッド呼び出し/イテレータ>)) [compat]
: ((<Proc#to_proc|Proc/to_proc>)) [new]

メソッドに渡す引数に & を修飾した場合、渡すオブジェクトが to_proc を
持ってい...
...を返すことができます。

: 多重代入 [change]

多重代入の規則を見直しました。

# # derived from sample/test.rb
# a = *[]; p a # special case
# def f; yield; end; f {|a| p a} # add (warning)
# def r; return; end; a = r(); p a
#...

ruby 1.6 feature (66.0)

ruby 1.6 feature ruby version 1.6 は安定版です。この版での変更はバグ修正がメイン になります。

...範囲外の文字列を指定したときに例外を返す場合がありましたが、常に nil
を返すようになりました。(String#[]やString#slice と同じ結果を返すと
いうことです)

p "foo".slice!("bar") # <- 以前からこちらは nil を返してい...
...p Dir.glob("bar")
=> ruby 1.6.7 (2002-03-01) [i586-linux]
[]

=> ruby 1.6.7 (2002-08-01) [i586-linux]
["bar"]

: 2002-06-13 Hash[]

Hash[] で、キーとなる文字列を dup & freeze していませんでした。

a = "key"
h = Hash...
...tring#[]=

インデックスとして指定した文字列がレシーバに含まれない場合に、何もせ
ず右辺を返していました。

foo = "foo"
p foo["bar"] = "baz"
p foo

=> ruby 1.6.7 (2002-03-01) [i586-linux]
"baz"
"foo"
=> -:2:in `[]=': s...

絞り込み条件を変える

クラス/メソッドの定義 (42.0)

クラス/メソッドの定義 * クラス/メソッドの定義: * class * singleton_class * module * method * operator * nest_method * eval_method * singleton_method * class_method * limit * 定義に関する操作: * alias * undef * defined

...の追加になります。
ただし、元のクラスと異なるスーパークラスを指定すると TypeError が発生します。

//emlist[][ruby]{
class Foo < Array
def foo
end
end

# 定義を追加(スーパークラス Array を明示的に指定しても同じ)
class Foo
def bar...
...関係などの機能的な関連はまったくありません。

//emlist[][ruby]{
class Foo
class Bar
end
end
//}

クラス Foo が既に定義されていれば、以下の書き方もできます。

//emlist[][ruby]{
class Foo
end

class Foo::Bar
end
//}

クラスのネストは、意...
...文法:

def メソッド名 ['(' [arg0 ['=' default0]] ... [',' '*' rest_args [, post ...]] [',' key1: [val1]] ... [',' '**'kwrest] [',' '&' block_arg]`)']
式.. (body)
[rescue [error_type,..] [=> evar] [then]
式..]..
[else
式..]...

Rubyで使われる記号の意味(正規表現の複雑な記号は除く) (36.0)

Rubyで使われる記号の意味(正規表現の複雑な記号は除く) ex q num per and or  plus minus ast slash hat sq  period comma langl rangl eq tilde  dollar at under lbrarbra  lbra2rbra2 lbra3rbra3 dq colon ac  backslash semicolon

...=[a:and] &

: xxx & yyy

論理積演算子。または類似の演算を行うメソッド。
//emlist{
p( 3 & 5 ) #=> 1 ・・ 二進数で 0011 & 0101 #=> 0001
//}

: a &= yyy

&」メソッドの自己代入演算子。

: xxx && yyy

「and」演算子。
//emlist{
p( 3 && 5 ) #=>...
...ので右の値を返す。
//}

: def xxx(&yyy) ・・ &がついた引数

メソッド定義のブロック引数。d:spec/def#methodを参照。

: xxx(&b)

Proc オブジェクトをブロックとして使う。d:spec/call#block を参照。

: xxx&.yyy

safe navigation operator(通称「...
..."a is #{a}" #=> "a is 10"
//}

===[a:lbra2] [
===[a:rbra2] ]

: [1,"some",:ok]

配列のリテラル

: 'abcde'[1,2]

[]
メソッドの実行
//emlist{
class String
def [](*a)
'(^^;'
end
end
p( 'abcde'[1,2] ) #=> "(^^;"
//}

: /xx[abc]/

正規表現の文字クラス指定...
...です。
d:spec/literal#numを参照。

: _1 ~ _9

番号指定パラメータ。ブロックの仮引数として参照できます。

//emlist[][ruby]{
# 同じ意味
(1..10).map {|n| n * 2 }
(1..10).map { _1 * 2 }

[3, 1, 2].sort {|n, m| m <=> n }
[3, 1, 2].sort { _2 <=> _1 }
//}

===[a:lbra...
<< 1 2 3 ... > >>