ライブラリ
- ビルトイン (22)
- bigdecimal (14)
-
bigdecimal
/ math (4) - csv (1)
- json (14)
- matrix (3)
クラス
- Array (1)
- BigDecimal (12)
- Complex (2)
- Float (9)
-
JSON
:: Parser (1) -
JSON
:: State (4) - Matrix (2)
-
Matrix
:: LUPDecomposition (1) - String (4)
キーワード
- % (1)
- == (1)
-
EXCEPTION
_ ALL (1) -
EXCEPTION
_ NaN (1) - Float (1)
- FloatDomainError (1)
- Marshal フォーマット (1)
- NaN (1)
- Numeric (1)
-
SIGN
_ NaN (1) -
allow
_ nan? (1) - angle (1)
- arg (1)
- atan (1)
- bigdecimal (1)
- cos (1)
- determinant (2)
-
determinant
_ e (1) - exp (1)
-
fast
_ generate (1) -
fast
_ unparse (1) - finite? (2)
- format (1)
- generate (1)
- inspect (2)
- load (1)
- log (3)
- mathn (1)
- mode (2)
- nan? (2)
- new (2)
- pack (1)
- pack テンプレート文字列 (1)
- parse (1)
- parse! (1)
-
parse
_ csv (1) - phase (1)
- restore (1)
- sign (1)
- sin (1)
- split (1)
- sprintf (1)
- sprintf フォーマット (1)
- sqrt (1)
-
to
_ f (1) -
to
_ h (1) -
to
_ hash (1) -
to
_ i (1) -
to
_ int (1) -
to
_ s (2) - unpack (1)
- unparse (1)
検索結果
先頭5件
-
Float
:: NAN -> Float (54370.0) -
浮動小数点数における NaN(Not a number)です。
浮動小数点数における NaN(Not a number)です。
@see Float#nan? -
BigDecimal
:: NAN -> BigDecimal (54352.0) -
NaN を表す BigDecimal オブジェクトを返します。
NaN を表す BigDecimal オブジェクトを返します。 -
Float
# nan? -> bool (18442.0) -
数値が NaN(Not a number)のとき真を返します。
数値が NaN(Not a number)のとき真を返します。
//emlist[例][ruby]{
nan = 0.0/0.0
p nan # => NaN
p nan.nan? # => true
//} -
JSON
:: State # allow _ nan? -> bool (18406.0) -
NaN, Infinity, -Infinity を生成できる場合、真を返します。 そうでない場合は偽を返します。
NaN, Infinity, -Infinity を生成できる場合、真を返します。
そうでない場合は偽を返します。
//emlist[例][ruby]{
require "json"
json_state = JSON::State.new({})
json_state.allow_nan? # => false
json_state = JSON::State.new(allow_nan: true)
json_state.allow_nan? # => true
//}
@see 4627 -
BigDecimal
# nan? -> bool (18352.0) -
self が NaN のときに true を返します。それ以外のときに false を返します。
self が NaN のときに true を返します。それ以外のときに false を返します。 -
BigDecimal
:: EXCEPTION _ NaN -> Integer (18352.0) -
BigDecimal の計算結果が NaN になった場合に例外を発生させるかどう かを設定、確認する際の値を返します。
BigDecimal の計算結果が NaN になった場合に例外を発生させるかどう
かを設定、確認する際の値を返します。
BigDecimal.mode の第 1 引数に指定します。 -
BigDecimal
:: SIGN _ NaN -> Integer (18352.0) -
NaN に対応する BigDecimal#sign の値を返します。
NaN に対応する BigDecimal#sign の値を返します。 -
JSON
:: NaN -> Float (18352.0) -
NaN (Not a Number) を表します。
NaN (Not a Number) を表します。
@see Float -
Matrix
# determinant -> Numeric (9301.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 _ e -> Rational | Float (9301.0) -
このメソッドは deprecated です。 Matrix#determinant を代わりに使ってください。
このメソッドは deprecated です。
Matrix#determinant を代わりに使ってください。 -
Matrix
:: LUPDecomposition # determinant -> Numeric (9301.0) -
元の行列の行列式の値を返します。 LUP 分解の結果を利用して計算します。
元の行列の行列式の値を返します。
LUP 分解の結果を利用して計算します。
@see Matrix#determinant -
bigdecimal (217.0)
-
bigdecimal は浮動小数点数演算ライブラリです。 任意の精度で 10 進表現された浮動小数点数を扱えます。
bigdecimal は浮動小数点数演算ライブラリです。
任意の精度で 10 進表現された浮動小数点数を扱えます。
//emlist[][ruby]{
require 'bigdecimal'
a = BigDecimal("0.123456789123456789")
b = BigDecimal("123456.78912345678", 40)
print a + b # => 0.123456912580245903456789e6
//}
一般的な 10 進数の計算でも有用です。2 進数の浮動小数点演算には微小な誤
差があるのに対し、BigDecimal では正確な値を得る事がで... -
BigDecimal
. mode(s) -> Integer | nil (145.0) -
BigDecimal の計算処理の制御方法を設定、確認します。
BigDecimal の計算処理の制御方法を設定、確認します。
第2引数を省略、または nil を指定すると現状の設定値を返します。
@param s 制御方法の設定、確認を行う項目を BigDecimal::EXCEPTION_*、
BigDecimal::ROUND_MODE のいずれかで指定します。
@param v 引数 s が BigDecimal::ROUND_MODE の場合は
BigDecimal::ROUND_MODE 以外の BigDecimal::_ROUND* のいず
れかを指定します。指定した丸め処理が有効... -
BigDecimal
. mode(s , v) -> Integer | nil (145.0) -
BigDecimal の計算処理の制御方法を設定、確認します。
BigDecimal の計算処理の制御方法を設定、確認します。
第2引数を省略、または nil を指定すると現状の設定値を返します。
@param s 制御方法の設定、確認を行う項目を BigDecimal::EXCEPTION_*、
BigDecimal::ROUND_MODE のいずれかで指定します。
@param v 引数 s が BigDecimal::ROUND_MODE の場合は
BigDecimal::ROUND_MODE 以外の BigDecimal::_ROUND* のいず
れかを指定します。指定した丸め処理が有効... -
Array
# pack(template) -> String (109.0) -
配列の内容を template で指定された文字列にしたがって、 バイナリとしてパックした文字列を返します。
配列の内容を template で指定された文字列にしたがって、
バイナリとしてパックした文字列を返します。
テンプレートは
型指定文字列とその長さ(省略時は1)を並べたものです。長さと
して * が指定された時は「残りのデータ全て」の長さを
表します。型指定文字は以下で述べる pack テンプレート文字列の通りです。
@param template 自身のバイナリとしてパックするためのテンプレートを文字列で指定します。
以下にあげるものは、Array#pack、String#unpack
のテンプレート文字の一覧です。テンプレート文字は後に「長さ」を表す数字
を続けることができま... -
Float
# ==(other) -> bool (109.0) -
比較演算子。数値として等しいか判定します。
比較演算子。数値として等しいか判定します。
@param other 比較対象の数値
@return self と other が等しい場合 true を返します。
そうでなければ false を返します。
//emlist[例][ruby]{
3.14 == 3.14000 # => true
3.14 == 3.1415 # => false
//}
NaNどうしの比較は、未定義です。
//emlist[例][ruby]{
Float::NAN == Float::NAN # => false
[Float::NAN] == [Fl... -
JSON
. # parse!(source , options = {}) -> object (109.0) -
与えられた JSON 形式の文字列を Ruby オブジェクトに変換して返します。
与えられた JSON 形式の文字列を Ruby オブジェクトに変換して返します。
JSON.#parse よりも危険なデフォルト値が指定されているので
信頼できる文字列のみを入力として使用するようにしてください。
@param source JSON 形式の文字列を指定します。
@param options オプションをハッシュで指定します。
指定可能なオプションは以下の通りです。
: :max_nesting
入れ子になっているデータの最大の深さを指定します。
数値を指定すると深さのチェックを行います。偽を指定すると深さのチェックを行いません。
デフォルト... -
String
# unpack(template) -> Array (109.0) -
Array#pack で生成された文字列を テンプレート文字列 template にしたがってアンパックし、 それらの要素を含む配列を返します。
Array#pack で生成された文字列を
テンプレート文字列 template にしたがってアンパックし、
それらの要素を含む配列を返します。
@param template pack テンプレート文字列
@return オブジェクトの配列
以下にあげるものは、Array#pack、String#unpack
のテンプレート文字の一覧です。テンプレート文字は後に「長さ」を表す数字
を続けることができます。「長さ」の代わりに`*'とすることで「残り全て」
を表すこともできます。
長さの意味はテンプレート文字により異なりますが大抵、
"iiii"
のよう... -
pack テンプレート文字列 (109.0)
-
pack テンプレート文字列
pack テンプレート文字列
以下にあげるものは、Array#pack、String#unpack
のテンプレート文字の一覧です。テンプレート文字は後に「長さ」を表す数字
を続けることができます。「長さ」の代わりに`*'とすることで「残り全て」
を表すこともできます。
長さの意味はテンプレート文字により異なりますが大抵、
"iiii"
のように連続するテンプレート文字は
"i4"
と書き換えることができます。
テンプレート文字列中の空白類は無視されます。
また、`#' から改行あるいはテンプレート文字列の最後まではコメントとみな
され無視されます。
=== 整数のテンプレート... -
BigMath
. # atan(x , prec) -> BigDecimal (97.0) -
x の逆正接関数を prec で指定した精度で計算します。単位はラジアンです。 x に無限大や NaN を指定した場合には NaN を返します。
x の逆正接関数を prec で指定した精度で計算します。単位はラジアンです。
x に無限大や NaN を指定した場合には NaN を返します。
@param x 計算対象の BigDecimal オブジェクト。単位はラジアン。
@param prec 計算結果の精度。
@raise ArgumentError x の絶対値が1以上の場合に発生します。
@raise ArgumentError prec に 0 以下が指定された場合に発生します。
//emlist[][ruby]{
require "bigdecimal/math"
puts BigMath::atan(BigD... -
BigMath
. # cos(x , prec) -> BigDecimal (97.0) -
x の余弦関数を prec で指定した精度で計算します。単位はラジアンです。x に無限大や NaN を指定した場合には NaN を返します。
x の余弦関数を prec で指定した精度で計算します。単位はラジアンです。x
に無限大や NaN を指定した場合には NaN を返します。
@param x 計算対象の BigDecimal オブジェクト。単位はラジアン。
@param prec 計算結果の精度。
@raise ArgumentError prec に 0 以下が指定された場合に発生します。
//emlist[][ruby]{
require "bigdecimal/math"
puts BigMath::cos(BigDecimal('0.5'), 10) #=> 0.877582561890372716116... -
BigMath
. # sin(x , prec) -> BigDecimal (97.0) -
x の正弦関数を prec で指定した精度で計算します。単位はラジアンです。x に無限大や NaN を指定した場合には NaN を返します。
x の正弦関数を prec で指定した精度で計算します。単位はラジアンです。x
に無限大や NaN を指定した場合には NaN を返します。
@param x 計算対象の BigDecimal オブジェクト。単位はラジアン。
@param prec 計算結果の精度。
@raise ArgumentError prec に 0 以下が指定された場合に発生します。
//emlist[][ruby]{
require "bigdecimal/math"
puts BigMath::sin(BigDecimal('0.5'), 10) #=> 0.479425538604203000273... -
FloatDomainError (97.0)
-
正負の無限大や NaN (Not a Number) を Bignum に変換しようとしたり、 NaN との比較を行ったときに発生します。
正負の無限大や NaN (Not a Number) を Bignum に変換しようとしたり、
NaN との比較を行ったときに発生します。 -
Kernel
. # format(format , *arg) -> String (91.0) -
format 文字列を C 言語の sprintf と同じように解釈し、 引数をフォーマットした文字列を返します。
format 文字列を C 言語の sprintf と同じように解釈し、
引数をフォーマットした文字列を返します。
@param format フォーマット文字列です。
@param arg フォーマットされる引数です。
@see Kernel.#printf,Time#strftime,Date.strptime
=== sprintf フォーマット
Ruby の sprintf フォーマットは基本的に C 言語の sprintf(3)
のものと同じです。ただし、short や long などの C 特有の型に対する修飾子が
ないこと、2進数の指示子(%b, %B)が存在すること、s... -
Kernel
. # sprintf(format , *arg) -> String (91.0) -
format 文字列を C 言語の sprintf と同じように解釈し、 引数をフォーマットした文字列を返します。
format 文字列を C 言語の sprintf と同じように解釈し、
引数をフォーマットした文字列を返します。
@param format フォーマット文字列です。
@param arg フォーマットされる引数です。
@see Kernel.#printf,Time#strftime,Date.strptime
=== sprintf フォーマット
Ruby の sprintf フォーマットは基本的に C 言語の sprintf(3)
のものと同じです。ただし、short や long などの C 特有の型に対する修飾子が
ないこと、2進数の指示子(%b, %B)が存在すること、s... -
String
# %(args) -> String (91.0) -
printf と同じ規則に従って args をフォーマットします。
printf と同じ規則に従って args をフォーマットします。
args が配列であれば Kernel.#sprintf(self, *args) と同じです。
それ以外の場合は Kernel.#sprintf(self, args) と同じです。
@param args フォーマットする値、もしくはその配列
@return フォーマットされた文字列
//emlist[例][ruby]{
p "i = %d" % 10 # => "i = 10"
p "i = %x" % 10 # => "i = a"
p "i = %o" % 10... -
sprintf フォーマット (91.0)
-
sprintf フォーマット === sprintf フォーマット
sprintf フォーマット === sprintf フォーマット
Ruby の sprintf フォーマットは基本的に C 言語の sprintf(3)
のものと同じです。ただし、short や long などの C 特有の型に対する修飾子が
ないこと、2進数の指示子(%b, %B)が存在すること、sprintf のすべての方言をサ
ポートしていないこと(%': 3桁区切り)などの違いがあります。
Ruby には整数の大きさに上限がないので、%b, %B, %o, %x, %X
に負の数を与えると (左側に無限に1が続くとみなせるので)
..f のような表示をします。絶対値に符号を付けた... -
BigDecimal
# sign -> -3 | -2 | -1 | 0 | 1 | 2 | 3 (73.0) -
自身の符号等の性質に応じて、Integer を返します。
自身の符号等の性質に応じて、Integer を返します。
符号が正であれば正の整数を返し、負であれば負の整数を返し、NaN であれば 0 を返します。
NaN であれば、 0。 BigDecimal::SIGN_NaN と同じです。
+0 であれば、 1。 BigDecimal::SIGN_POSITIVE_ZERO と同じです。
-0 であれば、-1。 BigDecimal::SIGN_NEGATIVE_ZERO と同じです。
有限の正の値 であれば、 2。 BigDecimal::SIGN_POSITIVE_FINITE ... -
Complex
# inspect -> String (73.0) -
自身を人間が読みやすい形の文字列表現にして返します。
自身を人間が読みやすい形の文字列表現にして返します。
//emlist[例][ruby]{
Complex(2).inspect # => "(2+0i)"
Complex('-8/6').inspect # => "((-4/3)+0i)"
Complex('1/2i').inspect # => "(0+(1/2)*i)"
Complex(0, Float::INFINITY).inspect # => "(0+Infinity*i)"
Complex(Float:... -
Complex
# to _ s -> String (73.0) -
自身を "実部 + 虚部i" 形式の文字列にして返します。
自身を "実部 + 虚部i" 形式の文字列にして返します。
//emlist[例][ruby]{
Complex(2).to_s # => "2+0i"
Complex('-8/6').to_s # => "-4/3+0i"
Complex('1/2i').to_s # => "0+1/2i"
Complex(0, Float::INFINITY).to_s # => "0+Infinity*i"
Complex(Float::NAN, Float::NAN).to_s... -
JSON
. # generate(object , state = nil) -> String (73.0) -
与えられたオブジェクトを一行の JSON 形式の文字列に変換して返します。
与えられたオブジェクトを一行の JSON 形式の文字列に変換して返します。
デフォルトでは、サイズが最小となる JSON 形式の文字列を生成します。
また、循環参照のチェックを行います。JSON::NaN, JSON::Infinity,
JSON::MinusInfinity を生成することもありません。
unparse は将来削除される予定です。
@param object JSON 形式の文字列に変換するオブジェクトを指定します。
@param state JSON::State または、to_hash や to_h メソッドでハッシュに変換可能なオブジェクトを指定できます。
... -
JSON
. # unparse(object , state = nil) -> String (73.0) -
与えられたオブジェクトを一行の JSON 形式の文字列に変換して返します。
与えられたオブジェクトを一行の JSON 形式の文字列に変換して返します。
デフォルトでは、サイズが最小となる JSON 形式の文字列を生成します。
また、循環参照のチェックを行います。JSON::NaN, JSON::Infinity,
JSON::MinusInfinity を生成することもありません。
unparse は将来削除される予定です。
@param object JSON 形式の文字列に変換するオブジェクトを指定します。
@param state JSON::State または、to_hash や to_h メソッドでハッシュに変換可能なオブジェクトを指定できます。
... -
Marshal フォーマット (55.0)
-
Marshal フォーマット フォーマットバージョン 4.8 を元に記述しています。
Marshal フォーマット
フォーマットバージョン 4.8 を元に記述しています。
=== nil, true, false
それぞれ、'0', 'T', 'F' になります。
//emlist[][ruby]{
p Marshal.dump(nil).unpack1("x2 a*") # => "0"
p Marshal.dump(true).unpack1("x2 a*") # => "T"
p Marshal.dump(false).unpack1("x2 a*") # => "F"
//}
Ruby 2.1 以前では、インスタンス変数を設定しても dump されません... -
BigDecimal
# finite? -> bool (49.0) -
self が ∞または NaN でないときに true を返します。それ以外のときに false を返します。
self が ∞または NaN でないときに true を返します。それ以外のときに
false を返します。 -
BigDecimal
# split -> [Integer , String , Integer , Integer] (49.0) -
BigDecimal 値を 0.xxxxxxx*10**n と表現したときに、 符号 (NaNのときは 0、それ以外は+1か-1になります)、 仮数部分の文字列("xxxxxxx")と、基数(10)、更に指数 n を配列で返します。
BigDecimal 値を 0.xxxxxxx*10**n と表現したときに、
符号 (NaNのときは 0、それ以外は+1か-1になります)、
仮数部分の文字列("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 になります。
従って、以下のようにする事で Float に変換することができます。
//em... -
Float
# finite? -> bool (49.0) -
数値が ∞, -∞, あるいは NaN でない場合に true を返します。 そうでない場合に false を返します。
数値が ∞, -∞, あるいは NaN でない場合に true を返します。
そうでない場合に false を返します。
//emlist[例][ruby]{
3.14.finite? # => true
inf = 1.0/0
inf.finite? # => false
//} -
BigMath
. # exp(x , prec) -> BigDecimal (37.0) -
x の指数関数を prec で指定した精度で計算します。
x の指数関数を prec で指定した精度で計算します。
x に正の無限大を指定した場合は正の無限大を返します。負の無限大を指定し
た場合には 0 を返します。NaN を指定した場合には NaNを返します。
@param x 計算対象の数値を Integer、BigDecimal、
Float、Rationalオブジェクトのいずれかで指定します。
@param prec 計算結果の精度を指定します。
@raise ArgumentError x に Integer、BigDecimal、
Float、Rational以外のオ... -
BigMath
. # log(x , prec) -> BigDecimal (37.0) -
x の自然対数を prec で指定した精度で計算します。
x の自然対数を prec で指定した精度で計算します。
x に無限大を指定した場合は無限大を返します。NaN を指定した場合には NaN
を返します。
@param x 計算対象の数値を Integer、Float、
Rational、BigDecimal オブジェクトのいずれかで指定
します。
@param prec 計算結果の精度を指定します。
@raise Math::DomainError x に 0 以下の数値か Complex オブジェクト
が指定された場合に発生します。
@rais... -
Float
# angle -> 0 | Float (37.0) -
自身の偏角(正の数なら 0、負の数なら Math::PI)を返します。
自身の偏角(正の数なら 0、負の数なら Math::PI)を返します。
//emlist[例][ruby]{
1.arg # => 0
-1.arg # => 3.141592653589793
//}
ただし、自身が NaN(Not a number) であった場合は、NaN を返します。 -
Float
# arg -> 0 | Float (37.0) -
自身の偏角(正の数なら 0、負の数なら Math::PI)を返します。
自身の偏角(正の数なら 0、負の数なら Math::PI)を返します。
//emlist[例][ruby]{
1.arg # => 0
-1.arg # => 3.141592653589793
//}
ただし、自身が NaN(Not a number) であった場合は、NaN を返します。 -
Float
# inspect -> String (37.0) -
自身を人間が読みやすい形の文字列表現にして返します。
自身を人間が読みやすい形の文字列表現にして返します。
固定小数点、浮動小数点の形式か、 "Infinity"、"-Infinity"、"NaN" のいず
れかを返します。
@return 文字列を返します。
//emlist[例][ruby]{
0.00001.to_s # => "1.0e-05"
3.14.to_s # => "3.14"
10000_00000_00000.0.to_s # => "100000000000000.0"
10000_00000_00000_00000.0.to_s # => "1.0e+19"
... -
Float
# phase -> 0 | Float (37.0) -
自身の偏角(正の数なら 0、負の数なら Math::PI)を返します。
自身の偏角(正の数なら 0、負の数なら Math::PI)を返します。
//emlist[例][ruby]{
1.arg # => 0
-1.arg # => 3.141592653589793
//}
ただし、自身が NaN(Not a number) であった場合は、NaN を返します。 -
Float
# to _ s -> String (37.0) -
自身を人間が読みやすい形の文字列表現にして返します。
自身を人間が読みやすい形の文字列表現にして返します。
固定小数点、浮動小数点の形式か、 "Infinity"、"-Infinity"、"NaN" のいず
れかを返します。
@return 文字列を返します。
//emlist[例][ruby]{
0.00001.to_s # => "1.0e-05"
3.14.to_s # => "3.14"
10000_00000_00000.0.to_s # => "100000000000000.0"
10000_00000_00000_00000.0.to_s # => "1.0e+19"
... -
JSON
. # load(source , proc = nil , options = {}) -> object (37.0) -
与えられた JSON 形式の文字列を Ruby オブジェクトとしてロードして返します。
与えられた JSON 形式の文字列を Ruby オブジェクトとしてロードして返します。
proc として手続きオブジェクトが与えられた場合は、読み込んだオブジェクトを
引数にその手続きを呼び出します。
require 'json'
str=<<JSON
[1,2,3]
JSON
JSON.load(str) # => [1,2,3]
JSON.load(str, proc{|v| p v }) # => [1,2,3]
# 以下が表示される
# 1
# 2
# 3
# [1,2,3]
str=<<JSON
{ "a"... -
JSON
. # parse(source , options = {}) -> object (37.0) -
与えられた JSON 形式の文字列を Ruby オブジェクトに変換して返します。
与えられた JSON 形式の文字列を Ruby オブジェクトに変換して返します。
@param source JSON 形式の文字列を指定します。
@param options オプションをハッシュで指定します。
指定可能なオプションは以下の通りです。
: :max_nesting
入れ子になっているデータの最大の深さを指定します。
偽を指定すると深さのチェックを行いません。デフォルトは 19 です。
: :allow_nan
真を指定すると 4627 を無視してパース時に JSON::NaN, JSON::Infinity,
JSON::MinusInf... -
JSON
. # restore(source , proc = nil , options = {}) -> object (37.0) -
与えられた JSON 形式の文字列を Ruby オブジェクトとしてロードして返します。
与えられた JSON 形式の文字列を Ruby オブジェクトとしてロードして返します。
proc として手続きオブジェクトが与えられた場合は、読み込んだオブジェクトを
引数にその手続きを呼び出します。
require 'json'
str=<<JSON
[1,2,3]
JSON
JSON.load(str) # => [1,2,3]
JSON.load(str, proc{|v| p v }) # => [1,2,3]
# 以下が表示される
# 1
# 2
# 3
# [1,2,3]
str=<<JSON
{ "a"... -
JSON
:: Parser . new(source , options => {}) -> JSON :: Parser (37.0) -
パーサを初期化します。
パーサを初期化します。
第二引数のハッシュには以下のキーを指定することができます。
: :max_nesting
データ構造のネストの深さの最大値を指定します。デフォルトは 19 です。
チェックを無効にするにはゼロまたは偽を指定してください。
: :allow_nan
真を指定すると 4627 を無視して NaN, Infinity, -Infinity をパースエラーにしません。
デフォルトは偽です。
: :create_additions
偽を指定するとマッチするクラスや ID があっても付加情報を生成しません。デフォルトは真です。
: :object_clas... -
JSON
:: State . new(options = {}) -> JSON :: State (37.0) -
自身を初期化します。
自身を初期化します。
@param options ハッシュを指定します。
指定可能なオプションは以下の通りです。
: :indent
インデントに使用する文字列を指定します。デフォルトは空文字列です。
: :space
JSON 形式の文字列のトークン間に挿入する文字列を指定します。デフォルトは空文字列です。
: :space_before
JSON 形式の文字列中で JavaScript のオブジェクトを表す部分にある ':' の
前に挿入する文字列をセットします。デフォルトは空文字列です。
: :object_nl
JSON 形式の文字列中に現れる... -
Kernel
. # Float(arg) -> Float (37.0) -
引数を浮動小数点数(Float)に変換した結果を返します。
引数を浮動小数点数(Float)に変換した結果を返します。
引数が数値の場合は素直に変換し、文字列の場合
は整数や浮動小数点数と見なせるもののみ変換します。
メソッド Float は文字列に対し String#to_f よりも厳密な変換を行います。
@param arg 変換対象のオブジェクトです。
@raise ArgumentError 整数や浮動小数点数と見なせない文字列を引数に指定した場合に発生します。
@raise TypeError nil またはメソッド to_f を持たないオブジェクトを引数に指定したか、
to_f が浮動小数点数を返さ... -
String
# parse _ csv(**options) -> [String] (37.0) -
CSV.parse_line(self, options) と同様です。
CSV.parse_line(self, options) と同様です。
1 行の CSV 文字列を、文字列の配列に変換するためのショートカットです。
@param options CSV.new と同様のオプションを指定します。
//emlist[][ruby]{
require "csv"
p "Matz,Ruby\n".parse_csv # => ["Matz", "Ruby"]
p "Matz|Ruby\r\n".parse_csv(col_sep: '|', row_sep: "\r\n") # => ... -
BigDecimal
# to _ i -> Integer (19.0) -
self の小数点以下を切り捨てて整数に変換します。
self の小数点以下を切り捨てて整数に変換します。
@raise FloatDomainError self が無限大や NaN であった場合に発生します。 -
BigDecimal
# to _ int -> Integer (19.0) -
self の小数点以下を切り捨てて整数に変換します。
self の小数点以下を切り捨てて整数に変換します。
@raise FloatDomainError self が無限大や NaN であった場合に発生します。 -
BigDecimal
:: EXCEPTION _ ALL -> Integer (19.0) -
BigDecimal の計算において例外を発生させるかどうかを設定、確認する 際の値を返します。
BigDecimal の計算において例外を発生させるかどうかを設定、確認する
際の値を返します。
以下の例外全てが対象です。
* BigDecimal::EXCEPTION_INFINITY
* BigDecimal::EXCEPTION_NaN
* BigDecimal::EXCEPTION_OVERFLOW
* BigDecimal::EXCEPTION_UNDERFLOW
* BigDecimal::EXCEPTION_ZERODIVIDE
BigDecimal.mode の第 1 引数に指定します。 -
BigMath
. # sqrt(x , prec) -> BigDecimal (19.0) -
x の平方根を prec で指定した精度で計算します。
x の平方根を prec で指定した精度で計算します。
@param x 平方根を求める数。
@param prec 計算結果の精度。
@raise FloatDomainError x に 0 以下、もしくは NaN が指定された場合に発生します。
@raise ArgumentError prec に 0 未満が指定された場合に発生します。
//emlist[][ruby]{
require "bigdecimal/math"
puts BigMath::sqrt(BigDecimal('2'), 10) #=> 0.1414213562373095048666666667e... -
JSON
. # fast _ generate(object) -> String (19.0) -
与えられたオブジェクトを一行の JSON 形式の文字列に変換して返します。
与えられたオブジェクトを一行の JSON 形式の文字列に変換して返します。
このメソッドは循環参照のチェックを無効にしています。また、
JSON::NaN, JSON::Infinity, JSON::MinusInfinity を生成することがあります。
このため容易に無限ループを発生させることができるので、気をつけてください。
fast_unparse は将来削除される予定です。
@param object JSON 形式の文字列に変換するオブジェクトを指定します。
//emlist[例][ruby]{
require "json"
JSON.fast_generate({ n... -
JSON
. # fast _ unparse(object) -> String (19.0) -
与えられたオブジェクトを一行の JSON 形式の文字列に変換して返します。
与えられたオブジェクトを一行の JSON 形式の文字列に変換して返します。
このメソッドは循環参照のチェックを無効にしています。また、
JSON::NaN, JSON::Infinity, JSON::MinusInfinity を生成することがあります。
このため容易に無限ループを発生させることができるので、気をつけてください。
fast_unparse は将来削除される予定です。
@param object JSON 形式の文字列に変換するオブジェクトを指定します。
//emlist[例][ruby]{
require "json"
JSON.fast_generate({ n... -
JSON
:: State # to _ h -> Hash (19.0) -
自身をハッシュに変換します。
自身をハッシュに変換します。
//emlist[例][ruby]{
require "json"
require "pp"
json_state = JSON::State.new
pp json_state.to_h
# => {:indent=>"",
# :space=>"",
# :space_before=>"",
# :object_nl=>"",
# :array_nl=>"",
# :allow_nan=>false,
# :ascii_only=>false,
# :max_nesting=>100,
# ... -
JSON
:: State # to _ hash -> Hash (19.0) -
自身をハッシュに変換します。
自身をハッシュに変換します。
//emlist[例][ruby]{
require "json"
require "pp"
json_state = JSON::State.new
pp json_state.to_h
# => {:indent=>"",
# :space=>"",
# :space_before=>"",
# :object_nl=>"",
# :array_nl=>"",
# :allow_nan=>false,
# :ascii_only=>false,
# :max_nesting=>100,
# ... -
Math
. # log(x) -> Float (19.0) -
x の対数(logarithm)を返します。
x の対数(logarithm)を返します。
引数 x, b の両方に 0 を指定した場合は Float::NAN を返します。
@param x 正の実数を指定します。
@param b 底を指定します。省略した場合は自然対数(natural logarithm)を計算します。
@raise TypeError 引数のどちらかに数値以外を指定した場合に発生します。
@raise RangeError 引数のどちらかに実数以外の数値を指定した場合に発生します。
@raise DomainError 引数のどちらかに負の数を指定した場合に発生します。
//emlist[例][ru... -
Math
. # log(x , b) -> Float (19.0) -
x の対数(logarithm)を返します。
x の対数(logarithm)を返します。
引数 x, b の両方に 0 を指定した場合は Float::NAN を返します。
@param x 正の実数を指定します。
@param b 底を指定します。省略した場合は自然対数(natural logarithm)を計算します。
@raise TypeError 引数のどちらかに数値以外を指定した場合に発生します。
@raise RangeError 引数のどちらかに実数以外の数値を指定した場合に発生します。
@raise DomainError 引数のどちらかに負の数を指定した場合に発生します。
//emlist[例][ru... -
Numeric (19.0)
-
数値を表す抽象クラスです。Integer や Float などの数値クラス は Numeric のサブクラスとして実装されています。
数値を表す抽象クラスです。Integer や Float などの数値クラス
は Numeric のサブクラスとして実装されています。
演算や比較を行うメソッド(+, -, *, /, <=>)は Numeric のサブクラスで定義されま
す。Numeric で定義されているメソッドは、サブクラスで提供されているメソッド
(+, -, *, /, %) を利用して定義されるものがほとんどです。
つまり Numeric で定義されているメソッドは、Numeric のサブクラスとして新たに数値クラスを定義した時に、
演算メソッド(+, -, *, /, %, <=>, coerce)だけを定義すれ... -
String
# to _ f -> Float (19.0) -
文字列を 10 進数表現と解釈して、浮動小数点数 Float に変換します。
文字列を 10 進数表現と解釈して、浮動小数点数 Float に変換します。
浮動小数点数とみなせなくなるところまでを変換対象とします。
途中に変換できないような文字列がある場合、それより先の文字列は無視されます。
//emlist[][ruby]{
p "-10".to_f # => -10.0
p "10e2".to_f # => 1000.0
p "1e-2".to_f # => 0.01
p ".1".to_f # => 0.1
p "1_0_0".to_f # => 100.0 # 数値リテラルと同じように区切りに _ を使える
p " \n10".to_f ... -
mathn (19.0)
-
Rational と Complex をよりシームレスに利用できるようにするライブラリです。数値ライブラリの挙動をグローバルに変更します。
Rational と Complex をよりシームレスに利用できるようにするライブラリです。数値ライブラリの挙動をグローバルに変更します。
なお、このライブラリはRuby 2.2から非推奨(deprecated)になり、Ruby 2.5で削除されました。
引き続き利用するには mathn gem をインストールしてください。
* 整数の除算が割り切れない場合、 Rational オブジェクトを返すようになります。
* 複素数や有理数の演算結果が実数や整数に収まる場合、 Float オブジェクトや Integer オブジェクトを返します。
* Math モジュールの数学関数の定義域と終...