ライブラリ
- ビルトイン (456)
- etc (12)
- fiddle (360)
-
fiddle
/ import (24) - openssl (252)
- pathname (12)
- shell (12)
-
shell
/ command-processor (12) -
shell
/ filter (12) - socket (72)
- stringio (38)
- strscan (48)
- zlib (12)
クラス
-
ARGF
. class (38) - Data (18)
-
Fiddle
:: CStruct (12) -
Fiddle
:: Pointer (348) - IO (38)
-
OpenSSL
:: PKey :: EC (36) -
OpenSSL
:: PKey :: EC :: Group (48) -
OpenSSL
:: PKey :: EC :: Point (144) - Pathname (12)
- Proc (6)
- Shell (12)
-
Shell
:: CommandProcessor (12) -
Shell
:: Filter (12) - Socket (36)
- String (48)
- StringIO (38)
- StringScanner (48)
- Struct (48)
- TracePoint (248)
-
Zlib
:: Inflate (12)
モジュール
- Etc (12)
-
Fiddle
:: Importer (12) -
Socket
:: Constants (36)
キーワード
- + (12)
- +@ (12)
- - (12)
- -@ (12)
- <=> (12)
- == (24)
-
AF
_ PPP (24) - Error (12)
-
IFF
_ POINTOPOINT (24) -
NEWS for Ruby 2
. 7 . 0 (6) -
PF
_ PPP (24) - Pointer (12)
-
SC
_ 2 _ PBS _ CHECKPOINT (12) - TracePoint (12)
- [] (54)
- []= (24)
- binding (12)
-
callee
_ id (12) -
check
_ point (18) - codepoints (66)
- define (6)
-
defined
_ class (12) -
dh
_ compute _ key (12) - disable (24)
-
each
_ codepoint (96) - enable (24)
- enabled? (12)
- eql? (24)
-
eval
_ script (7) - event (12)
-
finish
_ all _ jobs (18) - free (12)
- free= (12)
- generator (12)
- group (12)
-
import
_ symbol (12) - infinity? (12)
- inspect (12)
-
instruction
_ sequence (7) - invert! (12)
-
is
_ pointer _ to _ heap (12) - lineno (12)
-
make
_ affine! (12) - malloc (12)
-
method
_ id (12) - mountpoint? (12)
- new (102)
- null? (12)
-
on
_ curve? (12) - parameters (7)
- path (12)
-
point
_ conversion _ form (12) -
point
_ conversion _ form= (12) - pointer (12)
- pointer= (12)
- pos (12)
- pos= (12)
- ptr (12)
-
public
_ key (12) -
public
_ key= (12) -
raised
_ exception (12) - ref (12)
-
return
_ value (12) -
ruby2
_ keywords (6) - self (12)
-
set
_ generator (12) -
set
_ to _ infinity! (12) - size (12)
- size= (12)
- stat (11)
-
sync
_ point? (12) -
to
_ bn (12) -
to
_ i (12) -
to
_ int (12) -
to
_ ptr (24) -
to
_ s (24) -
to
_ str (24) -
to
_ value (12) - trace (12)
- パターンマッチ (12)
検索結果
先頭5件
-
NEWS for Ruby 2
. 7 . 0 (90.0) -
NEWS for Ruby 2.7.0 このドキュメントは前回リリース以降のバグ修正を除くユーザーに影響のある機能の変更のリストです。
...1, 2, 3]]
in [a, [b, *c]]
p a #=> 0
p b #=> 1
p c #=> [2, 3]
end
//}
//emlist[][ruby]{
case {a: 0, b: 1}
in {a: 0, x: 1}
:unreachable
in {a: 0, b: var}
p var #=> 1
end
//}
//emlist[][ruby]{
case -1
in 0 then :unreachable
in 1 then :unreachable
end #=> NoMatchingPatternError
//}
//emlist.......parse(json, symbolize_names: true) in {name: "Alice", children: [{name: name, age: age}]}
p name #=> "Bob"
p age #=> 2
JSON.parse(json, symbolize_names: true) in {name: "Alice", children: [{name: "Charlie", age: age}]}
#=> NoMatchingPatternError
//}
* 詳細は https://speakerdeck.com/k_tsj/p......UBY_DESCRIPTIONはSubversionのリビジョンの代わりにGitのリビジョンが
入るようになりました。
* 「__builtin_」構文を使ったRubyによる組み込みメソッドを
サポートしました。 16254
* いくつかのメソッドは(trace_point.rbのよ... -
Struct
. new(*args) -> Class (73.0) -
Struct クラスに新しいサブクラスを作って、それを返します。
...クセスメソッドが定義されています。
//emlist[例][ruby]{
dog = Struct.new("Dog", :name, :age)
fred = dog.new("fred", 5)
fred.age = 6
printf "name:%s age:%d", fred.name, fred.age
#=> "name:fred age:6" を出力します
//}
実装の都合により、クラス名の省略は後づ......@param args 構造体を定義するための可変長引数。String または Symbol を指定します。
//emlist[例][ruby]{
Point = Struct.new(:x, :y, keyword_init: true) # => Point(keyword_init: true)
Point.new(x: 1, y: 2) # => #<struct Point x=1, y=2>
Point.new(x: 1) # => #<struct Po......int x=1, y=nil>
Point.new(y: 2) # => #<struct Point x=nil, y=2>
Point.new(z: 3) # ArgumentError (unknown keywords: z)
//}
=== 第一引数が String の場合
args[0] が String の場合、クラス名になるので、大文字で始まる必要
があります。つまり、以下... -
Struct
. new(*args) {|subclass| block } -> Class (73.0) -
Struct クラスに新しいサブクラスを作って、それを返します。
...クセスメソッドが定義されています。
//emlist[例][ruby]{
dog = Struct.new("Dog", :name, :age)
fred = dog.new("fred", 5)
fred.age = 6
printf "name:%s age:%d", fred.name, fred.age
#=> "name:fred age:6" を出力します
//}
実装の都合により、クラス名の省略は後づ......@param args 構造体を定義するための可変長引数。String または Symbol を指定します。
//emlist[例][ruby]{
Point = Struct.new(:x, :y, keyword_init: true) # => Point(keyword_init: true)
Point.new(x: 1, y: 2) # => #<struct Point x=1, y=2>
Point.new(x: 1) # => #<struct Po......int x=1, y=nil>
Point.new(y: 2) # => #<struct Point x=nil, y=2>
Point.new(z: 3) # ArgumentError (unknown keywords: z)
//}
=== 第一引数が String の場合
args[0] が String の場合、クラス名になるので、大文字で始まる必要
があります。つまり、以下... -
Struct
. new(*args , keyword _ init: false) -> Class (73.0) -
Struct クラスに新しいサブクラスを作って、それを返します。
...クセスメソッドが定義されています。
//emlist[例][ruby]{
dog = Struct.new("Dog", :name, :age)
fred = dog.new("fred", 5)
fred.age = 6
printf "name:%s age:%d", fred.name, fred.age
#=> "name:fred age:6" を出力します
//}
実装の都合により、クラス名の省略は後づ......@param args 構造体を定義するための可変長引数。String または Symbol を指定します。
@param keyword_init true を指定すると、キーワード引数で初期化する構造体を定義します。
//emlist[例][ruby]{
Point = Struct.new(:x, :y, keyword_init: true) # => P......oint(keyword_init: true)
Point.new(x: 1, y: 2) # => #<struct Point x=1, y=2>
Point.new(x: 1) # => #<struct Point x=1, y=nil>
Point.new(y: 2) # => #<struct Point x=nil, y=2>
Point.new(z: 3) # ArgumentError (unknown keywords: z)
//}
=== 第一引数が String の場合
args[0] が... -
Struct
. new(*args , keyword _ init: false) {|subclass| block } -> Class (73.0) -
Struct クラスに新しいサブクラスを作って、それを返します。
...クセスメソッドが定義されています。
//emlist[例][ruby]{
dog = Struct.new("Dog", :name, :age)
fred = dog.new("fred", 5)
fred.age = 6
printf "name:%s age:%d", fred.name, fred.age
#=> "name:fred age:6" を出力します
//}
実装の都合により、クラス名の省略は後づ......@param args 構造体を定義するための可変長引数。String または Symbol を指定します。
@param keyword_init true を指定すると、キーワード引数で初期化する構造体を定義します。
//emlist[例][ruby]{
Point = Struct.new(:x, :y, keyword_init: true) # => P......oint(keyword_init: true)
Point.new(x: 1, y: 2) # => #<struct Point x=1, y=2>
Point.new(x: 1) # => #<struct Point x=1, y=nil>
Point.new(y: 2) # => #<struct Point x=nil, y=2>
Point.new(z: 3) # ArgumentError (unknown keywords: z)
//}
=== 第一引数が String の場合
args[0] が... -
Data
. define(*args) -> Class (72.0) -
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)
f......]{
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......、
initialize メソッドをオーバーライドすることで実現できます。
//emlist[例][ruby]{
Point = Data.define(:x, :y) do
def initialize(x:, y: 0)
super
end
end
p Point.new(x: 1) # => #<data Point x=1, y=0>
p Point.new(x: 1, y: 2) # => #<data Point x=1, y=2>
//}... -
Data
. define(*args) {|subclass| block } -> Class (72.0) -
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)
f......]{
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......、
initialize メソッドをオーバーライドすることで実現できます。
//emlist[例][ruby]{
Point = Data.define(:x, :y) do
def initialize(x:, y: 0)
super
end
end
p Point.new(x: 1) # => #<data Point x=1, y=0>
p Point.new(x: 1, y: 2) # => #<data Point x=1, y=2>
//}... -
Struct
. [](*args) -> Struct (50.0) -
(このメソッドは Struct の下位クラスにのみ定義されています) 構造体オブジェクトを生成して返します。
...(このメソッドは Struct の下位クラスにのみ定義されています)
構造体オブジェクトを生成して返します。
@param args 構造体の初期値を指定します。メンバの初期値は指定されなければ nil です。
@return 構造体クラスのインス......タンス。
@raise ArgumentError 構造体のメンバの数よりも多くの引数を指定した場合に発生します。
//emlist[例][ruby]{
Foo = Struct.new(:foo, :bar)
foo = Foo.new(1)
p foo.values # => [1, nil]
//}... -
Struct
. new(*args) -> Struct (50.0) -
(このメソッドは Struct の下位クラスにのみ定義されています) 構造体オブジェクトを生成して返します。
...(このメソッドは Struct の下位クラスにのみ定義されています)
構造体オブジェクトを生成して返します。
@param args 構造体の初期値を指定します。メンバの初期値は指定されなければ nil です。
@return 構造体クラスのインス......タンス。
@raise ArgumentError 構造体のメンバの数よりも多くの引数を指定した場合に発生します。
//emlist[例][ruby]{
Foo = Struct.new(:foo, :bar)
foo = Foo.new(1)
p foo.values # => [1, nil]
//}... -
Struct
. [](*args) -> Struct (24.0) -
(このメソッドは Struct の下位クラスにのみ定義されています) 構造体オブジェクトを生成して返します。
...(このメソッドは Struct の下位クラスにのみ定義されています)
構造体オブジェクトを生成して返します。
@param args 構造体の初期値を指定します。メンバの初期値は指定されなければ nil です。
@return 構造体クラスのインス......タンス。
@raise ArgumentError 構造体のメンバの数よりも多くの引数を指定した場合に発生します。
//emlist[例][ruby]{
Foo = Struct.new(:foo, :bar)
foo = Foo.new(1)
p foo.values # => [1, nil]
//}... -
Struct
. new(*args) -> Struct (24.0) -
(このメソッドは Struct の下位クラスにのみ定義されています) 構造体オブジェクトを生成して返します。
...(このメソッドは Struct の下位クラスにのみ定義されています)
構造体オブジェクトを生成して返します。
@param args 構造体の初期値を指定します。メンバの初期値は指定されなければ nil です。
@return 構造体クラスのインス......タンス。
@raise ArgumentError 構造体のメンバの数よりも多くの引数を指定した場合に発生します。
//emlist[例][ruby]{
Foo = Struct.new(:foo, :bar)
foo = Foo.new(1)
p foo.values # => [1, nil]
//}... -
Struct
. [](*args) -> Struct (18.0) -
(このメソッドは Struct の下位クラスにのみ定義されています) 構造体オブジェクトを生成して返します。
...(このメソッドは Struct の下位クラスにのみ定義されています)
構造体オブジェクトを生成して返します。
@param args 構造体の初期値を指定します。メンバの初期値は指定されなければ nil です。
@return 構造体クラスのインス......タンス。
@raise ArgumentError 構造体のメンバの数よりも多くの引数を指定した場合に発生します。
//emlist[例][ruby]{
Foo = Struct.new(:foo, :bar)
foo = Foo.new(1)
p foo.values # => [1, nil]
//}... -
Struct
. new(*args) -> Struct (18.0) -
(このメソッドは Struct の下位クラスにのみ定義されています) 構造体オブジェクトを生成して返します。
...(このメソッドは Struct の下位クラスにのみ定義されています)
構造体オブジェクトを生成して返します。
@param args 構造体の初期値を指定します。メンバの初期値は指定されなければ nil です。
@return 構造体クラスのインス......タンス。
@raise ArgumentError 構造体のメンバの数よりも多くの引数を指定した場合に発生します。
//emlist[例][ruby]{
Foo = Struct.new(:foo, :bar)
foo = Foo.new(1)
p foo.values # => [1, nil]
//}...
