別のキーワード
クラス
モジュール
-
GC
:: Profiler (11) - Kernel (11)
- Marshal (22)
- Process (44)
キーワード
-
$ ~ (11) - << (6)
- == (2)
- DATA (11)
-
RLIMIT
_ DATA (11) - [] (48)
- begin (11)
- byteoffset (4)
- captures (11)
- define (4)
- dump (22)
- end (11)
- eql? (2)
- getrlimit (11)
- hash (2)
- inspect (13)
-
instance
_ eval (22) -
last
_ match (11) - length (11)
- match (30)
- members (4)
-
method
_ missing (11) -
named
_ captures (11) - new (4)
- offset (22)
-
post
_ match (11) -
pre
_ match (11) -
raw
_ data (11) - regexp (11)
- setrlimit (22)
- size (11)
-
to
_ a (11) -
to
_ s (13) -
values
_ at (11) - with (2)
検索結果
先頭5件
-
Data (38050.0)
-
「値オブジェクト(value object)」の定義に利用できるクラスです。
...はありません。
Data.define でオブジェクトのクラスを定義できます。定義されたクラスは Data のサブクラスとなります。
Data のサブクラスでは、メンバに対するアクセスメソッドが定義されています。
Data と似たクラスに St......API を提供するクラスです。
//emlist[例][ruby]{
# Dogクラスを定義
Dog = Data.define(:name, :age)
# Dogクラスのインスタンスを作成
fred = Dog.new("Fred", 5)
# メンバにアクセスできる
p fred.name # => "Fred"
# キーワード引数でも構築できる
p Dog.......new(name: "Terry", age: 3)
# メンバの値を書き換えることはできない
fred.age = 6 # => NoMethodError
//}
なお、Ruby 2.7 以前に存在し Ruby 3.0 で削除された Data クラスとは異なります。... -
Data
# inspect -> String (27132.0) -
self の内容を人間に読みやすい文字列にして返します。
...list[例][ruby]{
Customer = Data.define(:name, :address, :zip)
joe = Customer.new("Joe Smith", "123 Maple, Anytown NC", 12345)
joe.inspect # => "#<data Customer name=\"Joe Smith\", address=\"123 Maple, Anytown NC\", zip=12345>"
//}
[注意] 本メソッドの記述は Data のサブクラスのイ......ンスタンスに対して呼び
出す事を想定しています。Data.define は Data のサブクラスを作成する点に
注意してください。... -
Data
# to _ s -> String (24032.0) -
self の内容を人間に読みやすい文字列にして返します。
...list[例][ruby]{
Customer = Data.define(:name, :address, :zip)
joe = Customer.new("Joe Smith", "123 Maple, Anytown NC", 12345)
joe.inspect # => "#<data Customer name=\"Joe Smith\", address=\"123 Maple, Anytown NC\", zip=12345>"
//}
[注意] 本メソッドの記述は Data のサブクラスのイ......ンスタンスに対して呼び
出す事を想定しています。Data.define は Data のサブクラスを作成する点に
注意してください。... -
Data
. [](**kwargs) -> Data (21230.0) -
(このメソッドは Data のサブクラスにのみ定義されています) 値オブジェクトを生成して返します。
...(このメソッドは Data のサブクラスにのみ定義されています)
値オブジェクトを生成して返します。
@param args 値オブジェクトのメンバの値を指定します。
@param kwargs 値オブジェクトのメンバの値を指定します。
@return 値オ......より多くの引数を渡した場合に発生します。
//emlist[例][ruby]{
Point = Data.define(:x, :y)
p1 = Point.new(1, 2)
p p1.x # => 1
p p1.y # => 2
p2 = Point.new(x: 3, y: 4)
p p2.x # => 3
p p2.y # => 4
//}
new に渡す引数の数がメンバの数より多い場合は......
Point.new に渡した位置引数の数が多い場合(上から2番目)のみ new でエラーが発生しており、
残りのケースではエラーの発生箇所は new ではなく initialize であることに注意してください。
//emlist[例][ruby]{
Point = Data.define(:x, :y)
P... -
Data
. [](*args) -> Data (21230.0) -
(このメソッドは Data のサブクラスにのみ定義されています) 値オブジェクトを生成して返します。
...(このメソッドは Data のサブクラスにのみ定義されています)
値オブジェクトを生成して返します。
@param args 値オブジェクトのメンバの値を指定します。
@param kwargs 値オブジェクトのメンバの値を指定します。
@return 値オ......より多くの引数を渡した場合に発生します。
//emlist[例][ruby]{
Point = Data.define(:x, :y)
p1 = Point.new(1, 2)
p p1.x # => 1
p p1.y # => 2
p2 = Point.new(x: 3, y: 4)
p p2.x # => 3
p p2.y # => 4
//}
new に渡す引数の数がメンバの数より多い場合は......
Point.new に渡した位置引数の数が多い場合(上から2番目)のみ new でエラーが発生しており、
残りのケースではエラーの発生箇所は new ではなく initialize であることに注意してください。
//emlist[例][ruby]{
Point = Data.define(:x, :y)
P... -
Data
. new(**kwargs) -> Data (21230.0) -
(このメソッドは Data のサブクラスにのみ定義されています) 値オブジェクトを生成して返します。
...(このメソッドは Data のサブクラスにのみ定義されています)
値オブジェクトを生成して返します。
@param args 値オブジェクトのメンバの値を指定します。
@param kwargs 値オブジェクトのメンバの値を指定します。
@return 値オ......より多くの引数を渡した場合に発生します。
//emlist[例][ruby]{
Point = Data.define(:x, :y)
p1 = Point.new(1, 2)
p p1.x # => 1
p p1.y # => 2
p2 = Point.new(x: 3, y: 4)
p p2.x # => 3
p p2.y # => 4
//}
new に渡す引数の数がメンバの数より多い場合は......
Point.new に渡した位置引数の数が多い場合(上から2番目)のみ new でエラーが発生しており、
残りのケースではエラーの発生箇所は new ではなく initialize であることに注意してください。
//emlist[例][ruby]{
Point = Data.define(:x, :y)
P... -
Data
. new(*args) -> Data (21230.0) -
(このメソッドは Data のサブクラスにのみ定義されています) 値オブジェクトを生成して返します。
...(このメソッドは Data のサブクラスにのみ定義されています)
値オブジェクトを生成して返します。
@param args 値オブジェクトのメンバの値を指定します。
@param kwargs 値オブジェクトのメンバの値を指定します。
@return 値オ......より多くの引数を渡した場合に発生します。
//emlist[例][ruby]{
Point = Data.define(:x, :y)
p1 = Point.new(1, 2)
p p1.x # => 1
p p1.y # => 2
p2 = Point.new(x: 3, y: 4)
p p2.x # => 3
p p2.y # => 4
//}
new に渡す引数の数がメンバの数より多い場合は......
Point.new に渡した位置引数の数が多い場合(上から2番目)のみ new でエラーが発生しており、
残りのケースではエラーの発生箇所は new ではなく initialize であることに注意してください。
//emlist[例][ruby]{
Point = Data.define(:x, :y)
P... -
Data
# with(**kwargs) -> Data (21175.0) -
self をコピーしたオブジェクトを返します。
...。
@param kwargs コピーされたオブジェクトに設定されるメンバの値を指定します。
@raise ArgumentError 存在しないメンバを指定した場合に発生します。
//emlist[例][ruby]{
Dog = Data.define(:name, :age)
dog1 = Dog.new("Fred", 5) # => #<data Dog name=......=> #<data Dog name="Fred", age=6>
p dog1 # => #<data Dog name="Fred", age=5>
dog3 = dog1.with(type: "Terrier") # => ArgumentError (unknown keyword: :type)
# メンバのオブジェクトはコピーされず、同じオブジェクトを参照する。
dog1.name.upcase!
p dog1......# => #<data Dog name="FRED", age=5>
p dog2 # => #<data Dog name="FRED", age=6>
//}
[注意] 本メソッドの記述は Data のサブクラスのインスタンスに対して呼び
出す事を想定しています。Data.define は Data のサブクラスを作成する点に
注意してくだ... -
Data
. define(*args) -> Class (21138.0) -
Data クラスに新しいサブクラスを作って、それを返します。
...
Data クラスに新しいサブクラスを作って、それを返します。
サブクラスでは値オブジェクトのメンバに対するアクセスメソッドが定義されています。
//emlist[例][ruby]{
Dog = Data.define(:name, :age)
fred = Dog.new("Fred", 5)
p fred.name # =>......"Fred"
p fred.age # => 5
//}
メンバの値を書き換えることはできません。
//emlist[例][ruby]{
Dog = Data.define(:name, :age)
fred = Dog.new("Fred", 5)
fred.age = 6 # => NoMethodError
//}
メンバを持たないサブクラスも定義可能です。
以下のように、パタ......]{
class HTTPFetcher
Response = Data.define(:body)
NotFound = Data.define
def get(url)
# ダミーの実装
if url == "http://example.com/"
Response.new(body: "Current time is #{Time.now}")
else
NotFound.new
end
end
end
def fetch(url)
fetcher = HTTPFetcher.new... -
Data
. define(*args) {|subclass| block } -> Class (21138.0) -
Data クラスに新しいサブクラスを作って、それを返します。
...
Data クラスに新しいサブクラスを作って、それを返します。
サブクラスでは値オブジェクトのメンバに対するアクセスメソッドが定義されています。
//emlist[例][ruby]{
Dog = Data.define(:name, :age)
fred = Dog.new("Fred", 5)
p fred.name # =>......"Fred"
p fred.age # => 5
//}
メンバの値を書き換えることはできません。
//emlist[例][ruby]{
Dog = Data.define(:name, :age)
fred = Dog.new("Fred", 5)
fred.age = 6 # => NoMethodError
//}
メンバを持たないサブクラスも定義可能です。
以下のように、パタ......]{
class HTTPFetcher
Response = Data.define(:body)
NotFound = Data.define
def get(url)
# ダミーの実装
if url == "http://example.com/"
Response.new(body: "Current time is #{Time.now}")
else
NotFound.new
end
end
end
def fetch(url)
fetcher = HTTPFetcher.new... -
Data
# ==(other) -> bool (21062.0) -
self と other のクラスが同じであり、各メンバが == メソッドで比較して等しい場合に true を返します。そうでない場合に false を返します。
...す。
@param other self と比較したいオブジェクトを指定します。
//emlist[例][ruby]{
Dog = Data.define(:name, :age)
dog1 = Dog.new("Fred", 5)
dog2 = Dog.new("Fred", 5.0)
p 5 == 5.0 # => true
p 5.eql?(5.0) # => false
p dog1 == dog2 # => true
p dog1.eql......=> false
p dog1.equal?(dog2) # => false
//}
[注意] 本メソッドの記述は Data のサブクラスのインスタンスに対して呼び
出す事を想定しています。Data.define は Data のサブクラスを作成する点に
注意してください。
@see Object#==, Data#eql?... -
Data
# hash -> Integer (21060.0) -
自身のハッシュ値を整数で返します。 Data#eql? で比較して等しいオブジェクトは同じハッシュ値を返します。
...値を整数で返します。
Data#eql? で比較して等しいオブジェクトは同じハッシュ値を返します。
//emlist[例][ruby]{
Dog = Data.define(:name, :age)
dog1 = Dog.new("Fred", 5)
p dog1.hash # => -3931425561194935428
dog2 = Dog.new("Fred", 5)
p dog2.hash # => -3931425561194......935428
dog3 = Dog.new("Fred", 6)
p dog3.hash # => -4469132459285820530
//}
[注意] 本メソッドの記述は Data のサブクラスのインスタンスに対して呼び
出す事を想定しています。Data.define は Data のサブクラスを作成する点に
注意してください。... -
Data
# eql?(other) -> bool (21050.0) -
self と other のクラスが同じであり、各メンバが eql? メソッドで比較して等しい場合に true を返します。そうでない場合に false を返します。
...返します。
@param other self と比較したいオブジェクトを指定します。
//emlist[例][ruby]{
Dog = Data.define(:name, :age)
dog1 = Dog.new("Fred", 5)
dog2 = Dog.new("Fred", 5)
p dog1 == dog2 # => true
p dog1.eql?(dog2) # => true
p dog1.equal?(dog2)......# => false
//}
[注意] 本メソッドの記述は Data のサブクラスのインスタンスに対して呼び
出す事を想定しています。Data.define は Data のサブクラスを作成する点に
注意してください。
@see Object#eql?, Data#==... -
Data
# members -> [Symbol] (21032.0) -
値オブジェクトのメンバの名前(Symbol)の配列を返します。
...す。
//emlist[例][ruby]{
Foo = Data.define(:foo, :bar)
p Foo.new(1, 2).members # => [:foo, :bar]
//}
[注意] 本メソッドの記述は Data のサブクラスのインスタンスに対して呼び
出す事を想定しています。Data.define は Data のサブクラスを作成す... -
Data
. members -> [Symbol] (21014.0) -
値オブジェクトのメンバの名前(Symbol)の配列を返します。
...値オブジェクトのメンバの名前(Symbol)の配列を返します。
//emlist[例][ruby]{
Foo = Data.define(:foo, :bar)
p Foo.members # => [:foo, :bar]
//}... -
MatchData
# regexp -> Regexp (9202.0) -
自身の元になった正規表現オブジェクトを返します。
...自身の元になった正規表現オブジェクトを返します。
//emlist[例][ruby]{
m = /a.*b/.match("abc")
m.regexp # => /a.*b/
//}... -
MatchData
# captures -> [String] (9114.0) -
$1, $2, ... を格納した配列を返します。
...。
MatchData#to_a と異なり $& を要素に含みません。
グループにマッチした部分文字列がなければ対応する要素は nil になります。
//emlist[例][ruby]{
/(foo)(bar)(BAZ)?/ =~ "foobarbaz"
p $~.to_a # => ["foobar", "foo", "bar", nil]
p $~.captures # =>......["foo", "bar", nil]
//}
@see MatchData#to_a, MatchData#named_captures... -
GC
:: Profiler . raw _ data -> [Hash , . . . ] | nil (9109.0) -
GC のプロファイル情報を GC の発生ごとに Hash の配列 (:GC_INVOKE_TIME が早いもの順)で返します。GC::Profiler が有効になっ ていない場合は nil を返します。
...。GC::Profiler が有効になっ
ていない場合は nil を返します。
例:
GC::Profiler.enable
GC.start
GC::Profiler.raw_data
# => [
{
:GC_TIME=>1.3000000000000858e-05,
:GC_INVOKE_TIME=>0.010634999999999999,
:HEAP_USE_SIZE=>289640,
:HEAP_TOTAL_SIZE......8960,
:HEAP_TOTAL_OBJECTS=>14724,
:GC_IS_MARKED=>false
},
# ...
]
各項目の意味を以下に示します。
: :GC_TIME
GC の処理時間(秒)
: :GC_INVOKE_TIME
Ruby が起動してから GC が起動するまでに経過した時間(秒)
: :HEAP_USE_SIZE
ヒ......内での使用サイズ(バイト)
: :HEAP_TOTAL_SIZE
ヒープ全体のサイズ(バイト)
: :HEAP_TOTAL_OBJECTS
ヒープ内に存在するオブジェクトの個数
: :GC_IS_MARKED
GC がマークフェイズかどうか
また、GC_PROFILE_MORE_DETAIL を有効にして Ruby を... -
MatchData
# post _ match -> String (9108.0) -
マッチした部分より後ろの文字列を返します($'と同じ)。
...マッチした部分より後ろの文字列を返します($'と同じ)。
//emlist[例][ruby]{
/(bar)(BAZ)?/ =~ "foobarbaz"
p $~.post_match # => "baz"
//}
@see MatchData#pre_match... -
MatchData
# pre _ match -> String (9108.0) -
マッチした部分より前の文字列を返します($`と同じ)。
...マッチした部分より前の文字列を返します($`と同じ)。
//emlist[例][ruby]{
/(bar)(BAZ)?/ =~ "foobarbaz"
p $~.pre_match # => "foo"
//}
@see MatchData#post_match... -
Process
:: RLIMIT _ DATA -> Integer (9103.0) -
リソースの種類がプロセスのデータ領域のサイズであることを示す定数です。
...リソースの種類がプロセスのデータ領域のサイズであることを示す定数です。
Process.#getrlimit、Process.#setrlimit で使われます。
システムによっては定義されていません。... -
MatchData
# inspect -> String (9102.0) -
self の内容を人間に読みやすい文字列にして返します。
...ruby]{
puts /.$/.match("foo").inspect
# => #<MatchData "o">
puts /(.)(.)(.)/.match("foo").inspect
# => #<MatchData "foo" 1:"f" 2:"o" 3:"o">
puts /(.)(.)?(.)/.match("fo").inspect
# => #<MatchData "fo" 1:"f" 2:nil 3:"o">
puts /(?<foo>.)(?<bar>.)(?<baz>.)/.match("hoge").inspect
# => #<MatchData "hog...