66件ヒット
[1-66件を表示]
(0.087秒)
クラス
- Array (16)
- BasicObject (22)
- Data (2)
- Fiber (15)
- Module (11)
キーワード
- != (11)
-
instance
_ method (11) - pack (16)
- raise (15)
- with (2)
検索結果
先頭5件
-
BasicObject
# ! -> bool (26140.0) -
オブジェクトを真偽値として評価し、その論理否定を返します。
...r :count
def !
@count += 1
super
end
end
recorder = NegationRecorder.new
!recorder
!!!!!!!recorder
puts 'hoge' if !recorder
puts recorder.count #=> 3
//}
//emlist[例][ruby]{
class AnotherFalse < BasicObject
def !
true
end
end
another_false = AnotherFalse.new
# another_fals... -
BasicObject
# !=(other) -> bool (14109.0) -
オブジェクトが other と等しくないことを判定します。
...返します。
このため、サブクラスで BasicObject#== を再定義しても != とは自動的に整合性が
とれるようになっています。
ただし、 BasicObject#!= 自身や BasicObject#! を再定義した際には、ユーザーの責任で
整合性を保たなくては......icObject#==, 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 != 1
puts 'hoge' if recorder != "str"
p recorder.coun... -
Array
# pack(template , buffer: String . new) -> String (8170.0) -
配列の内容を template で指定された文字列にしたがって、 バイナリとしてパックした文字列を返します。
...ズ(capacity)が足りなければ、packはメモリを確保します。
//emlist[例][ruby]{
['!'].pack('@1a', buffer: 'abc') # => "a!"
['!'].pack('@5a', buffer: 'abc') # => "abc\u0000\u0000!"
//}
@param template 自身のバイナリとしてパックするためのテンプレートを文......に _ または ! を "s_" あるいは "s!" のように
続けることでシステム依存の short, long のサイズにすることもできます。
i, I (int)のサイズは常にシステム依存であり、n, N, v, V
のサイズは常にシステム依存ではない(!をつけられな......造体を渡すときのように、
システム依存のサイズとエンディアンに合わせる必要があるときには
s!, S!, i!, I!, l!, L!, q!, Q!, j!, J! を用います。
また、ネットワークプロトコルやファイルフォーマットのように、
システムに依... -
Array
# pack(template) -> String (8070.0) -
配列の内容を template で指定された文字列にしたがって、 バイナリとしてパックした文字列を返します。
...ズ(capacity)が足りなければ、packはメモリを確保します。
//emlist[例][ruby]{
['!'].pack('@1a', buffer: 'abc') # => "a!"
['!'].pack('@5a', buffer: 'abc') # => "abc\u0000\u0000!"
//}
@param template 自身のバイナリとしてパックするためのテンプレートを文......に _ または ! を "s_" あるいは "s!" のように
続けることでシステム依存の short, long のサイズにすることもできます。
i, I (int)のサイズは常にシステム依存であり、n, N, v, V
のサイズは常にシステム依存ではない(!をつけられな......造体を渡すときのように、
システム依存のサイズとエンディアンに合わせる必要があるときには
s!, S!, i!, I!, l!, L!, q!, Q!, j!, J! を用います。
また、ネットワークプロトコルやファイルフォーマットのように、
システムに依... -
Fiber
# raise -> object (8021.0) -
selfが表すファイバーが最後に Fiber.yield を呼んだ場所で例外を発生させます。
...の配列で指定します。
//emlist[例][ruby]{
f = Fiber.new { Fiber.yield }
f.resume
f.raise "Error!" # => Error! (RuntimeError)
//}
//emlist[ファイバー内のイテレーションを終了させる例][ruby]{
f = Fiber.new do
loop do
Fiber.yield(:loop)
end
:exit
end
p f.resum... -
Fiber
# raise(exception , message = nil , backtrace = nil) -> object (8021.0) -
selfが表すファイバーが最後に Fiber.yield を呼んだ場所で例外を発生させます。
...の配列で指定します。
//emlist[例][ruby]{
f = Fiber.new { Fiber.yield }
f.resume
f.raise "Error!" # => Error! (RuntimeError)
//}
//emlist[ファイバー内のイテレーションを終了させる例][ruby]{
f = Fiber.new do
loop do
Fiber.yield(:loop)
end
:exit
end
p f.resum... -
Fiber
# raise(message) -> object (8021.0) -
selfが表すファイバーが最後に Fiber.yield を呼んだ場所で例外を発生させます。
...の配列で指定します。
//emlist[例][ruby]{
f = Fiber.new { Fiber.yield }
f.resume
f.raise "Error!" # => Error! (RuntimeError)
//}
//emlist[ファイバー内のイテレーションを終了させる例][ruby]{
f = Fiber.new do
loop do
Fiber.yield(:loop)
end
:exit
end
p f.resum... -
Data
# with(**kwargs) -> Data (8015.0) -
self をコピーしたオブジェクトを返します。
...ise ArgumentError 存在しないメンバを指定した場合に発生します。
//emlist[例][ruby]{
Dog = Data.define(:name, :age)
dog1 = Dog.new("Fred", 5) # => #<data Dog name="Fred", age=5>
dog2 = dog1.with(age: 6) # => #<data Dog name="Fred", age=6>
p dog1 # => #<da......entError (unknown keyword: :type)
# メンバのオブジェクトはコピーされず、同じオブジェクトを参照する。
dog1.name.upcase!
p dog1 # => #<data Dog name="FRED", age=5>
p dog2 # => #<data Dog name="FRED", age=6>
//}
[注意] 本メソッドの記述は Data のサブクラ... -
Module
# instance _ method(name) -> UnboundMethod (8015.0) -
self のインスタンスメソッド name をオブジェクト化した UnboundMethod を返します。
...method, Object#method
//emlist[例][ruby]{
class Interpreter
def do_a() print "there, "; end
def do_d() print "Hello "; end
def do_e() print "!\n"; end
def do_v() print "Dave"; end
Dispatcher = {
"a" => instance_method(:do_a),
"d" => instance_method(:do_d),
"e" => inst......ance_method(:do_e),
"v" => instance_method(:do_v)
}
def interpret(string)
string.each_char {|b| Dispatcher[b].bind(self).call }
end
end
interpreter = Interpreter.new
interpreter.interpret('dave')
# => Hello there, Dave!
//}...