116件ヒット
[1-100件を表示]
(0.191秒)
クラス
- BasicObject (12)
- BasicSocket (12)
- Delegator (12)
- GDBM (12)
- Integer (8)
- SDBM (12)
モジュール
- Enumerable (48)
キーワード
- anybits? (8)
- chunk (12)
- getpeereid (12)
- select (24)
-
slice
_ before (24) -
slice
_ when (12)
検索結果
先頭5件
-
Delegator
# !=(obj) -> bool (24101.0) -
自身が与えられたオブジェクトと等しくない場合は、真を返します。 そうでない場合は、偽を返します。
...自身が与えられたオブジェクトと等しくない場合は、真を返します。
そうでない場合は、偽を返します。
@param obj 比較対象のオブジェクトを指定します。... -
BasicObject
# !=(other) -> bool (21319.0) -
オブジェクトが other と等しくないことを判定します。
...オブジェクトが other と等しくないことを判定します。
デフォルトでは self == other を評価した後に結果を論理否定して返します。
このため、サブクラスで BasicObject#== を再定義しても != とは自動的に整合性が
とれるように......ct#!= 自身や BasicObject#! を再定義した際には、ユーザーの責任で
整合性を保たなくてはなりません。
このメソッドは主に論理式の評価に伴って副作用を引き起こすことを目的に
再定義するものと想定されています。
@param ot......er 比較対象となるオブジェクト
@see BasicObject#==, BasicObject#!
//emlist[例][ruby]{
class NonequalityRecorder < BasicObject
def initialize
@count = 0
end
attr_reader :count
def !=(other)
@count += 1
super
end
end
recorder = NonequalityRecorder.new
recorder !=... -
BasicSocket
# getpeereid -> [Integer , Integer] (12207.0) -
Unix ドメインソケットにおいて接続相手の euid と egid を 返します。
...は
不定です。
require 'socket'
Socket.unix_server_loop("/tmp/sock") {|s|
begin
euid, egid = s.getpeereid
# Check the connected client is myself or not.
next if euid != Process.uid
# do something about my resource.
ensure
s.close
end... -
Integer
# anybits?(mask) -> bool (9107.0) -
self & mask のいずれかのビットが 1 なら true を返します。
...ら true を返します。
self & mask != 0 と等価です。
@param mask ビットマスクを整数で指定します。
//emlist[][ruby]{
42.anybits?(42) # => true
0b1010_1010.anybits?(0b1000_0010) # => true
0b1010_1010.anybits?(0b1000_0001) # => true
0b1000_0010.anybits?(0......b0010_1100) # => false
//}
@see Integer#allbits?
@see Integer#nobits?... -
Enumerable
# slice _ before {|elt| bool } -> Enumerator (6219.0) -
パターンがマッチした要素、もしくはブロックが真を返した要素から 次にマッチする手前までを チャンク化(グループ化)したものを繰り返す Enumerator を 返します。
...はブロックが真を返した要素から
次にマッチする手前までを
チャンク化(グループ化)したものを繰り返す Enumerator を
返します。
パターンを渡した場合は各要素に対し === が呼び出され、
それが真になったところをチャン......は配列として表現されます。
Enumerable#to_a や Enumerable#map のようなメソッドを使うこ
ともできます。
//emlist[例][ruby]{
# 偶数要素をチャンクの先頭と見なす
[0,2,4,1,2,4,5,3,1,4,2].slice_before(&:even?).to_a
# => [[0], [2], [4, 1], [2], [4, 5, 3, 1]......lice_before(&:odd?).to_a
# => [[0, 2, 4], [1, 2, 4], [5], [3], [1, 4, 2]]
# ChangeLog のエントリーを順に取る
open("ChangeLog") {|f|
f.slice_before(/\A\S/).each {|e| pp e}
}
# 上と同じだが、パターンでなくブロックを使う
open("ChangeLog") {|f|
f.slice_before {|line... -
Enumerable
# slice _ before(pattern) -> Enumerator (6219.0) -
パターンがマッチした要素、もしくはブロックが真を返した要素から 次にマッチする手前までを チャンク化(グループ化)したものを繰り返す Enumerator を 返します。
...はブロックが真を返した要素から
次にマッチする手前までを
チャンク化(グループ化)したものを繰り返す Enumerator を
返します。
パターンを渡した場合は各要素に対し === が呼び出され、
それが真になったところをチャン......は配列として表現されます。
Enumerable#to_a や Enumerable#map のようなメソッドを使うこ
ともできます。
//emlist[例][ruby]{
# 偶数要素をチャンクの先頭と見なす
[0,2,4,1,2,4,5,3,1,4,2].slice_before(&:even?).to_a
# => [[0], [2], [4, 1], [2], [4, 5, 3, 1]......lice_before(&:odd?).to_a
# => [[0, 2, 4], [1, 2, 4], [5], [3], [1, 4, 2]]
# ChangeLog のエントリーを順に取る
open("ChangeLog") {|f|
f.slice_before(/\A\S/).each {|e| pp e}
}
# 上と同じだが、パターンでなくブロックを使う
open("ChangeLog") {|f|
f.slice_before {|line... -
GDBM
# select {|key , value| . . . } -> [[String]] (6207.0) -
ブロックを評価して真になった要素のみを配列に格納して返します。
...します。
require 'gdbm'
db1 = GDBM.open('aaa.gdbm', 0666, GDBM::NEWDB)
db1['a'] = 'aaa'
db1['b'] = 'bbb'
db1['c'] = 'ccc'
p db1.select{ |key, value| key == 'a' } #=> [["a", "aaa"]]
p db1.select{ |key, value| key != 'a' } #=> [["c", "ccc"], ["b", "bbb"]]
@see Hash#select... -
SDBM
# select {|key , value| . . . } -> [[String]] (6207.0) -
ブロックを評価して真になった要素のみを配列に格納して返します。
...配列に格納して返します。
require 'sdbm'
db1 = SDBM.open('aaa.gdbm', 0666)
db1.clear
db1['a'] = 'aaa'
db1['b'] = 'bbb'
db1['c'] = 'ccc'
p db1.select{ |key, value| key == 'a' } #=> [["a", "aaa"]]
p db1.select{ |key, value| key != 'a' } #=> [["c", "ccc"], ["b", "bbb"]... -
Enumerable
# slice _ when {|elt _ before , elt _ after| bool } -> Enumerator (3313.0) -
要素を前から順にブロックで評価し、その結果によって要素をチャンクに分け た(グループ化した)要素を持つEnumerator を返します。
...)要素を持つEnumerator を返します。
隣り合う値をブロックパラメータ elt_before、elt_after に渡し、ブロックの
評価値が真になる所でチャンクを区切ります。
ブロックは self の長さ - 1 回呼び出されます。
@return チャンクごと......merator
を返します。eachメソッドは以下のように呼び出します。
//emlist{
enum.slice_when { |elt_before, elt_after| bool }.each { |ary| ... }
//}
to_a や map などのその他の Enumerable モジュールのメソッ
ドも有用です。
//emlist[......例][ruby]{
# 1ずつ増加する部分配列ごとに分ける。
a = [1,2,4,9,10,11,12,15,16,19,20,21]
b = a.slice_when {|i, j| i+1 != j }
p b.to_a # => [[1, 2], [4], [9, 10, 11, 12], [15, 16], [19, 20, 21]]
c = b.map {|a| a.length < 3 ? a : "#{a.first}-#{a.last}" }
p c # => [[1, 2], [4], "9-12",...