種類
- 特異メソッド (25)
- インスタンスメソッド (23)
- 文書 (10)
- クラス (2)
- ライブラリ (1)
ライブラリ
クラス
- Array (5)
- CSV (2)
-
Encoding
:: Converter (2) - Enumerator (3)
-
Enumerator
:: Lazy (1) -
Fiddle
:: Function (1) -
Fiddle
:: Pointer (1) -
File
:: Stat (3) -
Gem
:: StreamUI :: SilentProgressReporter (1) -
Gem
:: StreamUI :: SimpleProgressReporter (1) -
Gem
:: StreamUI :: VerboseProgressReporter (1) - Logger (1)
-
Logger
:: LogDevice (1) - Object (4)
-
OpenSSL
:: PKey :: DSA (4) -
OpenSSL
:: PKey :: RSA (5) - StringScanner (3)
-
Thread
:: Queue (2) -
Thread
:: SizedQueue (4) -
WIN32OLE
_ METHOD (2)
モジュール
- Rake (1)
キーワード
-
1
. 6 . 8から1 . 8 . 0への変更点(まとめ) (1) - ConditionVariable (1)
-
NEWS for Ruby 2
. 0 . 0 (1) -
NEWS for Ruby 2
. 2 . 0 (1) -
NEWS for Ruby 2
. 4 . 0 (1) -
NEWS for Ruby 2
. 5 . 0 (1) - Ruby用語集 (1)
- Stat (1)
- application= (1)
- blksize (1)
- clear (1)
- close (1)
- deq (1)
-
enum
_ for (2) - fiddle (1)
-
field
_ size _ limit (1) - length (1)
-
matched
_ size (1) - pack (2)
- pop (1)
-
primitive
_ convert (2) -
ruby 1
. 6 feature (1) -
ruby 1
. 8 . 2 feature (1) - shift (1)
- size? (1)
-
size
_ opt _ params (1) -
size
_ params (1) - terminate (1)
-
to
_ enum (2) - メソッド呼び出し(super・ブロック付き・yield) (1)
- 制御構造 (1)
検索結果
先頭5件
- Logger
. new(logdev , shift _ age = 0 , shift _ size = 1048576 , level: Logger :: Severity :: DEBUG , progname: nil , formatter: Formatter . new , datetime _ format: nil , shift _ period _ suffix: & # 39;%Y%m%d& # 39;) -> Logger - Enumerator
. new(size=nil) {|y| . . . } -> Enumerator - Array
. new(size = 0 , val = nil) -> Array - Fiddle
:: Pointer . new(addr , size = 0 , free = nil) -> Fiddle :: Pointer - Enumerator
:: Lazy . new(obj , size=nil) {|yielder , *values| . . . } -> Enumerator :: Lazy
-
Logger
. new(logdev , shift _ age = 0 , shift _ size = 1048576 , level: Logger :: Severity :: DEBUG , progname: nil , formatter: Formatter . new , datetime _ format: nil , shift _ period _ suffix: & # 39;%Y%m%d& # 39;) -> Logger (55696.0) -
Logger オブジェクトを生成します。
Logger オブジェクトを生成します。
@param logdev ログを書き込むファイル名か、 IO オブジェクト(STDOUT, STDERR など)を指定します。
@param shift_age ログファイルを保持する数か、ログファイルを切り替える頻度を指定します。
頻度には daily, weekly, monthly を文字列で指定することができます。
省略すると、ログの保存先を切り替えません。
@param shift_size shift_age を整数で指定した場合のみ有効です。
... -
Enumerator
. new(size=nil) {|y| . . . } -> Enumerator (55024.0) -
Enumerator オブジェクトを生成して返します。与えられたブロックは Enumerator::Yielder オブジェクトを 引数として実行されます。
Enumerator オブジェクトを生成して返します。与えられたブロックは Enumerator::Yielder オブジェクトを
引数として実行されます。
生成された Enumerator オブジェクトに対して each を呼ぶと、この生成時に指定されたブロックを
実行し、Yielder オブジェクトに対して << メソッドが呼ばれるたびに、
each に渡されたブロックが繰り返されます。
new に渡されたブロックが終了した時点で each の繰り返しが終わります。
このときのブロックの返り値が each の返り値となります。
@param size 生成する Enumerator... -
Array
. new(size = 0 , val = nil) -> Array (55021.0) -
長さ size の配列を生成し、各要素を val で初期化して返します。
長さ size の配列を生成し、各要素を val で初期化して返します。
要素毎に val が複製されるわけではないことに注意してください。
全要素が同じオブジェクト val を参照します。
後述の例では、配列の各要素は全て同一の文字列を指します。
@param size 配列の長さを数値で指定します。
@param val 配列の要素の値を指定します。
//emlist[例][ruby]{
ary = Array.new(3, "foo")
p ary #=> ["foo", "foo", "foo"]
ary[0].capitalize!
... -
Fiddle
:: Pointer . new(addr , size = 0 , free = nil) -> Fiddle :: Pointer (54964.0) -
与えられた addr が指すメモリ領域を表す Pointer オブジェクトを生成して返します。
与えられた addr が指すメモリ領域を表す Pointer オブジェクトを生成して返します。
size を指定した場合、アドレス addr に確保されているメモリ領域のサイズは
size であると仮定されます。GC は free 関数を使用してメモリを解放します。
@param addr 生成する Pointer オブジェクトが指すアドレスを整数で指定します。
@param size 生成する Pointer オブジェクトが指すメモリ領域のサイズを整数で指定します。
@param free GC 時に呼ばれる free 関数を Fiddle::Function オブジェクトか
... -
Enumerator
:: Lazy . new(obj , size=nil) {|yielder , *values| . . . } -> Enumerator :: Lazy (54946.0) -
Lazy Enumerator を作成します。Enumerator::Lazy#force メソッドなどに よって列挙が実行されたとき、objのeachメソッドが実行され、値が一つずつ ブロックに渡されます。ブロックは、yielder を使って最終的に yield される値を 指定できます。
Lazy Enumerator を作成します。Enumerator::Lazy#force メソッドなどに
よって列挙が実行されたとき、objのeachメソッドが実行され、値が一つずつ
ブロックに渡されます。ブロックは、yielder を使って最終的に yield される値を
指定できます。
//emlist[Enumerable#filter_map と、その遅延評価版を定義する例][ruby]{
module Enumerable
def filter_map(&block)
map(&block).compact
end
end
class Enumerator::... -
Gem
:: StreamUI :: SilentProgressReporter . new(out _ stream , size , initial _ message , terminal _ message = nil) (54928.0) -
何もしません。
何もしません。
@param out_stream 指定しても意味がありません。
@param size 指定しても意味がありません。
@param initial_message 指定しても意味がありません。
@param terminal_message 指定しても意味がありません。 -
Gem
:: StreamUI :: SimpleProgressReporter . new(out _ stream , size , initial _ message , terminal _ message = nil) (54928.0) -
このクラスを初期化します。
このクラスを初期化します。
@param out_stream 出力ストリームを指定します。
@param size 処理する全体の数です。
@param initial_message 初期化が終わったときに表示するメッセージを指定します。
@param terminal_message 終了時に表示するメッセージです。 -
Gem
:: StreamUI :: VerboseProgressReporter . new(out _ stream , size , initial _ message , terminal _ message = nil) (54928.0) -
このクラスを初期化します。
このクラスを初期化します。
@param out_stream 出力ストリームを指定します。
@param size 処理する全体の数を指定します。
@param initial_message 初期化がおわったときに表示するメッセージを指定します。
@param terminal_message 終了時に表示するメッセージです。 -
Array
. new(size) {|index| . . . } -> Array (54736.0) -
長さ size の配列を生成し、各要素のインデックスを引数としてブロックを実行し、 各要素の値をブロックの評価結果に設定します。
長さ size の配列を生成し、各要素のインデックスを引数としてブロックを実行し、
各要素の値をブロックの評価結果に設定します。
ブロックは要素毎に実行されるので、全要素をあるオブジェクトの複製にすることができます。
@param size 配列の長さを数値で指定します。
//emlist[例][ruby]{
ary = Array.new(3){|index| "hoge#{index}"}
p ary #=> ["hoge0", "hoge1", "hoge2"]
//}
//emlist[例][ruby]{
ary = Array.ne... -
Enumerator
# size -> Integer | Float :: INFINITY | nil (54733.0) -
self の要素数を返します。
self の要素数を返します。
要素数が無限の場合は Float::INFINITY を返します。
Enumerator.new に Proc オブジェクトを指定していた場合はその
実行結果を返します。呼び出した時に要素数が不明であった場合は nil を返し
ます。
//emlist[例][ruby]{
(1..100).to_a.permutation(4).size # => 94109400
loop.size # => Float::INFINITY
(1..100).drop_while.size # => nil
//}
@see Enumerator.new -
CSV
. new(data , options = Hash . new) -> CSV (54715.0) -
このメソッドは CSV ファイルを読み込んだり、書き出したりするために String か IO のインスタンスをラップします。
このメソッドは CSV ファイルを読み込んだり、書き出したりするために
String か IO のインスタンスをラップします。
ラップされた文字列の先頭から読み込むことになります。
文字列に追記したい場合は CSV.generate を使用してください。
他の位置から処理したい場合はあらかじめそのように設定した StringIO を渡してください。
@param data String か IO のインスタンスを指定します。
String のインスタンスを指定した場合、CSV#string を使用して
後からデータを取り出すことが出来ます。... -
Fiddle
:: Function . new(ptr , args , ret _ type , abi=Fiddle :: Function :: DEFAULT , name: nil) -> Fiddle :: Function (54661.0) -
ptr (関数ポインタ)から Fiddle::Function オブジェクトを 生成します。
ptr (関数ポインタ)から Fiddle::Function オブジェクトを
生成します。
ptr には Fiddle::Handle から Fiddle::Handle#sym などで取りだした
関数ポインタ(を表す整数)、もしくは関数を指している
Fiddle::Pointer を渡します。
args、ret_type で関数の引数と返り値の型を指定します。これには以下の
定数が利用できます。「-TYPE_INT」 のように符号を反転させると unsigned を
意味します。
* Fiddle::TYPE_VOID
* Fiddle::TYPE_VOIDP
* Fidd... -
Logger
:: LogDevice . new(log = nil , opt = {}) -> Logger :: LogDevice (54661.0) -
ログの出力先を初期化します。
ログの出力先を初期化します。
@param log ログの出力先。IO オブジェクトを指定します。
省略すると nil が使用されますが、実行中に例外が発生します。
@param opt オプションをハッシュで指定します。
ハッシュのキーには :shift_age, :shift_size を指定します。
省略すると、それぞれ 7, 1048756 (1 MByte) が使用されます。
@see Logger.new -
OpenSSL
:: PKey :: RSA . new(obj , pass = nil) -> OpenSSL :: PKey :: RSA (54646.0) -
RSA 暗号鍵オブジェクトを生成します。
RSA 暗号鍵オブジェクトを生成します。
引数なしの場合は空の RSA オブジェクトを返します。
第一引数に整数を指定した場合には、OpenSSL::PKey::RSA.generate により
公開鍵と秘密鍵のペアを生成し、それを返します。
それ以外の場合には、以下のようにして鍵データを読みこみ、RSA オブジェクト
を生成します。
* 第一引数が文字列の場合は、PEM 形式もしくは DER 形式と仮定して
鍵データを読み込みます
* 第一引数が IO オブジェクトの場合は、その内容を
読み込んで RSA オブジェクトを生成します。
* 第一引数が to_d... -
OpenSSL
:: PKey :: RSA . new(obj , pass = nil) {|flag| . . . } -> OpenSSL :: PKey :: RSA (54646.0) -
RSA 暗号鍵オブジェクトを生成します。
RSA 暗号鍵オブジェクトを生成します。
引数なしの場合は空の RSA オブジェクトを返します。
第一引数に整数を指定した場合には、OpenSSL::PKey::RSA.generate により
公開鍵と秘密鍵のペアを生成し、それを返します。
それ以外の場合には、以下のようにして鍵データを読みこみ、RSA オブジェクト
を生成します。
* 第一引数が文字列の場合は、PEM 形式もしくは DER 形式と仮定して
鍵データを読み込みます
* 第一引数が IO オブジェクトの場合は、その内容を
読み込んで RSA オブジェクトを生成します。
* 第一引数が to_d... -
OpenSSL
:: PKey :: RSA . new(size , exponent = 65537) -> OpenSSL :: PKey :: RSA (54646.0) -
RSA 暗号鍵オブジェクトを生成します。
RSA 暗号鍵オブジェクトを生成します。
引数なしの場合は空の RSA オブジェクトを返します。
第一引数に整数を指定した場合には、OpenSSL::PKey::RSA.generate により
公開鍵と秘密鍵のペアを生成し、それを返します。
それ以外の場合には、以下のようにして鍵データを読みこみ、RSA オブジェクト
を生成します。
* 第一引数が文字列の場合は、PEM 形式もしくは DER 形式と仮定して
鍵データを読み込みます
* 第一引数が IO オブジェクトの場合は、その内容を
読み込んで RSA オブジェクトを生成します。
* 第一引数が to_d... -
OpenSSL
:: PKey :: RSA . new(size , exponent = 65537) {|u , n| . . . } -> OpenSSL :: PKey :: RSA (54646.0) -
RSA 暗号鍵オブジェクトを生成します。
RSA 暗号鍵オブジェクトを生成します。
引数なしの場合は空の RSA オブジェクトを返します。
第一引数に整数を指定した場合には、OpenSSL::PKey::RSA.generate により
公開鍵と秘密鍵のペアを生成し、それを返します。
それ以外の場合には、以下のようにして鍵データを読みこみ、RSA オブジェクト
を生成します。
* 第一引数が文字列の場合は、PEM 形式もしくは DER 形式と仮定して
鍵データを読み込みます
* 第一引数が IO オブジェクトの場合は、その内容を
読み込んで RSA オブジェクトを生成します。
* 第一引数が to_d... -
OpenSSL
:: PKey :: DSA . new(obj , pass=nil) -> OpenSSL :: PKey :: DSA (54640.0) -
DSA オブジェクトを生成します。
DSA オブジェクトを生成します。
引数なしの場合は空の DSA オブジェクトを返します。
第一引数に整数を指定した場合には、OpenSSL::PKey::DSA.generate により
公開鍵と秘密鍵のペアを生成し、それを返します。
それ以外の場合には、以下のようにして鍵データを読みこみ、DSA オブジェクト
を生成します。
* 第一引数が文字列の場合は、PEM 形式もしくは DER 形式と仮定して
鍵データを読み込みます
* 第一引数が IO オブジェクトの場合は、その内容を
読み込んで DSA オブジェクトを生成します。
* 第一引数が to_der ... -
OpenSSL
:: PKey :: DSA . new(obj , pass=nil) {|flag| . . . } -> OpenSSL :: PKey :: DSA (54640.0) -
DSA オブジェクトを生成します。
DSA オブジェクトを生成します。
引数なしの場合は空の DSA オブジェクトを返します。
第一引数に整数を指定した場合には、OpenSSL::PKey::DSA.generate により
公開鍵と秘密鍵のペアを生成し、それを返します。
それ以外の場合には、以下のようにして鍵データを読みこみ、DSA オブジェクト
を生成します。
* 第一引数が文字列の場合は、PEM 形式もしくは DER 形式と仮定して
鍵データを読み込みます
* 第一引数が IO オブジェクトの場合は、その内容を
読み込んで DSA オブジェクトを生成します。
* 第一引数が to_der ... -
OpenSSL
:: PKey :: DSA . new(size) -> OpenSSL :: PKey :: DSA (54640.0) -
DSA オブジェクトを生成します。
DSA オブジェクトを生成します。
引数なしの場合は空の DSA オブジェクトを返します。
第一引数に整数を指定した場合には、OpenSSL::PKey::DSA.generate により
公開鍵と秘密鍵のペアを生成し、それを返します。
それ以外の場合には、以下のようにして鍵データを読みこみ、DSA オブジェクト
を生成します。
* 第一引数が文字列の場合は、PEM 形式もしくは DER 形式と仮定して
鍵データを読み込みます
* 第一引数が IO オブジェクトの場合は、その内容を
読み込んで DSA オブジェクトを生成します。
* 第一引数が to_der ... -
Array
. new(ary) -> Array (54376.0) -
指定された配列 ary を複製して返します。 Array#dup 同様 要素を複製しない浅い複製です。
指定された配列 ary を複製して返します。
Array#dup 同様 要素を複製しない浅い複製です。
@param ary 複製したい配列を指定します。
//emlist[例][ruby]{
p Array.new([1,2,3]) # => [1,2,3]
a = ["a", "b", "c"]
b = Array.new(a)
a.each{|s| s.capitalize! }
p a #=> ["A", "B", "C"]
p b #=> ["A", "B", "C"] (b は ... -
File
:: Stat . new(path) -> File :: Stat (54376.0) -
path に関する File::Stat オブジェクトを生成して返します。 File.stat と同じです。
path に関する File::Stat オブジェクトを生成して返します。
File.stat と同じです。
@param path ファイルのパスを指定します。
@raise Errno::ENOENT pathに該当するファイルが存在しない場合発生します。
//emlist[][ruby]{
p $:[0]
#=> 例
# "C:/Program Files/ruby-1.8/lib/ruby/site_ruby/1.8"
p File::Stat.new($:[0])
#=> 例
#<File::Stat dev=0x2, ino=0, mode=040755, nlink=1,... -
Enumerator
. new(obj , method = :each , *args) -> Enumerator (54349.0) -
オブジェクト obj について、 each の代わりに method という 名前のメソッドを使って繰り返すオブジェクトを生成して返します。 args を指定すると、 method の呼び出し時に渡されます。
オブジェクト obj について、 each の代わりに method という
名前のメソッドを使って繰り返すオブジェクトを生成して返します。
args を指定すると、 method の呼び出し時に渡されます。
@param obj イテレータメソッドのレシーバとなるオブジェクト
@param method イテレータメソッドの名前を表すシンボルまたは文字列
@param args イテレータメソッドの呼び出しに渡す任意個の引数
//emlist[例][ruby]{
str = "xyz"
enum = Enumerator.new(str, :each_byte)
p enum.map... -
OpenSSL
:: PKey :: RSA . new -> OpenSSL :: PKey :: RSA (54346.0) -
RSA 暗号鍵オブジェクトを生成します。
RSA 暗号鍵オブジェクトを生成します。
引数なしの場合は空の RSA オブジェクトを返します。
第一引数に整数を指定した場合には、OpenSSL::PKey::RSA.generate により
公開鍵と秘密鍵のペアを生成し、それを返します。
それ以外の場合には、以下のようにして鍵データを読みこみ、RSA オブジェクト
を生成します。
* 第一引数が文字列の場合は、PEM 形式もしくは DER 形式と仮定して
鍵データを読み込みます
* 第一引数が IO オブジェクトの場合は、その内容を
読み込んで RSA オブジェクトを生成します。
* 第一引数が to_d... -
OpenSSL
:: PKey :: DSA . new -> OpenSSL :: PKey :: DSA (54340.0) -
DSA オブジェクトを生成します。
DSA オブジェクトを生成します。
引数なしの場合は空の DSA オブジェクトを返します。
第一引数に整数を指定した場合には、OpenSSL::PKey::DSA.generate により
公開鍵と秘密鍵のペアを生成し、それを返します。
それ以外の場合には、以下のようにして鍵データを読みこみ、DSA オブジェクト
を生成します。
* 第一引数が文字列の場合は、PEM 形式もしくは DER 形式と仮定して
鍵データを読み込みます
* 第一引数が IO オブジェクトの場合は、その内容を
読み込んで DSA オブジェクトを生成します。
* 第一引数が to_der ... -
Thread
:: Queue # size -> Integer (45340.0) -
キューの長さを返します。
キューの長さを返します。
//emlist[例][ruby]{
q = Queue.new
[:resource1, :resource2, :resource3, nil].each { |r| q.push(r) }
q.length # => 4
//} -
StringScanner
# matched _ size -> Integer | nil (18817.0) -
前回マッチした部分文字列の長さを返します。 前回マッチに失敗していたら nil を返します。
前回マッチした部分文字列の長さを返します。
前回マッチに失敗していたら nil を返します。
マッチしたサイズは文字単位でなくバイト単位となります。
//emlist[][ruby]{
require 'strscan'
def run(encode)
utf8 = "\u{308B 3073 3044}" # るびい
s = StringScanner.new(utf8.encode(encode))
s.scan(/#{"\u{308B}".encode(encode)}/)
s.matched_size
end
p run("UTF-8") #=> 3
p... -
File
:: Stat # size? -> Integer | nil (18781.0) -
サイズが0の時にはnil、それ以外の場合はファイルサイズを返します。
サイズが0の時にはnil、それ以外の場合はファイルサイズを返します。
//emlist[][ruby]{
require 'tempfile'
fp = Tempfile.new("temp")
p fp.size #=> 0
p File::Stat.new(fp.path).size? #=> nil
fp.print "not 0 "
fp.close
p FileTest.exist?(fp.path) #=> true
p File::Stat.new(fp.path).size? #=> 6
//} -
WIN32OLE
_ METHOD # size _ opt _ params -> Integer | nil (18679.0) -
オプションパラメータ数を取得します。
オプションパラメータ数を取得します。
@return オプションパラメータ数を整数で返します。メソッドの詳細情報を取
得できない場合はnilを返します。
tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'Workbook')
method = WIN32OLE_METHOD.new(tobj, 'SaveAs')
puts method.size_opt_params # => 5 -
WIN32OLE
_ METHOD # size _ params -> Integer | nil (18679.0) -
パラメータ数を取得します。
パラメータ数を取得します。
@return パラメータ数を整数で返します。メソッドの詳細情報を取得できない
場合はnilを返します。
tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'Workbook')
method = WIN32OLE_METHOD.new(tobj, 'SaveAs')
puts method.size_params # => 12 -
CSV
# field _ size _ limit -> Integer (18448.0) -
フィールドサイズの最大値を返します。
フィールドサイズの最大値を返します。
//emlist[例][ruby]{
require "csv"
csv = CSV.new(DATA)
csv.field_size_limit # => nil
p csv.read # => [["a", "b"], ["\n2\n2\n", ""]]
DATA.rewind
csv = CSV.new(DATA, field_size_limit: 4)
p csv.field_size_limit # => 4
csv.read # => #<CSV::MalformedCSVError: Field size exceeded on l... -
NEWS for Ruby 2
. 0 . 0 (18379.0) -
NEWS for Ruby 2.0.0 このドキュメントは前回リリース以降のバグ修正を除くユーザーに影響のある機能の変更のリストです。
NEWS for Ruby 2.0.0
このドキュメントは前回リリース以降のバグ修正を除くユーザーに影響のある機能の変更のリストです。
それぞれのエントリーは参照情報があるため短いです。
十分な情報と共に書かれた全ての変更のリストは ChangeLog ファイルか bugs.ruby-lang.org の issue を参照してください。
== 1.9.3 以降の変更
=== 言語仕様の変更
* キーワード引数を追加しました
* %i, %I をシンボルの配列作成のために追加しました。(%w, %W に似ています)
* デフォルトのソースエンコーディングを US-ASCI... -
File
:: Stat # blksize -> Integer (18337.0) -
望ましいI/Oのブロックサイズを返します。
望ましいI/Oのブロックサイズを返します。
//emlist[][ruby]{
fs = File::Stat.new($0)
#例
p fs.blksize #=> nil
//} -
NEWS for Ruby 2
. 5 . 0 (18307.0) -
NEWS for Ruby 2.5.0 このドキュメントは前回リリース以降のバグ修正を除くユーザーに影響のある機能の変更のリストです。
NEWS for Ruby 2.5.0
このドキュメントは前回リリース以降のバグ修正を除くユーザーに影響のある機能の変更のリストです。
それぞれのエントリーは参照情報があるため短いです。
十分な情報と共に書かれた全ての変更のリストは ChangeLog ファイルか bugs.ruby-lang.org の issue を参照してください。
== 2.4.0 以降の変更
=== 言語仕様の変更
* トップレベルの定数参照を削除しました 11547
* do/end ブロック内部で rescue/else/ensure を書けるようになりました 12906
* 文字列の式展... -
NEWS for Ruby 2
. 4 . 0 (18127.0) -
NEWS for Ruby 2.4.0 このドキュメントは前回リリース以降のバグ修正を除くユーザーに影響のある機能の変更のリストです。
NEWS for Ruby 2.4.0
このドキュメントは前回リリース以降のバグ修正を除くユーザーに影響のある機能の変更のリストです。
それぞれのエントリーは参照情報があるため短いです。
十分な情報と共に書かれた全ての変更のリストは ChangeLog ファイルか bugs.ruby-lang.org の issue を参照してください。
== 2.3.0 以降の変更
=== 言語仕様の変更
* 条件式での多重代入ができるようになりました 10617
* Symbol#to_proc でメソッド呼び出し元での Refinements が有効になりました 9451
* Ob... -
NEWS for Ruby 2
. 2 . 0 (18091.0) -
NEWS for Ruby 2.2.0 このドキュメントは前回リリース以降のバグ修正を除くユーザーに影響のある機能の変更のリストです。
NEWS for Ruby 2.2.0
このドキュメントは前回リリース以降のバグ修正を除くユーザーに影響のある機能の変更のリストです。
それぞれのエントリーは参照情報があるため短いです。
十分な情報と共に書かれた全ての変更のリストは ChangeLog ファイルか bugs.ruby-lang.org の issue を参照してください。
== 2.1.0 以降の変更
=== 言語仕様の変更
* nil/true/false
* nil/true/false はフリーズされました 8923
* Hash リテラル
* 後ろにコロンのあるシンボルをキーにしたと... -
1
. 6 . 8から1 . 8 . 0への変更点(まとめ) (14203.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への変更点(まとめ)/サポートプラットフォームの追加>))
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への変更点(まとめ)/変更されたクラス/メソッド(互換性のない変更)>))... -
ruby 1
. 6 feature (10657.0) -
ruby 1.6 feature ruby version 1.6 は安定版です。この版での変更はバグ修正がメイン になります。
ruby 1.6 feature
ruby version 1.6 は安定版です。この版での変更はバグ修正がメイン
になります。
((<stable-snapshot|URL:ftp://ftp.netlab.co.jp/pub/lang/ruby/stable-snapshot.tar.gz>)) は、日々更新される安定版の最新ソースです。
== 1.6.8 (2002-12-24) -> stable-snapshot
: 2003-01-22: errno
EAGAIN と EWOULDBLOCK が同じ値のシステムで、EWOULDBLOCK がなくなっ
ていま... -
ruby 1
. 8 . 2 feature (10495.0) -
ruby 1.8.2 feature ruby 1.8.2 での ruby 1.8.1 からの変更点です。
ruby 1.8.2 feature
ruby 1.8.2 での ruby 1.8.1 からの変更点です。
掲載方針
*バグ修正の影響も含めて動作が変わるものを収録する。
*単にバグを直しただけのものは収録しない。
*ライブラリへの単なる定数の追加は収録しない。
以下は各変更点に付けるべきタグです。
*カテゴリ
* [ruby]: ruby インタプリタの変更
* [api]: 拡張ライブラリ API
* [lib]: ライブラリ
*レベル
* [bug]: バグ修正
* [new]: 追加されたクラス/メソッドなど
* [compat]: 変更されたクラス/... -
Thread
:: SizedQueue # deq(non _ block = false) -> object (9073.0) -
キューからひとつ値を取り出します。 キューに push しようと待っているスレッドがあれば、実行を再開させます。
キューからひとつ値を取り出します。
キューに push しようと待っているスレッドがあれば、実行を再開させます。
@param non_block true を与えると、キューが空の時に例外 ThreadError が発生します。
//emlist[例][ruby]{
require 'thread'
q = SizedQueue.new(4)
th1 = Thread.start do
while resource = q.pop
puts resource
end
end
[:resource1, :resource2, :resource3, nil].eac... -
Thread
:: SizedQueue # pop(non _ block = false) -> object (9073.0) -
キューからひとつ値を取り出します。 キューに push しようと待っているスレッドがあれば、実行を再開させます。
キューからひとつ値を取り出します。
キューに push しようと待っているスレッドがあれば、実行を再開させます。
@param non_block true を与えると、キューが空の時に例外 ThreadError が発生します。
//emlist[例][ruby]{
require 'thread'
q = SizedQueue.new(4)
th1 = Thread.start do
while resource = q.pop
puts resource
end
end
[:resource1, :resource2, :resource3, nil].eac... -
Thread
:: SizedQueue # shift(non _ block = false) -> object (9073.0) -
キューからひとつ値を取り出します。 キューに push しようと待っているスレッドがあれば、実行を再開させます。
キューからひとつ値を取り出します。
キューに push しようと待っているスレッドがあれば、実行を再開させます。
@param non_block true を与えると、キューが空の時に例外 ThreadError が発生します。
//emlist[例][ruby]{
require 'thread'
q = SizedQueue.new(4)
th1 = Thread.start do
while resource = q.pop
puts resource
end
end
[:resource1, :resource2, :resource3, nil].eac... -
Thread
:: SizedQueue # close -> self (9037.0) -
キューを close します。詳しくは Thread::Queue#close を参照してください。
キューを close します。詳しくは Thread::Queue#close を参照してください。
Thread::Queue とはキューにオブジェクトを追加するスレッドの動作が
異なります。キューにオブジェクトを追加するスレッドを待機している場合は
ClosedQueueError が発生して中断されます。
//emlist[例][ruby]{
q = SizedQueue.new(4)
[:resource1, :resource2, :resource3, nil].each { |r| q.push(r) }
q.closed? # => false
q.close
q.c... -
Array
# pack(template , buffer: String . new) -> String (412.0) -
配列の内容を template で指定された文字列にしたがって、 バイナリとしてパックした文字列を返します。
配列の内容を template で指定された文字列にしたがって、
バイナリとしてパックした文字列を返します。
テンプレートは
型指定文字列とその長さ(省略時は1)を並べたものです。長さと
して * が指定された時は「残りのデータ全て」の長さを
表します。型指定文字は以下で述べる pack テンプレート文字列の通りです。
buffer が指定されていれば、バッファとして使って返値として返します。
もし template の最初にオフセット (@) が指定されていれば、
結果はオフセットの後ろから詰められます。
buffer の元の内容がオフセットより長ければ、
オフセットより後ろの部分は上... -
制御構造 (361.0)
-
制御構造 条件分岐: * if * unless * case 繰り返し: * while * until * for * break * next * redo * retry 例外処理: * raise * begin その他: * return * BEGIN * END
制御構造
条件分岐:
* if
* unless
* case
繰り返し:
* while
* until
* for
* break
* next
* redo
* retry
例外処理:
* raise
* begin
その他:
* return
* BEGIN
* END
Rubyでは(Cなどとは異なり)制御構造は式であって、何らかの値を返すものが
あります(返さないものもあります。値を返さない式を代入式の右辺に置くと
syntax error になります)。
R... -
Encoding
:: Converter # primitive _ convert(source _ buffer , destination _ buffer , destination _ byteoffset , destination _ bytesize) -> Symbol (337.0) -
エンコーディング変換のためのメソッドの中で、もっとも細かな扱いが可能なメソッドです。
エンコーディング変換のためのメソッドの中で、もっとも細かな扱いが可能なメソッドです。
可搬性を確保しつつ、不正なバイトや変換先で未定義な文字の扱いを細かに指定したいときは、Encoding::Converter#primitive_convert が唯一の方法になります。
@param source_buffer 変換元文字列のバッファ
@param destination_buffer 変換先文字列を格納するバッファ
@param destination_byteoffset 変換先バッファでのオフセット
@param destination_bytesize 変換先バッファの容量
@... -
Encoding
:: Converter # primitive _ convert(source _ buffer , destination _ buffer , destination _ byteoffset , destination _ bytesize , options) -> Symbol (337.0) -
エンコーディング変換のためのメソッドの中で、もっとも細かな扱いが可能なメソッドです。
エンコーディング変換のためのメソッドの中で、もっとも細かな扱いが可能なメソッドです。
可搬性を確保しつつ、不正なバイトや変換先で未定義な文字の扱いを細かに指定したいときは、Encoding::Converter#primitive_convert が唯一の方法になります。
@param source_buffer 変換元文字列のバッファ
@param destination_buffer 変換先文字列を格納するバッファ
@param destination_byteoffset 変換先バッファでのオフセット
@param destination_bytesize 変換先バッファの容量
@... -
メソッド呼び出し(super・ブロック付き・yield) (253.0)
-
メソッド呼び出し(super・ブロック付き・yield) * super * block * yield * block_arg * numbered_parameters * call_method
メソッド呼び出し(super・ブロック付き・yield)
* super
* block
* yield
* block_arg
* numbered_parameters
* call_method
//emlist[例][ruby]{
foo.bar()
foo.bar
bar()
print "hello world\n"
print
Class.new
Class::new
//}
文法:
[式 `.'] 識別子 [`(' [[`*'] 式] ... [`&' 式] `)']
[式 `::'] 識別子 [`(' ... -
Thread
:: ConditionVariable (181.0) -
スレッドの同期機構の一つである状態変数を実現するクラスです。
スレッドの同期機構の一つである状態変数を実現するクラスです。
以下も ConditionVariable を理解するのに参考になります。
https://ruby-doc.com/docs/ProgrammingRuby/html/tut_threads.html#UF
=== Condition Variable とは
あるスレッド A が排他領域で動いていたとします。スレッド A は現在空いていない
リソースが必要になったので空くまで待つことにしたとします。これはうまくいきません。
なぜなら、スレッド A は排他領域で動いているわけですから、他のスレッドは動くことが
できません。リ... -
Object
# enum _ for(method = :each , *args) -> Enumerator (175.0) -
Enumerator.new(self, method, *args) を返します。
Enumerator.new(self, method, *args) を返します。
ブロックを指定した場合は Enumerator#size がブロックの評価結果を返
します。ブロックパラメータは引数 args です。
@param method メソッド名の文字列かシンボルです。
@param args 呼び出すメソッドに渡される引数です。
//emlist[][ruby]{
str = "xyz"
enum = str.enum_for(:each_byte)
p(a = enum.map{|b| '%02x' % b }) #=> ["78", "79", "7a"]
#... -
Object
# enum _ for(method = :each , *args) {|*args| . . . } -> Enumerator (175.0) -
Enumerator.new(self, method, *args) を返します。
Enumerator.new(self, method, *args) を返します。
ブロックを指定した場合は Enumerator#size がブロックの評価結果を返
します。ブロックパラメータは引数 args です。
@param method メソッド名の文字列かシンボルです。
@param args 呼び出すメソッドに渡される引数です。
//emlist[][ruby]{
str = "xyz"
enum = str.enum_for(:each_byte)
p(a = enum.map{|b| '%02x' % b }) #=> ["78", "79", "7a"]
#... -
Object
# to _ enum(method = :each , *args) -> Enumerator (175.0) -
Enumerator.new(self, method, *args) を返します。
Enumerator.new(self, method, *args) を返します。
ブロックを指定した場合は Enumerator#size がブロックの評価結果を返
します。ブロックパラメータは引数 args です。
@param method メソッド名の文字列かシンボルです。
@param args 呼び出すメソッドに渡される引数です。
//emlist[][ruby]{
str = "xyz"
enum = str.enum_for(:each_byte)
p(a = enum.map{|b| '%02x' % b }) #=> ["78", "79", "7a"]
#... -
Object
# to _ enum(method = :each , *args) {|*args| . . . } -> Enumerator (175.0) -
Enumerator.new(self, method, *args) を返します。
Enumerator.new(self, method, *args) を返します。
ブロックを指定した場合は Enumerator#size がブロックの評価結果を返
します。ブロックパラメータは引数 args です。
@param method メソッド名の文字列かシンボルです。
@param args 呼び出すメソッドに渡される引数です。
//emlist[][ruby]{
str = "xyz"
enum = str.enum_for(:each_byte)
p(a = enum.map{|b| '%02x' % b }) #=> ["78", "79", "7a"]
#... -
Ruby用語集 (163.0)
-
Ruby用語集 A B C D E F G I J M N O R S Y
Ruby用語集
A B C D E F G I J M N O R S Y
a ka sa ta na ha ma ya ra wa
=== 記号・数字
: %記法
: % notation
「%」記号で始まる多種多様なリテラル記法の総称。
参照:d:spec/literal#percent
: 0 オリジン
: zero-based
番号が 0 から始まること。
例えば、
Array や Vector、Matrix などの要素の番号、
String における文字の位置、
といったものは 0 オリジンである。
: 1 オリジン
: one-based
... -
Rake
. application=(app) (127.0) -
現在の Rake アプリケーションをセットします。
現在の Rake アプリケーションをセットします。
@param app Rake::Application のインスタンスを指定します。
//emlist[][ruby]{
# Rakefile での記載例とする
require 'pp'
task default: :test_rake_app
task :test_rake_app do
app = Rake::Application.new
app.tty_output = true
Rake.application = app
pp Rake.application
end
# => #<Rake::App... -
Array
# pack(template) -> String (112.0) -
配列の内容を template で指定された文字列にしたがって、 バイナリとしてパックした文字列を返します。
配列の内容を template で指定された文字列にしたがって、
バイナリとしてパックした文字列を返します。
テンプレートは
型指定文字列とその長さ(省略時は1)を並べたものです。長さと
して * が指定された時は「残りのデータ全て」の長さを
表します。型指定文字は以下で述べる pack テンプレート文字列の通りです。
buffer が指定されていれば、バッファとして使って返値として返します。
もし template の最初にオフセット (@) が指定されていれば、
結果はオフセットの後ろから詰められます。
buffer の元の内容がオフセットより長ければ、
オフセットより後ろの部分は上... -
fiddle (91.0)
-
*.dllや*.soなど、ダイナミックリンクライブラリを扱うためのライブラリです。
*.dllや*.soなど、ダイナミックリンクライブラリを扱うためのライブラリです。
dl と同等の機能を持ちますが、
dl は 2.0 以降deprecated となり、2.2.0 で削除されました。このライブラリ
を代わりに使います。
=== 使い方
通常は fiddle/import ライブラリを require して
Fiddle::Importer モジュールを使用します。
Fiddle モジュール自体はプリミティブな機能しか提供していません。
Fiddle::Importer モジュールは以下のようにユーザが定義した
モジュールを拡張する形で使います。
require ... -
StringScanner
# clear -> self (73.0) -
スキャンポインタを文字列末尾後まで進め、マッチ記録を捨てます。
スキャンポインタを文字列末尾後まで進め、マッチ記録を捨てます。
@return self を返します。
pos = self.string.size と同じ動作です。
//emlist[例][ruby]{
require 'strscan'
s = StringScanner.new('test string')
s.scan(/\w+/) # => "test"
s.matched # => "test"
s.pos # => 4
s[0] # => "test"
s.terminate
s.matched # => nil
s[0]... -
StringScanner
# terminate -> self (73.0) -
スキャンポインタを文字列末尾後まで進め、マッチ記録を捨てます。
スキャンポインタを文字列末尾後まで進め、マッチ記録を捨てます。
@return self を返します。
pos = self.string.size と同じ動作です。
//emlist[例][ruby]{
require 'strscan'
s = StringScanner.new('test string')
s.scan(/\w+/) # => "test"
s.matched # => "test"
s.pos # => 4
s[0] # => "test"
s.terminate
s.matched # => nil
s[0]... -
File
:: Stat (55.0) -
ファイルの情報を格納したオブジェクトのクラス。
ファイルの情報を格納したオブジェクトのクラス。
FileTest に同名のモジュール関数がある場合はそれと同じ働きをします。ただ、
ファイル名を引数に取るかわりに Stat 自身について判定する点が違います。
//emlist[][ruby]{
p File::Stat.new($0).directory? #=> false
p FileTest.directory?($0) #=> false
//}
1.8 以降では、属性メソッドがシステムでサポートされていない場合 nil が返ります。
なお、1.7 以前では 0 が返っていました。
dev デバイス番号(フ... -
Thread
:: Queue # length -> Integer (40.0) -
キューの長さを返します。
キューの長さを返します。
//emlist[例][ruby]{
q = Queue.new
[:resource1, :resource2, :resource3, nil].each { |r| q.push(r) }
q.length # => 4
//}