種類
- 文書 (33)
- インスタンスメソッド (27)
- 特異メソッド (17)
- クラス (11)
- ライブラリ (11)
モジュール
- Psych (17)
キーワード
-
1
. 6 . 8から1 . 8 . 0への変更点(まとめ) (11) - Rubyで使われる記号の意味(正規表現の複雑な記号は除く) (11)
- bigdecimal (11)
-
ruby 1
. 6 feature (11) -
safe
_ load (17)
検索結果
先頭5件
-
Numeric (38142.0)
-
数値を表す抽象クラスです。Integer や Float などの数値クラス は Numeric のサブクラスとして実装されています。
...スです。Integer や Float などの数値クラス
は Numeric のサブクラスとして実装されています。
演算や比較を行うメソッド(+, -, *, /, <=>)は Numeric のサブクラスで定義されま
す。Numeric で定義されているメソッドは、サブクラスで......提供されているメソッド
(+, -, *, /, %) を利用して定義されるものがほとんどです。
つまり Numeric で定義されているメソッドは、Numeric のサブクラスとして新たに数値クラスを定義した時に、
演算メソッド(+, -, *, /, %, <=>, coerce......o - - -
[] | - - o o - - -
^ | - - o o - - -
Numeric Integer Fixnum Bignum......>> | - o - - -
[] | - o - - -
^ | - o - - -
Numeric Integer Float Rational Complex
------... -
Bignum
# [](nth) -> Fixnum (18106.0) -
nth 番目のビット(最下位ビット(LSB)が 0 番目)が立っている時 1 を、そうでなければ 0 を返します。
...位ビット(LSB)が 0 番目)が立っている時 1
を、そうでなければ 0 を返します。
@param nth 何ビット目を指すかの数値
@return 1 か 0
self[nth]=bit (つまりビットの修正) がないのは、Numeric 関連クラスが
immutable であるためです。... -
Fixnum
# [](nth) -> Fixnum (18106.0) -
nth 番目のビット(最下位ビット(LSB)が 0 番目)が立っている時 1 を、そうでなければ 0 を返します。
...位ビット(LSB)が 0 番目)が立っている時 1
を、そうでなければ 0 を返します。
@param nth 何ビット目を指すかの数値
@return 1 か 0
self[nth]=bit (つまりビットの修正) がないのは、Numeric 関連クラスが
immutable であるためです。... -
Integer
# [](nth) -> Integer (18106.0) -
nth 番目のビット(最下位ビット(LSB)が 0 番目)が立っている時 1 を、そうでなければ 0 を返します。
...っている時 1
を、そうでなければ 0 を返します。
@param nth 何ビット目を指すかの数値
@return 1 か 0
//emlist[][ruby]{
a = 0b11001100101010
30.downto(0) {|n| print a[n] }
# => 0000000000000000011001100101010
a = 9**15
50.downto(0) {|n| print a[n] }
# => 0001011......00011110010100111100010111001
//}
n[i] は (n >> i) & 1 と等価なので、負のインデックスは常に 0 を返します。
//emlist[][ruby]{
p 255[-1] # => 0
//}
self[nth]=bit (つまりビットの修正) がないのは、Numeric 関連クラスが
immutable であるためです。......r self[..j] で n & ((1 << (j + 1)) - 1) が 0 以外のとき
@raise ArgumentError self[...j] で n & ((1 << j) - 1) が 0 以外のとき
//emlist[][ruby]{
a = 0b11001100101010
30.downto(0) {|n| print a[n] }
# => 0000000000000000011001100101010
a = 9**15
50.downto(0) {|n| print a[n] }
# => 00010......0 を返します。
//emlist[][ruby]{
p 255[-1] # => 0
//}
//emlist[複数ビットの例][ruby]{
0b01001101[2, 4] #=> 0b0011
0b01001100[2..5] #=> 0b0011
0b01001100[2...6] #=> 0b0011
# ^^^^
//}
self[nth]=bit (つまりビットの修正) がないのは、Numeric 関連クラスが
immutable... -
Integer
# [](nth , len) -> Integer (18106.0) -
nth 番目のビット(最下位ビット(LSB)が 0 番目)が立っている時 1 を、そうでなければ 0 を返します。
...r self[..j] で n & ((1 << (j + 1)) - 1) が 0 以外のとき
@raise ArgumentError self[...j] で n & ((1 << j) - 1) が 0 以外のとき
//emlist[][ruby]{
a = 0b11001100101010
30.downto(0) {|n| print a[n] }
# => 0000000000000000011001100101010
a = 9**15
50.downto(0) {|n| print a[n] }
# => 00010......0 を返します。
//emlist[][ruby]{
p 255[-1] # => 0
//}
//emlist[複数ビットの例][ruby]{
0b01001101[2, 4] #=> 0b0011
0b01001100[2..5] #=> 0b0011
0b01001100[2...6] #=> 0b0011
# ^^^^
//}
self[nth]=bit (つまりビットの修正) がないのは、Numeric 関連クラスが
immutable... -
Integer
# [](range) -> Integer (18106.0) -
nth 番目のビット(最下位ビット(LSB)が 0 番目)が立っている時 1 を、そうでなければ 0 を返します。
...r self[..j] で n & ((1 << (j + 1)) - 1) が 0 以外のとき
@raise ArgumentError self[...j] で n & ((1 << j) - 1) が 0 以外のとき
//emlist[][ruby]{
a = 0b11001100101010
30.downto(0) {|n| print a[n] }
# => 0000000000000000011001100101010
a = 9**15
50.downto(0) {|n| print a[n] }
# => 00010......0 を返します。
//emlist[][ruby]{
p 255[-1] # => 0
//}
//emlist[複数ビットの例][ruby]{
0b01001101[2, 4] #=> 0b0011
0b01001100[2..5] #=> 0b0011
0b01001100[2...6] #=> 0b0011
# ^^^^
//}
self[nth]=bit (つまりビットの修正) がないのは、Numeric 関連クラスが
immutable... -
Psych
. safe _ load(yaml , legacy _ permitted _ classes=[] , legacy _ permitted _ symbols=[] , legacy _ aliases=false , legacy _ filename=nil) -> object (212.0) -
安全に YAML フォーマットの文書を読み込み Ruby のオブジェクトを生成して返します。
...します。
デフォルトでは以下のクラスのオブジェクトしか変換しません。
* TrueClass
* FalseClass
* NilClass
* Numeric
* String
* Array
* Hash
再帰的なデータ構造はデフォルトでは許可されていません。
任意のクラスを許可するに......エイリアスはキーワード引数 aliases を指定することで明示的に許可できます。
//emlist[aliases: true の例][ruby]{
x = []
x << x
yaml = Psych.dump x
Psych.safe_load yaml # => 例外発生
Psych.safe_load yaml, aliases: true # => エイリアスが読み... -
Psych
. safe _ load(yaml , permitted _ classes: [] , permitted _ symbols: [] , aliases: false , filename: nil , fallback: nil , symbolize _ names: false) -> object (212.0) -
安全に YAML フォーマットの文書を読み込み Ruby のオブジェクトを生成して返します。
...します。
デフォルトでは以下のクラスのオブジェクトしか変換しません。
* TrueClass
* FalseClass
* NilClass
* Numeric
* String
* Array
* Hash
再帰的なデータ構造はデフォルトでは許可されていません。
任意のクラスを許可するに......エイリアスはキーワード引数 aliases を指定することで明示的に許可できます。
//emlist[aliases: true の例][ruby]{
x = []
x << x
yaml = Psych.dump x
Psych.safe_load yaml # => 例外発生
Psych.safe_load yaml, aliases: true # => エイリアスが読み... -
Psych
. safe _ load(yaml , permitted _ classes: [] , permitted _ symbols: [] , aliases: false , filename: nil , fallback: nil , symbolize _ names: false , freeze: false) -> object (212.0) -
安全に YAML フォーマットの文書を読み込み Ruby のオブジェクトを生成して返します。
...します。
デフォルトでは以下のクラスのオブジェクトしか変換しません。
* TrueClass
* FalseClass
* NilClass
* Numeric
* String
* Array
* Hash
再帰的なデータ構造はデフォルトでは許可されていません。
任意のクラスを許可するに......エイリアスはキーワード引数 aliases を指定することで明示的に許可できます。
//emlist[aliases: true の例][ruby]{
x = []
x << x
yaml = Psych.dump x
Psych.safe_load yaml # => 例外発生
Psych.safe_load yaml, aliases: true # => エイリアスが読み... -
Psych
. safe _ load(yaml , whitelist _ classes = [] , whitelist _ symbols = [] , aliases = false , filename = nil) -> object (212.0) -
安全に YAML フォーマットの文書を読み込み Ruby のオブジェクトを生成して返します。
...します。
デフォルトでは以下のクラスのオブジェクトしか変換しません。
* TrueClass
* FalseClass
* NilClass
* Numeric
* String
* Array
* Hash
再帰的なデータ構造はデフォルトでは許可されていません。
任意のクラスを許可するに......さい:
//emlist[][ruby]{
Psych.safe_load(yaml, [Date])
//}
すると上のクラス一覧に加えて Date クラスが読み込まれます。
エイリアスは aliases パラメーターを変更することで明示的に許可できます。
//emlist[例][ruby]{
x = []
x << x
yaml = Psych.......dump x
Psych.safe_load yaml # => 例外発生
Psych.safe_load yaml, [], [], true # => エイリアスが読み込まれる
//}
yaml にホワイトリストにないクラスが含まれていた場合は、
Psych::DisallowedClass 例外が発生します。
yaml がエイリアス... -
Psych
. safe _ load(yaml , whitelist _ classes = [] , whitelist _ symbols = [] , aliases = false , filename = nil , symbolize _ names: false) -> object (212.0) -
安全に YAML フォーマットの文書を読み込み Ruby のオブジェクトを生成して返します。
...します。
デフォルトでは以下のクラスのオブジェクトしか変換しません。
* TrueClass
* FalseClass
* NilClass
* Numeric
* String
* Array
* Hash
再帰的なデータ構造はデフォルトでは許可されていません。
任意のクラスを許可するに......さい:
//emlist[][ruby]{
Psych.safe_load(yaml, [Date])
//}
すると上のクラス一覧に加えて Date クラスが読み込まれます。
エイリアスは aliases パラメーターを変更することで明示的に許可できます。
//emlist[例][ruby]{
x = []
x << x
yaml = Psych.......dump x
Psych.safe_load yaml # => 例外発生
Psych.safe_load yaml, [], [], true # => エイリアスが読み込まれる
//}
yaml にホワイトリストにないクラスが含まれていた場合は、
Psych::DisallowedClass 例外が発生します。
yaml がエイリアス... -
1
. 6 . 8から1 . 8 . 0への変更点(まとめ) (144.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への変更点(まとめ)/サポートプラットフォームの追加>))
...を返すことができます。
: 多重代入 [change]
多重代入の規則を見直しました。
# # derived from sample/test.rb
# a = *[]; p a # special case
# def f; yield; end; f {|a| p a} # add (warning)
# def r; return; end; a = r(); p a
#......); p a
# a = 1; p a
# def f; yield 1; end; f {|a| p a}
# def r; return 1; end; a = r(); p a
# a = []; p a
# def f; yield []; end; f {|a| p a}
# def r; return []; end; a = r(); p a
# a = [1]; p a
# def f; yield [1]; end; f {|a| p a}
# def r; return [1]; end; a = r();......r|File::Stat/rdev_major>)) [new]
: ((<File::Stat#rdev_minor|File::Stat/rdev_minor>)) [new]
追加
=== Float
: ((<Numeric#to_int|Numeric/to_int>)) [new]
: ((<Float#to_int|Numeric/to_int>)) [new]
追加。
=== Hash
: ((<Hash#merge|Hash/merge>)) [new]
: ((<Hash#merge!|Hash/merge!>)) [new]... -
ruby 1
. 6 feature (60.0) -
ruby 1.6 feature ruby version 1.6 は安定版です。この版での変更はバグ修正がメイン になります。
...範囲外の文字列を指定したときに例外を返す場合がありましたが、常に nil
を返すようになりました。(String#[]やString#slice と同じ結果を返すと
いうことです)
p "foo".slice!("bar") # <- 以前からこちらは nil を返してい......ymlink("foo", "bar")
p Dir.glob("bar")
=> ruby 1.6.7 (2002-03-01) [i586-linux]
[]
=> ruby 1.6.7 (2002-08-01) [i586-linux]
["bar"]
: 2002-06-13 Hash[]
Hash[] で、キーとなる文字列を dup & freeze していませんでした。
a = "k......)
p(-1[-1])
=> ruby 1.6.5 (2001-09-19) [i586-linux]
1
=> ruby 1.6.5 (2001-11-01) [i586-linux]
1
: Numeric#remainder
((<ruby-bugs-ja:PR#110>))
p( 3.remainder(-3))
p(-3.remainder(3))
=> ruby 1.6.5 (2001-09-19) [i586-linux]... -
bigdecimal (18.0)
-
bigdecimal は浮動小数点数演算ライブラリです。 任意の精度で 10 進表現された浮動小数点数を扱えます。
...bigdecimal は浮動小数点数演算ライブラリです。
任意の精度で 10 進表現された浮動小数点数を扱えます。
//emlist[][ruby]{
require 'bigdecimal'
a = BigDecimal("0.123456789123456789")
b = BigDecimal("123456.78912345678", 40)
print a + b # => 0.123456912580245903456......別な値を持
ちます。
==== 無限大
BigDecimal による演算の際には無限大を表す値を返す場合があります。
//emlist[][ruby]{
require "bigdecimal"
BigDecimal("1.0") / BigDecimal("0.0") #=> Infinity
BigDecimal("-1.0") / BigDecimal("0.0") #=> -Infinity
//}
無限大......) 数値に自動変換することはできません。
文字列を数値に自動変換したい場合は bigdecimal.c の
「/* #define ENABLE_NUMERIC_STRING */」のコメントを外してから、
再コンパイル、再インストールする必要があります。
文字列で数値を... -
Rubyで使われる記号の意味(正規表現の複雑な記号は除く) (12.0)
-
Rubyで使われる記号の意味(正規表現の複雑な記号は除く) ex q num per and or plus minus ast slash hat sq period comma langl rangl eq tilde dollar at under lbrarbra lbra2rbra2 lbra3rbra3 dq colon ac backslash semicolon
...す。
===[a:per] %
: 10 % 3
各クラスで定義された「%」演算子。整数クラスでは「剰余」を意味するメソッド。Numeric#%メソッドなどを参照。
: "%04b" % 10
Stringクラスの「%」演算子。String#% メソッド。文字列中ではフォーマッ......"a is #{a}" #=> "a is 10"
//}
===[a:lbra2] [
===[a:rbra2] ]
: [1,"some",:ok]
配列のリテラル
: 'abcde'[1,2]
[]メソッドの実行
//emlist{
class String
def [](*a)
'(^^;'
end
end
p( 'abcde'[1,2] ) #=> "(^^;"
//}
: /xx[abc]/
正規表現の文字クラス指定......です。
d:spec/literal#numを参照。
: _1 ~ _9
番号指定パラメータ。ブロックの仮引数として参照できます。
//emlist[][ruby]{
# 同じ意味
(1..10).map {|n| n * 2 }
(1..10).map { _1 * 2 }
[3, 1, 2].sort {|n, m| m <=> n }
[3, 1, 2].sort { _2 <=> _1 }
//}
===[a:lbra...