ライブラリ
- ビルトイン (44)
- bigdecimal (7)
-
bigdecimal
/ util (2) - fiddle (5)
- json (3)
- matrix (11)
-
net
/ http (1) - objspace (1)
- optparse (9)
- securerandom (1)
-
webrick
/ httpserver (1)
クラス
- BigDecimal (3)
- Complex (2)
-
Enumerator
:: Lazy (6) -
Fiddle
:: Function (2) - Float (14)
- Integer (3)
- Matrix (5)
-
Matrix
:: EigenvalueDecomposition (1) -
Net
:: HTTP (1) - Numeric (2)
- OptionParser (9)
- Random (6)
- Rational (1)
- String (2)
- Time (2)
- Vector (5)
-
WEBrick
:: HTTPServer (1)
モジュール
- BigMath (2)
- Fiddle (3)
-
JSON
:: Generator :: GeneratorMethods :: Float (1) - Kernel (6)
- Math (1)
- ObjectSpace (1)
- Process (1)
- SecureRandom (1)
キーワード
- % (1)
-
1
. 6 . 8から1 . 8 . 0への変更点(まとめ) (1) -
ALIGN
_ FLOAT (1) - BigDecimal (2)
- DIG (1)
- FloatDomainError (1)
-
MANT
_ DIG (1) - Marshal フォーマット (1)
-
NEWS for Ruby 2
. 2 . 0 (1) -
NEWS for Ruby 2
. 6 . 0 (1) - NUM2UINT (1)
- NUM2ULONG (1)
- NUM2USHORT (1)
- Numeric (1)
- RADIX (1)
- Ruby用語集 (1)
-
SIZEOF
_ FLOAT (1) -
TYPE
_ FLOAT (1) - at (2)
- bigdecimal (1)
-
bigdecimal
/ util (1) - call (1)
- ceil (1)
-
clock
_ gettime (1) - denominator (2)
- det (1)
-
det
_ e (1) - determinant (1)
-
determinant
_ e (1) - div (1)
- divmod (1)
- dot (1)
-
double
_ fig (1) - eigenvalues (1)
-
enum
_ for (2) - exp (1)
- fdiv (4)
- fiddle (1)
- floor (1)
- format (1)
- grep (1)
-
grep
_ v (1) -
inner
_ product (1) - ldexp (1)
- log (1)
- magnitude (3)
- modulo (1)
- new (2)
- norm (1)
- on (9)
- pow (1)
- r (1)
- rand (8)
-
random
_ number (1) -
reachable
_ objects _ from (1) - round (3)
-
ruby 1
. 6 feature (1) - split (1)
- sprintf (1)
- sprintf フォーマット (1)
-
to
_ d (2) -
to
_ enum (2) -
to
_ f (1) -
to
_ i (1) -
to
_ json (1) - truncate (1)
-
write
_ timeout= (1) - 正規表現 (1)
検索結果
先頭5件
-
Float
# round(ndigits = 0) -> Integer | Float (81661.0) -
自身ともっとも近い整数もしくは実数を返します。
...1.0.round # => 1
1.2.round # => 1
(-1.2).round # => -1
(-1.5).round # => -2
t = Math::PI # => 3.141592653589793
t.round(3) # => 3.142
t.round(0) # => 3
t.round(1) # => 3.1
t = t**10 # => 93648.04747608298
t.round(-0) # => 93648
t.round(-1) # => 93650
t.round(-2) #... -
Float
# round(ndigits = 0 , half: :up) -> Integer | Float (81661.0) -
自身ともっとも近い整数もしくは実数を返します。
...1.0.round # => 1
1.2.round # => 1
(-1.2).round # => -1
(-1.5).round # => -2
t = Math::PI # => 3.141592653589793
t.round(3) # => 3.142
t.round(0) # => 3
t.round(1) # => 3.1
t = t**10 # => 93648.04747608298
t.round(-0) # => 93648
t.round(-1) # => 93650
t.round(-2) #... -
Float
# to _ d -> BigDecimal (81415.0) -
自身を BigDecimal に変換します。
自身を BigDecimal に変換します。
@param prec 計算結果の精度。省略した場合は Float::DIG + 1 です。
@return BigDecimal に変換したオブジェクト
//emlist[][ruby]{
require 'bigdecimal'
require 'bigdecimal/util'
p 1.0.to_d # => 0.1e1
p (1.0 / 0).to_d # => Infinity
p (1.0 / 3).to_d / (2.0 / 3).to_d # => 0.5e0
p ((1.0 / 3) / (2.0 / 3... -
Float
# to _ d(prec) -> BigDecimal (81415.0) -
自身を BigDecimal に変換します。
自身を BigDecimal に変換します。
@param prec 計算結果の精度。省略した場合は Float::DIG + 1 です。
@return BigDecimal に変換したオブジェクト
//emlist[][ruby]{
require 'bigdecimal'
require 'bigdecimal/util'
p 1.0.to_d # => 0.1e1
p (1.0 / 0).to_d # => Infinity
p (1.0 / 3).to_d / (2.0 / 3).to_d # => 0.5e0
p ((1.0 / 3) / (2.0 / 3... -
Float
:: DIG -> Integer (81349.0) -
Float が表現できる最大の 10 進桁数です。
Float が表現できる最大の 10 進桁数です。
通常はデフォルトで 15 です。 -
Float
:: MANT _ DIG -> Integer (81349.0) -
仮数部の Float::RADIX 進法での桁数です。
仮数部の Float::RADIX 進法での桁数です。
通常はデフォルトで 53 です。 -
Float
# denominator -> Integer (81319.0) -
自身を Rational に変換した時の分母を返します。
自身を Rational に変換した時の分母を返します。
@return 分母を返します。
//emlist[例][ruby]{
2.0.denominator # => 1
0.5.denominator # => 2
//}
@see Float#numerator -
Float
# divmod(other) -> [Numeric] (81301.0) -
self を other で割った商 q と余り r を、 [q, r] という 2 要素の配列にして返します。 商 q は常に整数ですが、余り r は整数であるとは限りません。
self を other で割った商 q と余り r を、
[q, r] という 2 要素の配列にして返します。
商 q は常に整数ですが、余り r は整数であるとは限りません。
ここで、商 q と余り r は、
* self == other * q + r
と
* other > 0 のとき: 0 <= r < other
* other < 0 のとき: other < r <= 0
* q は整数
をみたす数です。
このメソッドは、メソッド / と % によって定義されています。
@param other 自身を割る数を指定します。
//emli... -
Float
:: RADIX -> Integer (81301.0) -
指数表現の基数です。
指数表現の基数です。 -
Float
# magnitude -> Float (72607.0) -
自身の絶対値を返します。
自身の絶対値を返します。
//emlist[例][ruby]{
34.56.abs # => 34.56
-34.56.abs # => 34.56
//} -
Float
# modulo(other) -> Float (72607.0) -
算術演算子。剰余を計算します。
算術演算子。剰余を計算します。
@param other 二項演算の右側の引数(対象)
//emlist[例][ruby]{
# 剰余
3.0 % 1.2 # => 0.6000000000000001
3.0 % 0.0 # ZeroDivisionError
//} -
Float
# ceil(ndigits = 0) -> Integer | Float (63676.0) -
自身と等しいかより大きな整数のうち最小のものを返します。
自身と等しいかより大きな整数のうち最小のものを返します。
@param ndigits 10進数での小数点以下の有効桁数を整数で指定します。
正の整数を指定した場合、Float を返します。
小数点以下を、最大 n 桁にします。
負の整数を指定した場合、Integer を返します。
小数点位置から左に少なくとも n 個の 0 が並びます。
//emlist[例][ruby]{
1.2.ceil # => 2
2.0.ceil # => 2
(-1.2... -
Float
# floor(ndigits = 0) -> Integer | Float (63640.0) -
自身と等しいかより小さな整数のうち最大のものを返します。
自身と等しいかより小さな整数のうち最大のものを返します。
@param ndigits 10進数での小数点以下の有効桁数を整数で指定します。
正の整数を指定した場合、Float を返します。
小数点以下を、最大 n 桁にします。
負の整数を指定した場合、Integer を返します。
小数点位置から左に少なくとも n 個の 0 が並びます。
//emlist[例][ruby]{
1.2.floor # => 1
2.0.floor # => 2
(-1... -
Float
# truncate(ndigits = 0) -> Integer | Float (63622.0) -
小数点以下を切り捨てて値を整数に変換します。
小数点以下を切り捨てて値を整数に変換します。
@param ndigits 10進数での小数点以下の有効桁数を整数で指定します。
正の整数を指定した場合、Float を返します。
小数点以下を、最大 n 桁にします。
負の整数を指定した場合、Integer を返します。
小数点位置から左に少なくとも n 個の 0 が並びます。
//emlist[例][ruby]{
2.8.truncate # => 2
(-2.8).truncate ... -
JSON
:: Ext :: Generator :: GeneratorMethods :: Float (63049.0) -
Alias of JSON::Generator::GeneratorMethods::Float
Alias of JSON::Generator::GeneratorMethods::Float -
JSON
:: Generator :: GeneratorMethods :: Float (63049.0) -
Float に JSON で使用するインスタンスメソッドを追加するためのモジュールです。
Float に JSON で使用するインスタンスメソッドを追加するためのモジュールです。 -
FloatDomainError (36001.0)
-
正負の無限大や NaN (Not a Number) を Bignum に変換しようとしたり、 NaN との比較を行ったときに発生します。
正負の無限大や NaN (Not a Number) を Bignum に変換しようとしたり、
NaN との比較を行ったときに発生します。 -
SecureRandom
. random _ number(n = 0) -> Integer | Float (27604.0) -
ランダムな数値を生成して返します。 n が 1 以上の整数の場合、0 以上 n 未満の整数を返します。 n が 0 の場合、0.0 以上 1.0 未満の実数を返します。
ランダムな数値を生成して返します。
n が 1 以上の整数の場合、0 以上 n 未満の整数を返します。
n が 0 の場合、0.0 以上 1.0 未満の実数を返します。
@param n ランダムな数値の上限を数値で指定します。
@raise NotImplementedError 安全な乱数発生器が使えない場合に発生します。
require 'securerandom'
p SecureRandom.random_number(1 << 64) #=> 4078466195356651249 -
Fiddle
:: ALIGN _ FLOAT -> Integer (27352.0) -
C の構造体における float のアライメントの値。
C の構造体における float のアライメントの値。 -
Fiddle
:: SIZEOF _ FLOAT -> Integer (27352.0) -
Cでの sizeof(float) の値
Cでの sizeof(float) の値 -
Fiddle
:: TYPE _ FLOAT -> Integer (27352.0) -
C の float 型を表す定数。
C の float 型を表す定数。 -
Numeric
# fdiv(other) -> Float | Complex (18700.0) -
self を other で割った商を Float で返します。 ただし Complex が関わる場合は例外です。 その場合も成分は Float になります。
self を other で割った商を Float で返します。
ただし Complex が関わる場合は例外です。
その場合も成分は Float になります。
Numeric のサブクラスは、このメソッドを適切に再定義しなければなりません。
@param other 自身を割る数を指定します。
//emlist[例][ruby]{
1.fdiv(3) #=> 0.3333333333333333
Complex(1, 1).fdiv 1 #=> (1.0+1.0i)
1.fdiv Complex(1, 1) #=> (0.5-0.5i)
//}
@see Num... -
Kernel
. # BigDecimal(s , exception: true) -> BigDecimal | nil (18673.0) -
引数で指定した値を表す BigDecimal オブジェクトを生成します。
引数で指定した値を表す BigDecimal オブジェクトを生成します。
@param s 数値を表現する初期値を文字列、Integer、
Float、Rational、BigDecimal オブジェクトのい
ずれかで指定します。
文字列中のスペースは無視されます。また、判断できない文字が出現
した時点で文字列は終了したものとみなされます。
@param n 必要な有効桁数(self の最大有効桁数)を整数で指定します。 n が
0 または省略されたときは、n の値は s の有効桁数とみなされます。... -
Kernel
. # BigDecimal(s , n , exception: true) -> BigDecimal | nil (18673.0) -
引数で指定した値を表す BigDecimal オブジェクトを生成します。
引数で指定した値を表す BigDecimal オブジェクトを生成します。
@param s 数値を表現する初期値を文字列、Integer、
Float、Rational、BigDecimal オブジェクトのい
ずれかで指定します。
文字列中のスペースは無視されます。また、判断できない文字が出現
した時点で文字列は終了したものとみなされます。
@param n 必要な有効桁数(self の最大有効桁数)を整数で指定します。 n が
0 または省略されたときは、n の値は s の有効桁数とみなされます。... -
Rational
# fdiv(other) -> Float (18652.0) -
self を other で割った商を Float で返します。 other に虚数を指定することは出来ません。
self を other で割った商を Float で返します。
other に虚数を指定することは出来ません。
@param other 自身を割る数
//emlist[例][ruby]{
Rational(2, 3).fdiv(1) # => 0.6666666666666666
Rational(2, 3).fdiv(0.5) # => 1.3333333333333333
Rational(2).fdiv(3) # => 0.6666666666666666
Rational(1).fdiv(Complex(1, 0)) # => 1.0
Rational(1)... -
Random
# rand -> Float (18646.0) -
一様な擬似乱数を発生させます。
一様な擬似乱数を発生させます。
最初の形式では 0.0 以上 1.0 未満の実数を返します。
二番目の形式では 0 以上 max 未満の数を返します。
max が正の整数なら整数を、正の実数なら実数を返します。
0 や負の数を指定することは出来ません。
三番目の形式では range で指定された範囲の値を返します。
range の始端と終端が共に整数の場合は整数を、少なくとも片方が実数の場合は実数を返します。
rangeが終端を含まない(つまり ... で生成した場合)には終端の値は乱数の範囲から除かれます。
range.end - range.begin が整数を返す場合は rang... -
Random
# rand(max) -> Integer | Float (18646.0) -
一様な擬似乱数を発生させます。
一様な擬似乱数を発生させます。
最初の形式では 0.0 以上 1.0 未満の実数を返します。
二番目の形式では 0 以上 max 未満の数を返します。
max が正の整数なら整数を、正の実数なら実数を返します。
0 や負の数を指定することは出来ません。
三番目の形式では range で指定された範囲の値を返します。
range の始端と終端が共に整数の場合は整数を、少なくとも片方が実数の場合は実数を返します。
rangeが終端を含まない(つまり ... で生成した場合)には終端の値は乱数の範囲から除かれます。
range.end - range.begin が整数を返す場合は rang... -
Random
# rand(range) -> Integer | Float (18646.0) -
一様な擬似乱数を発生させます。
一様な擬似乱数を発生させます。
最初の形式では 0.0 以上 1.0 未満の実数を返します。
二番目の形式では 0 以上 max 未満の数を返します。
max が正の整数なら整数を、正の実数なら実数を返します。
0 や負の数を指定することは出来ません。
三番目の形式では range で指定された範囲の値を返します。
range の始端と終端が共に整数の場合は整数を、少なくとも片方が実数の場合は実数を返します。
rangeが終端を含まない(つまり ... で生成した場合)には終端の値は乱数の範囲から除かれます。
range.end - range.begin が整数を返す場合は rang... -
Random
. rand -> Float (18628.0) -
擬似乱数を発生させます。
擬似乱数を発生させます。
Random#rand を参照してください。
擬似乱数生成器が Kernel.#rand と共通なため Kernel.#srand などの影響を受けます。
@param max 乱数値の上限を正の整数または実数で指定します。
@param range 発生させる乱数値の範囲を Range オブジェクトで指定します。
range の境界は数値でなければなりません。
@raise Errno::EDOM rand(1..Float::INFINITY) などのように範囲に問題があるときに発生します。
@raise ArgumentE... -
Random
. rand(max) -> Integer | Float (18628.0) -
擬似乱数を発生させます。
擬似乱数を発生させます。
Random#rand を参照してください。
擬似乱数生成器が Kernel.#rand と共通なため Kernel.#srand などの影響を受けます。
@param max 乱数値の上限を正の整数または実数で指定します。
@param range 発生させる乱数値の範囲を Range オブジェクトで指定します。
range の境界は数値でなければなりません。
@raise Errno::EDOM rand(1..Float::INFINITY) などのように範囲に問題があるときに発生します。
@raise ArgumentE... -
Random
. rand(range) -> Integer | Float (18628.0) -
擬似乱数を発生させます。
擬似乱数を発生させます。
Random#rand を参照してください。
擬似乱数生成器が Kernel.#rand と共通なため Kernel.#srand などの影響を受けます。
@param max 乱数値の上限を正の整数または実数で指定します。
@param range 発生させる乱数値の範囲を Range オブジェクトで指定します。
range の境界は数値でなければなりません。
@raise Errno::EDOM rand(1..Float::INFINITY) などのように範囲に問題があるときに発生します。
@raise ArgumentE... -
Vector
# magnitude -> Float (18610.0) -
ベクトルの大きさ(ノルム)を返します。
ベクトルの大きさ(ノルム)を返します。
//emlist[例][ruby]{
require 'matrix'
Vector[3, 4].norm # => 5.0
Vector[Complex(0, 1), 0].norm # => 1.0
//}
@see Vector#normalize -
Kernel
. # rand(max = 0) -> Integer | Float (18607.0) -
擬似乱数を発生させます。
擬似乱数を発生させます。
最初の形式では
max が 0 の場合は 0.0 以上 1.0 未満の実数を、正の整数の場合は 0 以上 max 未満の整数を返します。
それ以外の値を指定した場合は max.to_int の絶対値が指定されたものとして扱います。
二番目の形式では range で指定された範囲の値を返します。
range の始端と終端が共に整数の場合は整数を、少なくとも片方が実数の場合は実数を返します。
range に含まれる数が無い場合は nil を返します。
まだ Kernel.#srand が呼ばれていなければ自動的に呼び出します。
擬似乱数生成器として Random... -
Kernel
. # rand(range) -> Integer | Float | nil (18607.0) -
擬似乱数を発生させます。
擬似乱数を発生させます。
最初の形式では
max が 0 の場合は 0.0 以上 1.0 未満の実数を、正の整数の場合は 0 以上 max 未満の整数を返します。
それ以外の値を指定した場合は max.to_int の絶対値が指定されたものとして扱います。
二番目の形式では range で指定された範囲の値を返します。
range の始端と終端が共に整数の場合は整数を、少なくとも片方が実数の場合は実数を返します。
range に含まれる数が無い場合は nil を返します。
まだ Kernel.#srand が呼ばれていなければ自動的に呼び出します。
擬似乱数生成器として Random... -
Matrix
# det _ e -> Rational | Float (18607.0) -
このメソッドは deprecated です。 Matrix#determinant を代わりに使ってください。
このメソッドは deprecated です。
Matrix#determinant を代わりに使ってください。 -
Matrix
# determinant _ e -> Rational | Float (18607.0) -
このメソッドは deprecated です。 Matrix#determinant を代わりに使ってください。
このメソッドは deprecated です。
Matrix#determinant を代わりに使ってください。 -
Vector
# dot(v) -> Float (18607.0) -
ベクトル v との内積を返します。
ベクトル v との内積を返します。
@param v 内積を求めるベクトル
@raise ExceptionForMatrix::ErrDimensionMismatch 自分自身と引数のベクト
ルの要素の数(次元)が異なっていたときに発生します。 -
Vector
# inner _ product(v) -> Float (18607.0) -
ベクトル v との内積を返します。
ベクトル v との内積を返します。
@param v 内積を求めるベクトル
@raise ExceptionForMatrix::ErrDimensionMismatch 自分自身と引数のベクト
ルの要素の数(次元)が異なっていたときに発生します。 -
Math
. # ldexp(x , exp) -> Float (18604.0) -
実数 x に 2 の exp 乗をかけた数を返します。
実数 x に 2 の exp 乗をかけた数を返します。
@param x 実数
@param exp 整数。小数点以下切捨て。
@raise TypeError 引数のどちらかに数値以外を指定した場合に発生します。
@raise RangeError 引数のどちらかに実数以外の数値を指定した場合に発生します。
//emlist[例][ruby]{
fraction, exponent = Math.frexp(1234)
Math.ldexp(fraction, exponent) # => 1234.0
//} -
Integer
# fdiv(other) -> Numeric (18397.0) -
self を other で割った商を Float で返します。 ただし Complex が関わる場合は例外です。 その場合も成分は Float になります。
self を other で割った商を Float で返します。
ただし Complex が関わる場合は例外です。
その場合も成分は Float になります。
@param other self を割る数を指定します。
例:
654321.fdiv(13731) # => 47.652829364212366
654321.fdiv(13731.24) # => 47.65199646936475
-1234567890987654321.fdiv(13731) # => -89910996357705.52
-1234567890987654... -
BigDecimal
. double _ fig -> Integer (18349.0) -
Ruby の Float クラスが保持できる有効数字の数を返します。
Ruby の Float クラスが保持できる有効数字の数を返します。
//emlist[][ruby]{
require 'bigdecimal'
p BigDecimal::double_fig # ==> 16 (depends on the CPU etc.)
//}
double_figは以下の C プログラムの結果と同じです。
double v = 1.0;
int double_fig = 0;
while (v + 1.0 > 1.0) {
++double_fig;
v /= 10;
} -
Complex
# fdiv(other) -> Complex (18349.0) -
self を other で割った商を返します。 実部と虚部が共に Float の値になります。
self を other で割った商を返します。
実部と虚部が共に Float の値になります。
@param other 自身を割る数
//emlist[例][ruby]{
Complex(11, 22).fdiv(3) # => (3.6666666666666665+7.333333333333333i)
Complex(11, 22).quo(3) # => ((11/3)+(22/3)*i)
//}
@see Complex#quo -
Integer
# div(other) -> Integer (18319.0) -
整商(整数の商)を返します。 普通の商(剰余を考えない商)を越えない最大の整数をもって整商とします。
整商(整数の商)を返します。
普通の商(剰余を考えない商)を越えない最大の整数をもって整商とします。
other が Integer オブジェクトの場合、Integer#/ の結果と一致します。
div に対応する剰余メソッドは modulo です。
@param other 二項演算の右側の引数(対象)
@return 計算結果
//emlist[例][ruby]{
7.div(2) # => 3
7.div(-2) # => -4
7.div(2.0) # => 3
7.div(Rational(2, 1)) # => 3
begin
2.div(0)
rescue => ... -
Matrix
# det -> Numeric (18319.0) -
行列式 (determinant) の値を返します。
行列式 (determinant) の値を返します。
Float を使用すると、精度が不足するため、誤った結果が生じる可能性があることに注意してください。
代わりに、Rational や BigDecimal などの正確なオブジェクトを使用することを検討してください。
@raise ExceptionForMatrix::ErrDimensionMismatch 正方行列でない場合に発生します
//emlist[例][ruby]{
require 'matrix'
p Matrix[[2, 1], [-1, 2]].det #=> 5
p Matrix[[2.0, 1... -
Matrix
# determinant -> Numeric (18319.0) -
行列式 (determinant) の値を返します。
行列式 (determinant) の値を返します。
Float を使用すると、精度が不足するため、誤った結果が生じる可能性があることに注意してください。
代わりに、Rational や BigDecimal などの正確なオブジェクトを使用することを検討してください。
@raise ExceptionForMatrix::ErrDimensionMismatch 正方行列でない場合に発生します
//emlist[例][ruby]{
require 'matrix'
p Matrix[[2, 1], [-1, 2]].det #=> 5
p Matrix[[2.0, 1... -
Matrix
# round(ndigits = 0) -> Matrix (18319.0) -
行列の各要素を指定した桁数で丸めた行列を返します。
行列の各要素を指定した桁数で丸めた行列を返します。
@see Float#round -
Numeric
# denominator -> Integer (18319.0) -
自身を Rational に変換した時の分母を返します。
自身を Rational に変換した時の分母を返します。
@return 分母を返します。
@see Numeric#numerator、Integer#denominator、Float#denominator、Rational#denominator、Complex#denominator -
bigdecimal
/ util (18157.0) -
String、Integer、Float、Rational, NilClass オブジェクトを BigDecimal オブジェクトに変換する機能を提供します。
String、Integer、Float、Rational, NilClass オブジェクトを
BigDecimal オブジェクトに変換する機能を提供します。
* String#to_d
* Integer#to_d
* Float#to_d
* Rational#to_d
* NilClass#to_d
これらのメソッドを使うには 'bigdecimal/util' を require する必要があります。
なお、Ruby 2.6.0 以降では、'bigdecimal/util' を require すると、
'bigdecimal' 本体も require されます。 -
fiddle (18037.0)
-
*.dllや*.soなど、ダイナミックリンクライブラリを扱うためのライブラリです。
*.dllや*.soなど、ダイナミックリンクライブラリを扱うためのライブラリです。
dl と同等の機能を持ちますが、
dl は 2.0 以降deprecated となり、2.2.0 で削除されました。このライブラリ
を代わりに使います。
=== 使い方
通常は fiddle/import ライブラリを require して
Fiddle::Importer モジュールを使用します。
Fiddle モジュール自体はプリミティブな機能しか提供していません。
Fiddle::Importer モジュールは以下のようにユーザが定義した
モジュールを拡張する形で使います。
require ... -
bigdecimal (18019.0)
-
bigdecimal は浮動小数点数演算ライブラリです。 任意の精度で 10 進表現された浮動小数点数を扱えます。
...求める桁数は自分で指定することができます。
//emlist[pi.rb][ruby]{
#!/usr/local/bin/ruby
require "bigdecimal"
#
# Calculates 3.1415.... (the number of times that a circle's diameter
# will fit around the circle) using J. Machin's formula.
#
def big_pi(sig) # sig: Number of sign... -
JSON
:: Generator :: GeneratorMethods :: Float # to _ json(state _ or _ hash = nil) -> String (18001.0) -
自身から生成した JSON 形式の文字列を返します。
自身から生成した JSON 形式の文字列を返します。
@param state_or_hash 生成する JSON 形式の文字列をカスタマイズするため
に JSON::State のインスタンスか、
JSON::State.new の引数と同じ Hash を
指定します。
//emlist[例][ruby]{
require "json"
(1.0).to_json # => "1.0"
//} -
Fiddle
:: Function . new(ptr , args , ret _ type , abi=Fiddle :: Function :: DEFAULT , name: nil) -> Fiddle :: Function (9619.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... -
BigDecimal
# to _ f -> Float (9352.0) -
self の近似値を表す Float オブジェクトに変換します。
self の近似値を表す Float オブジェクトに変換します。
仮数部や指数部の情報が必要な場合は、BigDecimal#split メソッドを利
用してください。
@see BigDecimal#split -
Complex
# magnitude -> Numeric (9319.0) -
自身の絶対値を返します。
自身の絶対値を返します。
以下の計算の結果を Float オブジェクトで返します。
sqrt(self.real ** 2 + self.imag ** 2)
//emlist[例][ruby]{
Complex(1, 2).abs # => 2.23606797749979
Complex(3, 4).abs # => 5.0
Complex('1/2', '1/2').abs # => 0.7071067811865476
//}
@see Complex#abs2 -
Fiddle
:: Function # call(*args) -> Integer|DL :: CPtr|nil (9319.0) -
関数を呼び出します。
関数を呼び出します。
Fiddle::Function.new で指定した引数と返り値の型に基いて
Ruby のオブジェクトを適切に C のデータに変換して C の関数を呼び出し、
その返り値を Ruby のオブジェクトに変換して返します。
引数の変換は以下の通りです。
: void* (つまり任意のポインタ型)
nil ならば C の NULL に変換されます
Fiddle::Pointer は保持している C ポインタに変換されます。
文字列であればその先頭ポインタになります。
IO オブジェクトであれば FILE* が渡されます。
整数であればそれがアドレスとみ... -
Vector
# norm -> Float (9310.0) -
ベクトルの大きさ(ノルム)を返します。
ベクトルの大きさ(ノルム)を返します。
//emlist[例][ruby]{
require 'matrix'
Vector[3, 4].norm # => 5.0
Vector[Complex(0, 1), 0].norm # => 1.0
//}
@see Vector#normalize -
Vector
# r -> Float (9310.0) -
ベクトルの大きさ(ノルム)を返します。
ベクトルの大きさ(ノルム)を返します。
//emlist[例][ruby]{
require 'matrix'
Vector[3, 4].norm # => 5.0
Vector[Complex(0, 1), 0].norm # => 1.0
//}
@see Vector#normalize -
Matrix
:: EigenvalueDecomposition # eigenvalues -> [Float] (9304.0) -
固有値を配列で返します。
固有値を配列で返します。 -
BigDecimal
# split -> [Integer , String , Integer , Integer] (9019.0) -
BigDecimal 値を 0.xxxxxxx*10**n と表現したときに、 符号 (NaNのときは 0、それ以外は+1か-1になります)、 仮数部分の文字列("xxxxxxx")と、基数(10)、更に指数 n を配列で返します。
...部分の文字列("xxxxxxx")と、基数(10)、更に指数 n を配列で返します。
//emlist[][ruby]{
require "bigdecimal"
a = BigDecimal("3.14159265")
f, x, y, z = a.split
//}
とすると、f = 1、x = "314159265"、y = 10、z = 1 になります。
従って、以下のようにする事... -
Process
. # clock _ gettime(clock _ id , unit=:float _ second) -> Float | Integer (1033.0) -
POSIX の clock_gettime() 関数の時間を返します。
POSIX の clock_gettime() 関数の時間を返します。
例:
p Process.clock_gettime(Process::CLOCK_MONOTONIC) #=> 896053.968060096
@param clock_id クロックの種類を以下の定数のいずれかで指定します。
サポートされている定数は OS やバージョンに依存します。
: Process::CLOCK_REALTIME
SUSv2 to 4, Linux 2.5.63, FreeBSD 3.0, NetBSD 2.0, OpenBSD 2.1, macOS... -
Ruby用語集 (841.0)
-
Ruby用語集 A B C D E F G I J M N O R S Y
...メソッドの
いくつかは未定義にされている。
: リテラル
: literal
プログラム中に直接記述された値のこと。3.14 や "foo" や /\d+/ はリテラル
だが、1 + 2 はリテラルではない。
Math::PI も定数参照なのでリテラルではない。... -
正規表現 (703.0)
-
正規表現 * metachar * expansion * char * anychar * string * str * quantifier * capture * grouping * subexp * selector * anchor * cond * option * encoding * comment * free_format_mode * absenceop * list * specialvar * references
...= /\A
\d+ # 整数部
(\. # 小数点
\d+ # 小数部
)? # 小数点 + 小数部 はなくともよい
\z/x
float_pat.match("3.14") # => #<MatchData "3.14" 1:".14">
//}
空白を表現したい場合はエスケープをしてください。
//emlist[][ruby]{
/x y/x.match("x y") # => ni... -
String
# %(args) -> String (685.0) -
printf と同じ規則に従って args をフォーマットします。
...ければ関数 Kernel.#Integer と同じ規則で整数に
変換されます。
//emlist[][ruby]{
p sprintf("%d", -1) #=> "-1"
p sprintf("%d", 3.1) #=> "3"
p sprintf("%d", '0b1010') #=> "10"
//}
: u
引数の数値を符号なし整数とみなして10進表現の整数として出力しま... -
1
. 6 . 8から1 . 8 . 0への変更点(まとめ) (649.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への変更点(まとめ)/変更されたクラス/メソッド(互換性のない変更)>))... -
Time
. at(seconds , xseconds , unit) -> Time (625.0) -
unit に応じて seconds + xseconds ミリ秒などの時刻を表す Time オブジェクトを返します。
unit に応じて seconds + xseconds ミリ秒などの時刻を表す Time オブジェクトを返します。
@param seconds 起算時からの経過秒数を表わす値をInteger、 Float、 Rational、または他のNumericで指定します。
@param xseconds unit に対応するミリ秒かマイクロ秒かナノ秒を指定します。
@param unit :millisecond, :usec, :microsecond, :nsec, :nanosecond のいずれかを指定します。
@param in "+HH:MM" や "-HH:MM" のような形式の... -
Time
. at(seconds , xseconds , unit , in:) -> Time (625.0) -
unit に応じて seconds + xseconds ミリ秒などの時刻を表す Time オブジェクトを返します。
unit に応じて seconds + xseconds ミリ秒などの時刻を表す Time オブジェクトを返します。
@param seconds 起算時からの経過秒数を表わす値をInteger、 Float、 Rational、または他のNumericで指定します。
@param xseconds unit に対応するミリ秒かマイクロ秒かナノ秒を指定します。
@param unit :millisecond, :usec, :microsecond, :nsec, :nanosecond のいずれかを指定します。
@param in "+HH:MM" や "-HH:MM" のような形式の... -
Kernel
. # format(format , *arg) -> String (613.0) -
format 文字列を C 言語の sprintf と同じように解釈し、 引数をフォーマットした文字列を返します。
...ければ関数 Kernel.#Integer と同じ規則で整数に
変換されます。
//emlist[][ruby]{
p sprintf("%d", -1) #=> "-1"
p sprintf("%d", 3.1) #=> "3"
p sprintf("%d", '0b1010') #=> "10"
//}
: u
引数の数値を符号なし整数とみなして10進表現の整数として出力しま... -
Kernel
. # sprintf(format , *arg) -> String (613.0) -
format 文字列を C 言語の sprintf と同じように解釈し、 引数をフォーマットした文字列を返します。
...ければ関数 Kernel.#Integer と同じ規則で整数に
変換されます。
//emlist[][ruby]{
p sprintf("%d", -1) #=> "-1"
p sprintf("%d", 3.1) #=> "3"
p sprintf("%d", '0b1010') #=> "10"
//}
: u
引数の数値を符号なし整数とみなして10進表現の整数として出力しま... -
sprintf フォーマット (613.0)
-
sprintf フォーマット === sprintf フォーマット
...ければ関数 Kernel.#Integer と同じ規則で整数に
変換されます。
//emlist[][ruby]{
p sprintf("%d", -1) #=> "-1"
p sprintf("%d", 3.1) #=> "3"
p sprintf("%d", '0b1010') #=> "10"
//}
: u
引数の数値を符号なし整数とみなして10進表現の整数として出力しま... -
Numeric (445.0)
-
数値を表す抽象クラスです。Integer や Float などの数値クラス は Numeric のサブクラスとして実装されています。
数値を表す抽象クラスです。Integer や Float などの数値クラス
は Numeric のサブクラスとして実装されています。
演算や比較を行うメソッド(+, -, *, /, <=>)は Numeric のサブクラスで定義されま
す。Numeric で定義されているメソッドは、サブクラスで提供されているメソッド
(+, -, *, /, %) を利用して定義されるものがほとんどです。
つまり Numeric で定義されているメソッドは、Numeric のサブクラスとして新たに数値クラスを定義した時に、
演算メソッド(+, -, *, /, %, <=>, coerce)だけを定義すれ... -
OptionParser
# on(long , klass = String , desc = "") {|v| . . . } -> self (373.0) -
オプションを取り扱うためのブロックを自身に登録します。 ブロックはコマンドラインのパース時に、オプションが指定されていれば呼ばれます。
オプションを取り扱うためのブロックを自身に登録します。
ブロックはコマンドラインのパース時に、オプションが指定されていれば呼ばれます。
klass にはクラスを与えます。どのようなクラスを受け付けるかは、
以下の「デフォルトで利用可能な引数クラス」を参照して下さい。
OptionParser.accept や OptionParser#accept によって、受け付け
るクラスを増やすことができます。登録されていないクラスが指定された
場合、例外 ArgumentError を投げます。
また、登録されたクラスであっても引数が変換できないものである場合、例外
OptionParser::I... -
OptionParser
# on(short , klass = String , desc = "") {|v| . . . } -> self (373.0) -
オプションを取り扱うためのブロックを自身に登録します。 ブロックはコマンドラインのパース時に、オプションが指定されていれば呼ばれます。
オプションを取り扱うためのブロックを自身に登録します。
ブロックはコマンドラインのパース時に、オプションが指定されていれば呼ばれます。
klass にはクラスを与えます。どのようなクラスを受け付けるかは、
以下の「デフォルトで利用可能な引数クラス」を参照して下さい。
OptionParser.accept や OptionParser#accept によって、受け付け
るクラスを増やすことができます。登録されていないクラスが指定された
場合、例外 ArgumentError を投げます。
また、登録されたクラスであっても引数が変換できないものである場合、例外
OptionParser::I... -
OptionParser
# on(short , long , klass = String , desc = "") {|v| . . . } -> self (373.0) -
オプションを取り扱うためのブロックを自身に登録します。 ブロックはコマンドラインのパース時に、オプションが指定されていれば呼ばれます。
オプションを取り扱うためのブロックを自身に登録します。
ブロックはコマンドラインのパース時に、オプションが指定されていれば呼ばれます。
klass にはクラスを与えます。どのようなクラスを受け付けるかは、
以下の「デフォルトで利用可能な引数クラス」を参照して下さい。
OptionParser.accept や OptionParser#accept によって、受け付け
るクラスを増やすことができます。登録されていないクラスが指定された
場合、例外 ArgumentError を投げます。
また、登録されたクラスであっても引数が変換できないものである場合、例外
OptionParser::I... -
BigMath
. # exp(x , prec) -> BigDecimal (337.0) -
x の指数関数を prec で指定した精度で計算します。
x の指数関数を prec で指定した精度で計算します。
x に正の無限大を指定した場合は正の無限大を返します。負の無限大を指定し
た場合には 0 を返します。NaN を指定した場合には NaNを返します。
@param x 計算対象の数値を Integer、BigDecimal、
Float、Rationalオブジェクトのいずれかで指定します。
@param prec 計算結果の精度を指定します。
@raise ArgumentError x に Integer、BigDecimal、
Float、Rational以外のオ... -
Integer
# pow(other , modulo) -> Integer (337.0) -
算術演算子。冪(べき乗)を計算します。
算術演算子。冪(べき乗)を計算します。
@param other 二項演算の右側の引数(対象)
@param modulo 指定すると、計算途中に巨大な値を生成せずに (self**other) % modulo と同じ結果を返します。
@return 計算結果
@raise TypeError 2引数 pow で Integer 以外を指定した場合に発生します。
@raise RangeError 2引数 pow で other に負の数を指定した場合に発生します。
//emlist[][ruby]{
2 ** 3 # => 8
2 ** 0 # => 1
0 ** 0 # => 1
... -
BigMath
. # log(x , prec) -> BigDecimal (319.0) -
x の自然対数を prec で指定した精度で計算します。
x の自然対数を prec で指定した精度で計算します。
x に無限大を指定した場合は無限大を返します。NaN を指定した場合には NaN
を返します。
@param x 計算対象の数値を Integer、Float、
Rational、BigDecimal オブジェクトのいずれかで指定
します。
@param prec 計算結果の精度を指定します。
@raise Math::DomainError x に 0 以下の数値か Complex オブジェクト
が指定された場合に発生します。
@rais... -
Enumerator
:: Lazy # enum _ for(method = :each , *args) -> Enumerator :: Lazy (319.0) -
Object#to_enum と同じですが、Enumerator::Lazy を返します。
Object#to_enum と同じですが、Enumerator::Lazy を返します。
to_enum は「ブロック付きで呼ぶとループを実行し、ブロックを省略した場合は
Enumerator を返す」ようなメソッドを定義するときによく使われます。
このときに lazy 性が正しく引き継がれるように、Lazy#to_enum は
素のEnumerator ではなく Enumerator::Lazy を返すようになっています。
//emlist[例][ruby]{
module Enumerable
# 要素をn回ずつ繰り返すメソッド
# 例:[1,2,3].repeat(2) ... -
Enumerator
:: Lazy # enum _ for(method = :each , *args) {|*args| block} -> Enumerator :: Lazy (319.0) -
Object#to_enum と同じですが、Enumerator::Lazy を返します。
Object#to_enum と同じですが、Enumerator::Lazy を返します。
to_enum は「ブロック付きで呼ぶとループを実行し、ブロックを省略した場合は
Enumerator を返す」ようなメソッドを定義するときによく使われます。
このときに lazy 性が正しく引き継がれるように、Lazy#to_enum は
素のEnumerator ではなく Enumerator::Lazy を返すようになっています。
//emlist[例][ruby]{
module Enumerable
# 要素をn回ずつ繰り返すメソッド
# 例:[1,2,3].repeat(2) ... -
Enumerator
:: Lazy # to _ enum(method = :each , *args) -> Enumerator :: Lazy (319.0) -
Object#to_enum と同じですが、Enumerator::Lazy を返します。
Object#to_enum と同じですが、Enumerator::Lazy を返します。
to_enum は「ブロック付きで呼ぶとループを実行し、ブロックを省略した場合は
Enumerator を返す」ようなメソッドを定義するときによく使われます。
このときに lazy 性が正しく引き継がれるように、Lazy#to_enum は
素のEnumerator ではなく Enumerator::Lazy を返すようになっています。
//emlist[例][ruby]{
module Enumerable
# 要素をn回ずつ繰り返すメソッド
# 例:[1,2,3].repeat(2) ... -
Enumerator
:: Lazy # to _ enum(method = :each , *args) {|*args| block} -> Enumerator :: Lazy (319.0) -
Object#to_enum と同じですが、Enumerator::Lazy を返します。
Object#to_enum と同じですが、Enumerator::Lazy を返します。
to_enum は「ブロック付きで呼ぶとループを実行し、ブロックを省略した場合は
Enumerator を返す」ようなメソッドを定義するときによく使われます。
このときに lazy 性が正しく引き継がれるように、Lazy#to_enum は
素のEnumerator ではなく Enumerator::Lazy を返すようになっています。
//emlist[例][ruby]{
module Enumerable
# 要素をn回ずつ繰り返すメソッド
# 例:[1,2,3].repeat(2) ... -
Net
:: HTTP # write _ timeout=(seconds) (319.0) -
書き込み(write(2)) 一回でブロックしてよい最大秒数を 設定します。
書き込み(write(2)) 一回でブロックしてよい最大秒数を
設定します。
Float や Rational も設定できます。
この秒数たっても書き込めなければ例外 Net::WriteTimeout
を発生します。
Windows では Net::WriteTimeout は発生しません。
デフォルトは 60 (秒)です。
@param second 待つ秒数を指定します。
@see Net::HTTP#open_timeout, Net::HTTP#read_timeout, Net::HTTP#write_timeout -
WEBrick
:: HTTPServer . new(config = {} , default = WEBrick :: Config :: HTTP) -> WEBrick :: HTTPServer (319.0) -
HTTPServer オブジェクトを生成して返します。
HTTPServer オブジェクトを生成して返します。
@param config 設定を保存したハッシュを指定します。有効なキー(Symbol オブジェクト)と値は以下のとおりです。
: :RequestTimeout
どれだけの時間 クライアントからの入力を待つかを整数か Float で指定します。
単位は秒です。
: :HTTPVersion
使用する HTTP のバージョンです。WEBrick::HTTPVersion オブジェクトで指定します。デフォルトは 1.1 です。
: :AccessLog
アクセスログの出力先とフォーマットを [[io, format],... -
unsigned int NUM2UINT(VALUE x) (319.0)
-
x を unsigned int 型の整数に変換します。
x を unsigned int 型の整数に変換します。
x が Fixnum、Float、Bignum オブジェクトのいずれでもな
い場合は x.to_int による暗黙の型変換を試みます。
@raise TypeError x が nil の場合か、暗黙の型変換が成功しなかった場合に
発生します。
@raise RangeError x が unsigned int 型で表現できる値の範囲外であった場
合に発生します。 -
unsigned long NUM2ULONG(VALUE x) (319.0)
-
x を unsigned long 型の整数に変換します。
x を unsigned long 型の整数に変換します。
x が Fixnum、Float、Bignum オブジェクトのいずれでもな
い場合は x.to_int による暗黙の型変換を試みます。
@raise TypeError x が nil の場合か、暗黙の型変換が成功しなかった場合に
発生します。
@raise RangeError x が unsigned long 型で表現できる値の範囲外であった場
合に発生します。 -
unsigned short NUM2USHORT(VALUE x) (319.0)
-
x を unsigned short 型の整数に変換します。
x を unsigned short 型の整数に変換します。
x が Fixnum、Float、Bignum オブジェクトのいずれでもな
い場合は x.to_int による暗黙の型変換を試みます。
@raise TypeError x が nil の場合か、暗黙の型変換が成功しなかった場合に
発生します。
@raise RangeError x が unsigned short 型で表現できる値の範囲外であった
場合に発生します。 -
OptionParser
# on(long , desc = "") {|v| . . . } -> self (313.0) -
オプションを取り扱うためのブロックを自身に登録します。 ブロックはコマンドラインのパース時に、オプションが指定されていれば呼ばれます。
オプションを取り扱うためのブロックを自身に登録します。
ブロックはコマンドラインのパース時に、オプションが指定されていれば呼ばれます。
ショートオプションとロングオプションを同時に登録することもできます。
opts.on("-r", "--require LIBRARY"){|lib| ...}
これは以下と同値です。
opts.on("-r LIBRARY"){|lib| ...}
opts.on("--require LIBRARY"){|lib| ...}
複数の異なるオプションに同じブロックを一度に登録することもできます。
opt.on('-v', '-vv')... -
OptionParser
# on(long , pat = / . * / , desc = "") {|v| . . . } -> self (313.0) -
オプションを取り扱うためのブロックを自身に登録します。 ブロックはコマンドラインのパース時に、オプションが指定されていれば呼ばれます。
オプションを取り扱うためのブロックを自身に登録します。
ブロックはコマンドラインのパース時に、オプションが指定されていれば呼ばれます。
pat にはオプションの引数に許すパターンを表す正規表現で与えます。
コマンドに与えられた引数がパターンにマッチしない場合、
例外 OptionParser::InvalidArgument が parse 実行時に投げられます。
opts.on("--username VALUE", /[a-zA-Z0-9_]+/){|name| ...}
# ruby command --username=ruby_user
# ruby command... -
OptionParser
# on(short , desc = "") {|v| . . . } -> self (313.0) -
オプションを取り扱うためのブロックを自身に登録します。 ブロックはコマンドラインのパース時に、オプションが指定されていれば呼ばれます。
オプションを取り扱うためのブロックを自身に登録します。
ブロックはコマンドラインのパース時に、オプションが指定されていれば呼ばれます。
ショートオプションとロングオプションを同時に登録することもできます。
opts.on("-r", "--require LIBRARY"){|lib| ...}
これは以下と同値です。
opts.on("-r LIBRARY"){|lib| ...}
opts.on("--require LIBRARY"){|lib| ...}
複数の異なるオプションに同じブロックを一度に登録することもできます。
opt.on('-v', '-vv')... -
OptionParser
# on(short , long , desc = "") {|v| . . . } -> self (313.0) -
オプションを取り扱うためのブロックを自身に登録します。 ブロックはコマンドラインのパース時に、オプションが指定されていれば呼ばれます。
オプションを取り扱うためのブロックを自身に登録します。
ブロックはコマンドラインのパース時に、オプションが指定されていれば呼ばれます。
ショートオプションとロングオプションを同時に登録することもできます。
opts.on("-r", "--require LIBRARY"){|lib| ...}
これは以下と同値です。
opts.on("-r LIBRARY"){|lib| ...}
opts.on("--require LIBRARY"){|lib| ...}
複数の異なるオプションに同じブロックを一度に登録することもできます。
opt.on('-v', '-vv')... -
OptionParser
# on(short , long , pat = / . * / , desc = "") {|v| . . . } -> self (313.0) -
オプションを取り扱うためのブロックを自身に登録します。 ブロックはコマンドラインのパース時に、オプションが指定されていれば呼ばれます。
オプションを取り扱うためのブロックを自身に登録します。
ブロックはコマンドラインのパース時に、オプションが指定されていれば呼ばれます。
pat にはオプションの引数に許すパターンを表す正規表現で与えます。
コマンドに与えられた引数がパターンにマッチしない場合、
例外 OptionParser::InvalidArgument が parse 実行時に投げられます。
opts.on("--username VALUE", /[a-zA-Z0-9_]+/){|name| ...}
# ruby command --username=ruby_user
# ruby command... -
OptionParser
# on(short , pat = / . * / , desc = "") {|v| . . . } -> self (313.0) -
オプションを取り扱うためのブロックを自身に登録します。 ブロックはコマンドラインのパース時に、オプションが指定されていれば呼ばれます。
オプションを取り扱うためのブロックを自身に登録します。
ブロックはコマンドラインのパース時に、オプションが指定されていれば呼ばれます。
pat にはオプションの引数に許すパターンを表す正規表現で与えます。
コマンドに与えられた引数がパターンにマッチしない場合、
例外 OptionParser::InvalidArgument が parse 実行時に投げられます。
opts.on("--username VALUE", /[a-zA-Z0-9_]+/){|name| ...}
# ruby command --username=ruby_user
# ruby command... -
NEWS for Ruby 2
. 2 . 0 (109.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 リテラル
* 後ろにコロンのあるシンボルをキーにしたと... -
ruby 1
. 6 feature (109.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 がなくなっ
ていま... -
Enumerator
:: Lazy # grep(pattern) {|item| . . . } -> Enumerator :: Lazy (91.0) -
Enumerable#grep と同じですが、配列ではなくEnumerator::Lazy を返します。
Enumerable#grep と同じですが、配列ではなくEnumerator::Lazy を返します。
//emlist[例][ruby]{
(100..Float::INFINITY).lazy.map(&:to_s).grep(/\A(\d)\1+\z/)
# => #<Enumerator::Lazy: #<Enumerator::Lazy: #<Enumerator::Lazy: 100..Infinity>:map>:grep(/\A(\d)\1+\z/)>
(100..Float::INFINITY).lazy.map(&:to_s).grep(/\A(\d)\1+\z/).... -
Enumerator
:: Lazy # grep _ v(pattern) {|item| . . . } -> Enumerator :: Lazy (91.0) -
Enumerable#grep_v と同じですが、配列ではなくEnumerator::Lazy を返します。
Enumerable#grep_v と同じですが、配列ではなくEnumerator::Lazy を返します。
//emlist[例][ruby]{
(100..Float::INFINITY).lazy.map(&:to_s).grep_v(/(\d).*\1/)
# => #<Enumerator::Lazy: #<Enumerator::Lazy: #<Enumerator::Lazy: 100..Infinity>:map>:grep_v(/(\d).*\1/)>
(100..Float::INFINITY).lazy.map(&:to_s).grep_v(/(\d).*\1/).t... -
Marshal フォーマット (91.0)
-
Marshal フォーマット フォーマットバージョン 4.8 を元に記述しています。
...'f' | 数値列の長さ(Fixnum形式) | "%.16g" の文字列 |
//}
//emlist[][ruby]{
p Marshal.dump(Math::PI).unpack("x2 a c a*")
# => ["f", 22, "3.141592653589793"]
p Marshal.dump(0.0/0).unpack("x2 a c a*") # => ["f", 8, "nan"]
p Marshal.dump(1.0/0).unpack("x2 a c a*") # => ["f", 8, "inf"]
p... -
NEWS for Ruby 2
. 6 . 0 (91.0) -
NEWS for Ruby 2.6.0 このドキュメントは前回リリース以降のバグ修正を除くユーザーに影響のある機能の変更のリストです。
...りました。
誤解を招く名称だったため。 14688
* NKF
* nkf v2.1.5 に更新されました。
* Psych
* Psych 3.1.0 に更新されました。
* RDoc
* 約2倍高速化されました。
* ファイル生成に SOURCE_DATE_EPOCH を使うようにな......* シンタックスエラー出力を修正しました。
* 多数のパース中のバグを修正しました。
* REXML
* REXML 3.1.9 に更新されました。
https://github.com/ruby/rexml/blob/master/NEWS.md を参照してください。
* いくつかの XPath... -
ObjectSpace
. # reachable _ objects _ from(obj) -> Array | nil (55.0) -
obj から到達可能なすべてのオブジェクトを返します。マーク不能なオブジェ クトを指定した場合は nil を返します。本メソッドを使う事でメモリリークの 調査が行えます。
obj から到達可能なすべてのオブジェクトを返します。マーク不能なオブジェ
クトを指定した場合は nil を返します。本メソッドを使う事でメモリリークの
調査が行えます。
//emlist[例][ruby]{
# 配列クラス(Array)と 'a'、'b'、'c' に到達可能。
ObjectSpace.reachable_objects_from(['a', 'b', 'c'])
# => [Array, 'a', 'b', 'c']
//}
obj が 2 つ以上の同じオブジェクト x への参照を持つ場合、戻り値に含まれ
るオブジェクト x は 1 つだけです。
//emlist[例... -
String
# to _ i(base = 10) -> Integer (55.0) -
文字列を 10 進数表現された整数であると解釈して、整数に変換します。
文字列を 10 進数表現された整数であると解釈して、整数に変換します。
//emlist[例][ruby]{
p " 10".to_i # => 10
p "+10".to_i # => 10
p "-10".to_i # => -10
p "010".to_i # => 10
p "-010".to_i # => -10
//}
整数とみなせない文字があればそこまでを変換対象とします。
変換対象が空文字列であれば 0 を返します。
//emlist[例][ruby]{
p "0x11".to_i # => 0
p "".to_i # =>...