クラス
-
ARGF
. class (26) - Array (82)
- BasicObject (4)
- Complex (9)
- Dir (6)
- Encoding (2)
-
Encoding
:: Converter (7) - Enumerator (18)
-
Enumerator
:: ArithmeticSequence (14) -
Enumerator
:: Chain (6) -
Enumerator
:: Lazy (35) -
Enumerator
:: Yielder (2) - Exception (5)
- FalseClass (2)
- File (12)
-
File
:: Stat (3) - Float (9)
- Hash (41)
- IO (25)
- Integer (13)
- MatchData (7)
- Method (3)
- Module (12)
- NameError (1)
- NilClass (2)
- Numeric (14)
- Object (30)
- Proc (7)
-
Process
:: Status (7) - Random (3)
- Range (17)
- Rational (8)
- Regexp (5)
-
RubyVM
:: InstructionSequence (4) - SignalException (3)
- StopIteration (1)
- String (35)
- Struct (12)
- Symbol (24)
- Thread (10)
-
Thread
:: Backtrace :: Location (3) -
Thread
:: Queue (1) - ThreadGroup (1)
- Time (20)
- TracePoint (2)
- TrueClass (1)
- UnboundMethod (3)
- UncaughtThrowError (1)
モジュール
- Enumerable (47)
- FileTest (1)
-
GC
:: Profiler (1) - Kernel (33)
- Marshal (1)
- ObjectSpace (2)
- Process (7)
キーワード
-
$ stdin (1) - % (3)
- & (2)
- * (2)
- + (2)
- << (2)
- <=> (2)
- == (3)
- === (1)
- =~ (1)
- >> (1)
-
ALT
_ SEPARATOR (1) - Array (1)
-
CLOCK
_ MONOTONIC (1) -
CLOCK
_ MONOTONIC _ COARSE (1) -
CLOCK
_ MONOTONIC _ FAST (1) -
CLOCK
_ MONOTONIC _ PRECISE (1) -
CLOCK
_ MONOTONIC _ RAW (1) -
CLOCK
_ MONOTONIC _ RAW _ APPROX (1) - Complex (1)
- ConverterNotFoundError (1)
- DATA (1)
- Float (1)
- Hash (1)
- Integer (1)
- Numeric (1)
-
PATH
_ SEPARATOR (1) - SEPARATOR (1)
- Separator (1)
- String (1)
-
TOPLEVEL
_ BINDING (1) - UndefinedConversionError (1)
- [] (13)
- []= (2)
-
absolute
_ path (1) -
add
_ trace _ func (1) - ancestors (1)
- at (1)
- atime (1)
- autoclose= (1)
- autoclose? (1)
- autoload (2)
- autoload? (2)
-
backtrace
_ locations (2) - begin (2)
- bsearch (2)
-
bsearch
_ index (1) - bytes (4)
- caller (3)
- capitalize (1)
- captures (1)
- casecmp (1)
- casecmp? (1)
- ceil (1)
- chain (1)
- chars (4)
- chunk (3)
-
chunk
_ while (2) -
clock
_ gettime (1) - clone (2)
- close (1)
- codepoints (4)
- coerce (1)
- collect (5)
- collect! (1)
-
collect
_ concat (2) - combination (2)
- ctime (1)
- cycle (3)
-
define
_ singleton _ method (2) - delete (2)
-
delete
_ at (1) -
delete
_ if (4) - denominator (5)
- detect (1)
- directory? (3)
- downcase (1)
- downto (2)
- drop (1)
-
drop
_ while (3) - dup (1)
- each (19)
-
each
_ byte (4) -
each
_ char (3) -
each
_ child (3) -
each
_ codepoint (4) -
each
_ cons (1) -
each
_ entry (1) -
each
_ grapheme _ cluster (2) -
each
_ index (1) -
each
_ key (2) -
each
_ line (7) -
each
_ object (2) -
each
_ pair (3) -
each
_ slice (1) -
each
_ value (2) -
each
_ with _ index (1) -
each
_ with _ object (1) - enclose (1)
- end (2)
- entries (2)
-
enum
_ for (4) -
exclude
_ end? (1) - feed (1)
- fetch (6)
- fileno (2)
- filter (6)
- filter! (3)
- find (1)
-
find
_ all (2) -
find
_ index (2) - first (5)
-
flat
_ map (2) - flatten (1)
- flatten! (1)
- flock (1)
- floor (1)
- force (1)
- foreach (3)
- format (1)
- gm (2)
- gmtoff (1)
-
grapheme
_ clusters (2) - grep (1)
-
grep
_ v (1) -
group
_ by (1) - gsub (2)
- gsub! (1)
-
handle
_ interrupt (1) -
has
_ key? (1) -
has
_ value? (1) - hash (1)
- hex (1)
- id2name (1)
- include? (1)
- index (2)
- insert (1)
-
insert
_ output (1) - inspect (20)
-
instance
_ methods (1) - intern (2)
- iterator? (1)
- join (2)
-
keep
_ if (3) - key (1)
- key? (1)
- keys (1)
- lambda (2)
- lambda? (1)
- last (5)
- lazy (2)
- lchmod (1)
- length (2)
- lines (8)
-
load
_ from _ binary (1) -
load
_ from _ binary _ extra _ data (1) - local (2)
- loop (1)
- map (5)
- map! (1)
- match (3)
-
max
_ by (4) - member? (1)
- merge (2)
- merge! (2)
-
method
_ missing (1) -
min
_ by (2) -
minmax
_ by (1) - mktime (2)
- name (2)
- new (16)
- next (2)
-
next
_ float (1) -
next
_ values (1) - nsec (1)
- numerator (5)
- oct (1)
- owner (1)
- pack (2)
- partition (1)
- path (3)
- peek (1)
-
peek
_ values (1) - permutation (2)
- pop (1)
- prepended (1)
-
prev
_ float (1) -
primitive
_ errinfo (1) - print (1)
-
private
_ instance _ methods (1) - proc (2)
-
protected
_ instance _ methods (1) -
public
_ instance _ methods (1) -
public
_ method (1) - putback (2)
- putc (1)
- puts (1)
- rand (5)
- rationalize (2)
- readlines (3)
- reject (6)
- reject! (4)
- rename (1)
-
repeated
_ combination (2) -
repeated
_ permutation (2) - replace (3)
-
respond
_ to? (1) -
respond
_ to _ missing? (1) - restore (1)
- result (1)
-
reverse
_ each (2) - rewind (2)
- rindex (1)
- rotate (1)
- rotate! (1)
- round (1)
- sample (4)
- select (6)
- select! (3)
-
set
_ backtrace (1) -
set
_ trace _ func (2) - shift (1)
-
singleton
_ class (1) -
singleton
_ class? (1) -
singleton
_ method (1) -
singleton
_ method _ added (1) -
singleton
_ method _ removed (1) -
singleton
_ method _ undefined (1) -
singleton
_ methods (1) - size (5)
- slice (5)
-
slice
_ after (4) -
slice
_ before (5) -
slice
_ when (2) - sort (2)
- sort! (2)
-
sort
_ by (1) -
sort
_ by! (1) -
source
_ location (1) - spawn (4)
- sprintf (1)
- srand (2)
- step (12)
- stop (1)
- stop? (1)
- stopped? (1)
- stopsig (1)
- store (2)
- subsec (1)
- succ (1)
- swapcase (1)
- syswrite (1)
- take (1)
-
take
_ while (4) - tap (1)
- then (2)
- times (1)
-
to
_ a (10) -
to
_ ary (2) -
to
_ binary (1) -
to
_ c (4) -
to
_ enum (4) -
to
_ f (5) -
to
_ h (7) -
to
_ hash (3) -
to
_ i (10) -
to
_ int (3) -
to
_ io (2) -
to
_ path (1) -
to
_ proc (3) -
to
_ r (4) -
to
_ regexp (1) -
to
_ s (27) -
to
_ str (1) -
to
_ sym (2) -
to
_ tty? (1) -
to
_ write _ io (1) -
total
_ time (1) -
transform
_ keys (2) -
transform
_ keys! (2) -
transform
_ values (2) -
transform
_ values! (2) - truncate (2)
-
try
_ convert (5) -
tv
_ nsec (1) -
tv
_ sec (1) -
tv
_ usec (1) - uniq (3)
- uniq! (2)
- unpack (1)
- upcase (1)
- update (2)
- upto (3)
- usec (1)
- utc (2)
- value? (1)
- values (2)
-
values
_ at (3) - warn (1)
-
with
_ index (2) -
with
_ object (2) - write (2)
- yield (1)
-
yield
_ self (2) - zip (5)
- | (1)
検索結果
先頭5件
-
Array
# -(other) -> Array (54661.0) -
自身から other の要素を取り除いた配列を生成して返します。
自身から other の要素を取り除いた配列を生成して返します。
要素の同一性は Object#eql? により評価されます。
self 中で重複していて、other中に存在していなかった要素は、その重複が保持されます。
@param other 自身から取り除きたい要素の配列を指定します。
配列以外のオブジェクトを指定した場合は to_ary メソッドによ
る暗黙の型変換を試みます。
@raise TypeError 引数に配列以外の(暗黙の型変換が行えない)オブジェクトを
指定した場合に発生します... -
Enumerator
:: Lazy # to _ enum(method = :each , *args) -> Enumerator :: Lazy (46633.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 (46633.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) ... -
Object
# singleton _ methods(inherited _ too = true) -> [Symbol] (46525.0) -
そのオブジェクトに対して定義されている特異メソッド名 (public あるいは protected メソッド) の一覧を返します。
そのオブジェクトに対して定義されている特異メソッド名
(public あるいは protected メソッド) の一覧を返します。
inherited_too が真のときは継承した特異メソッドを含みます。
継承した特異メソッドとは Object#extend によって追加された特異メソッドや、
self がクラスの場合はスーパークラスのクラスメソッド(Classのインスタンスの特異メソッド)などです。
singleton_methods(false) は、Object#methods(false) と同じです。
@param inherited_too 継承した特異メソッドを含める場合は... -
Object
# singleton _ method(name) -> Method (46507.0) -
オブジェクトの特異メソッド name をオブジェクト化した Method オブ ジェクトを返します。
オブジェクトの特異メソッド name をオブジェクト化した Method オブ
ジェクトを返します。
@param name メソッド名をSymbol またはStringで指定します。
@raise NameError 定義されていないメソッド名を引数として与えると発生します。
//emlist[][ruby]{
class Demo
def initialize(n)
@iv = n
end
def hello()
"Hello, @iv = #{@iv}"
end
end
k = Demo.new(99)
def k.hi
"Hi, @iv = ... -
BasicObject
# singleton _ method _ added(name) -> object (46207.0) -
特異メソッドが追加された時にインタプリタから呼び出されます。
特異メソッドが追加された時にインタプリタから呼び出されます。
通常のメソッドの追加に対するフックには
Module#method_addedを使います。
@param name 追加されたメソッド名が Symbol で渡されます。
//emlist[例][ruby]{
class Foo
def singleton_method_added(name)
puts "singleton method \"#{name}\" was added"
end
end
obj = Foo.new
def obj.foo
end
#=> singleton method "fo... -
BasicObject
# singleton _ method _ removed(name) -> object (46207.0) -
特異メソッドが Module#remove_method に より削除された時にインタプリタから呼び出されます。
特異メソッドが Module#remove_method に
より削除された時にインタプリタから呼び出されます。
通常のメソッドの削除に対するフックには
Module#method_removedを使います。
@param name 削除されたメソッド名が Symbol で渡されます。
//emlist[例][ruby]{
class Foo
def singleton_method_removed(name)
puts "singleton method \"#{name}\" was removed"
end
end
obj = Foo.new
def obj.f... -
BasicObject
# singleton _ method _ undefined(name) -> object (46207.0) -
特異メソッドが Module#undef_method または undef により未定義にされた時にインタプリタから呼び出されます。
特異メソッドが Module#undef_method または
undef により未定義にされた時にインタプリタから呼び出されます。
通常のメソッドの未定義に対するフックには
Module#method_undefined を使います。
@param name 未定義にされたメソッド名が Symbol で渡されます。
//emlist[例][ruby]{
class Foo
def singleton_method_undefined(name)
puts "singleton method \"#{name}\" was undefined"
end
end
obj... -
Numeric
# numerator -> Integer (46207.0) -
自身を Rational に変換した時の分子を返します。
自身を Rational に変換した時の分子を返します。
@return 分子を返します。
@see Numeric#denominator、Integer#numerator、Float#numerator、Rational#numerator、Complex#numerator -
Enumerator
:: ArithmeticSequence # end -> Numeric | nil (45607.0) -
末項(終端)を返します。
末項(終端)を返します。
@see Enumerator::ArithmeticSequence#begin -
Enumerator
:: ArithmeticSequence # exclude _ end? -> bool (45607.0) -
末項(終端)を含まないとき真を返します。
末項(終端)を含まないとき真を返します。 -
Enumerator
:: Lazy # enum _ for(method = :each , *args) -> Enumerator :: Lazy (37333.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 (37333.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) ... -
Rational
# numerator -> Integer (37261.0) -
分子を返します。
分子を返します。
@return 分子を返します。
//emlist[例][ruby]{
Rational(7).numerator # => 7
Rational(7, 1).numerator # => 7
Rational(9, -4).numerator # => -9
Rational(-2, -10).numerator # => 1
//}
@see Rational#denominator -
Integer
# numerator -> Integer (37243.0) -
分子(常に自身)を返します。
分子(常に自身)を返します。
@return 分子を返します。
//emlist[][ruby]{
10.numerator # => 10
-10.numerator # => -10
//}
@see Integer#denominator -
Object
# to _ regexp -> Regexp (37228.0) -
オブジェクトの Regexp への暗黙の変換が必要なときに内部で呼ばれます。 デフォルトでは定義されていません。
オブジェクトの Regexp への暗黙の変換が必要なときに内部で呼ばれます。
デフォルトでは定義されていません。
説明のためここに記載してありますが、
このメソッドは実際には Object クラスには定義されていません。
必要に応じてサブクラスで定義すべきものです。
このメソッドを定義する条件は、
* 正規表現が使われるすべての場面で代置可能であるような、
* 正規表現そのものとみなせるようなもの
という厳しいものになっています。
//emlist[][ruby]{
class Foo
def to_regexp
/[\d]+/
end
end
it = Foo.... -
Float
# numerator -> Integer (37207.0) -
自身を Rational に変換した時の分子を返します。
自身を Rational に変換した時の分子を返します。
@return 分子を返します。
//emlist[例][ruby]{
2.0.numerator # => 2
0.5.numerator # => 1
//}
@see Float#denominator -
Object
# respond _ to _ missing?(symbol , include _ private) -> bool (37090.0) -
自身が symbol で表されるメソッドに対し BasicObject#method_missing で反応するつもりならば真を返します。
自身が symbol で表されるメソッドに対し
BasicObject#method_missing で反応するつもりならば真を返します。
Object#respond_to? はメソッドが定義されていない場合、
デフォルトでこのメソッドを呼びだし問合せます。
BasicObject#method_missing を override した場合にこのメソッドも
override されるべきです。
false を返します。
@param symbol メソッド名シンボル
@param include_private private method も含めたい場合に true が渡されます... -
Object
# respond _ to?(name , include _ all = false) -> bool (37018.0) -
オブジェクトがメソッド name を持つとき真を返します。
オブジェクトがメソッド name を持つとき真を返します。
オブジェクトが メソッド name を持つというのは、
オブジェクトが メソッド name に応答できることをいいます。
Windows での Process.fork や GNU/Linux での File.lchmod の
ような NotImplementedError が発生する場合は false を返します。
※ NotImplementedError が発生する場合に false を返すのは
Rubyの組み込みライブラリや標準ライブラリなど、C言語で実装されているメソッドのみです。
Rubyで実装されたメソッドで N... -
File
:: ALT _ SEPARATOR -> "\\" | nil (36955.0) -
システムのファイルパスのセパレータが SEPARATOR と異なる場合 に設定されます。MS-DOS などでは "\\" です。UNIX や Cygwin などでは nil です。
システムのファイルパスのセパレータが SEPARATOR と異なる場合
に設定されます。MS-DOS などでは "\\" です。UNIX や Cygwin などでは nil です。 -
File
:: PATH _ SEPARATOR -> ";" | ":" (36955.0) -
PATH 環境変数の要素のセパレータです。UNIX では ":" MS-DOS な どでは ";" です。
PATH 環境変数の要素のセパレータです。UNIX では ":" MS-DOS な
どでは ";" です。 -
IO
# autoclose? -> bool (36955.0) -
auto-close フラグを返します。
auto-close フラグを返します。
//emlist[例][ruby]{
IO.open(IO.sysopen("testfile")) do |io|
io.autoclose? # => true
io.autoclose = false
io.autoclose? # => false
end
//}
@see IO#autoclose= -
Complex
# denominator -> Integer (36943.0) -
分母を返します。
分母を返します。
以下のように、実部と虚部の分母の最小公倍数を整数で返します。
1 2 3+4i <- numerator(分子)
- + -i -> ----
2 3 6 <- denominator(分母)
//emlist[例][ruby]{
Complex('1/2+2/3i').denominator # => 6
Complex(3).numerator # => 1
//}
@see Complex#numerator -
Rational
# denominator -> Integer (36943.0) -
分母を返します。常に正の整数を返します。
分母を返します。常に正の整数を返します。
@return 分母を返します。
//emlist[例][ruby]{
Rational(7).denominator # => 1
Rational(7, 1).denominator # => 1
Rational(9, -4).denominator # => 4
Rational(-2, -10).denominator # => 5
//}
@see Rational#numerator -
Integer
# denominator -> Integer (36925.0) -
分母(常に1)を返します。
分母(常に1)を返します。
@return 分母を返します。
//emlist[][ruby]{
10.denominator # => 1
-10.denominator # => 1
//}
@see Integer#numerator -
Object
# define _ singleton _ method(symbol) { . . . } -> Symbol (36925.0) -
self に特異メソッド name を定義します。
self に特異メソッド name を定義します。
@param symbol メソッド名を String または Symbol で指定します。
@param method Proc、Method あるいは UnboundMethod の
いずれかのインスタンスを指定します。
@return メソッド名を表す Symbol を返します。
//emlist[][ruby]{
class A
class << self
def class_name
to_s
end
end
end
A.define_singleton_me... -
Object
# define _ singleton _ method(symbol , method) -> Symbol (36925.0) -
self に特異メソッド name を定義します。
self に特異メソッド name を定義します。
@param symbol メソッド名を String または Symbol で指定します。
@param method Proc、Method あるいは UnboundMethod の
いずれかのインスタンスを指定します。
@return メソッド名を表す Symbol を返します。
//emlist[][ruby]{
class A
class << self
def class_name
to_s
end
end
end
A.define_singleton_me... -
Object
# singleton _ class -> Class (36925.0) -
レシーバの特異クラスを返します。 まだ特異クラスがなければ、新しく作成します。
レシーバの特異クラスを返します。
まだ特異クラスがなければ、新しく作成します。
レシーバが nil か true か false なら、それぞれ NilClass, TrueClass,
FalseClass を返します。
@raise TypeError レシーバが Integer、Float、Symbol の場合に発生します。
//emlist[][ruby]{
Object.new.singleton_class #=> #<Class:#<Object:0xb7ce1e24>>
String.singleton_class #=> #<Class:String>
n... -
ARGF
. class # to _ write _ io -> IO (36910.0) -
処理対象のファイルへの書き出し用 IO オブジェクトを返します。
処理対象のファイルへの書き出し用 IO オブジェクトを返します。
c:ARGF#inplace時以外は読み込み用の IO オブジェクトを返します。
このため ARGF.class#write などの書き出し用メソッドを呼ぶと IOError が発生します。 -
Complex
# numerator -> Complex (36907.0) -
分子を返します。
分子を返します。
//emlist[例][ruby]{
Complex('1/2+2/3i').numerator # => (3+4i)
Complex(3).numerator # => (3+0i)
//}
@see Complex#denominator -
Enumerator
:: Lazy # slice _ when {|elt _ before , elt _ after| bool } -> Enumerator :: Lazy (36907.0) -
Enumerable#slice_when と同じですが、配列ではなく Enumerator::Lazy を返します。
Enumerable#slice_when と同じですが、配列ではなく Enumerator::Lazy を返します。
//emlist[例][ruby]{
1.step.lazy.slice_when { |i, j| (i + j) % 5 == 0 }
# => #<Enumerator::Lazy: #<Enumerator: #<Enumerator::Generator:0x00007fce84118348>:each>>
1.step.lazy.slice_when { |i, j| (i + j) % 5 == 0 }.take(5).force
# => [[1, 2]... -
File
. directory?(path) -> bool (36907.0) -
FileTest.#directory? と同じです。
FileTest.#directory? と同じです。
@param path パスを表す文字列か IO オブジェクトを指定します。 -
File
:: SEPARATOR -> " / " (36907.0) -
ファイルパスのセパレータです。ファイルを扱うメソッドにパス名を渡す 場合などスクリプト内のパス名は環境によらずこのセパレータで統一され ます。値は "/" です。
ファイルパスのセパレータです。ファイルを扱うメソッドにパス名を渡す
場合などスクリプト内のパス名は環境によらずこのセパレータで統一され
ます。値は "/" です。 -
File
:: Separator -> " / " (36907.0) -
ファイルパスのセパレータです。ファイルを扱うメソッドにパス名を渡す 場合などスクリプト内のパス名は環境によらずこのセパレータで統一され ます。値は "/" です。
ファイルパスのセパレータです。ファイルを扱うメソッドにパス名を渡す
場合などスクリプト内のパス名は環境によらずこのセパレータで統一され
ます。値は "/" です。 -
File
:: Stat # directory? -> bool (36907.0) -
ディレクトリの時に真を返します。
ディレクトリの時に真を返します。
//emlist[][ruby]{
p File::Stat.new($0).directory? #=> false
//}
@see FileTest.#directory? -
FileTest
. # directory?(file) -> bool (36907.0) -
ファイルがディレクトリの時に真を返します。そうでない場合、ファイルが存在しない場合、あるいはシステムコールに失敗した場合などには false を返します。
ファイルがディレクトリの時に真を返します。そうでない場合、ファイルが存在しない場合、あるいはシステムコールに失敗した場合などには false を返します。
@param file ファイル名を表す文字列か IO オブジェクトを指定します。
@raise IOError 指定された IO オブジェクト file が既に close されていた場合に発生します。
例:
FileTest.directory?('/etc') # => true
FileTest.directory?('/etc/passwd') # => false
f = File.open('/etc')... -
Float
# denominator -> Integer (36907.0) -
自身を Rational に変換した時の分母を返します。
自身を Rational に変換した時の分母を返します。
@return 分母を返します。
//emlist[例][ruby]{
2.0.denominator # => 1
0.5.denominator # => 2
//}
@see Float#numerator -
GC
:: Profiler . total _ time -> Float (36907.0) -
GC のプロファイル情報から GC の総計時間を計算し、msec 単位で返します。
GC のプロファイル情報から GC の総計時間を計算し、msec 単位で返します。
//emlist[例][ruby]{
GC::Profiler.enable
GC.start
GC::Profiler.total_time # => 0.0011530000000000012
//} -
Module
# ancestors -> [Class , Module] (36907.0) -
クラス、モジュールのスーパークラスとインクルードしているモジュール を優先順位順に配列に格納して返します。
クラス、モジュールのスーパークラスとインクルードしているモジュール
を優先順位順に配列に格納して返します。
//emlist[例][ruby]{
module Foo
end
class Bar
include Foo
end
class Baz < Bar
p ancestors
p included_modules
p superclass
end
# => [Baz, Bar, Foo, Object, Kernel, BasicObject]
# => [Foo, Kernel]
# => Bar
//}
@see Module#included_modules
... -
Module
# singleton _ class? -> bool (36907.0) -
self が特異クラスの場合に true を返します。そうでなければ false を返し ます。
self が特異クラスの場合に true を返します。そうでなければ false を返し
ます。
//emlist[例][ruby]{
class C
end
C.singleton_class? # => false
C.singleton_class.singleton_class? # => true
//} -
Numeric
# denominator -> Integer (36907.0) -
自身を Rational に変換した時の分母を返します。
自身を Rational に変換した時の分母を返します。
@return 分母を返します。
@see Numeric#numerator、Integer#denominator、Float#denominator、Rational#denominator、Complex#denominator -
Object
:: TOPLEVEL _ BINDING -> Binding (36907.0) -
トップレベルでの Binding オブジェクト。
トップレベルでの Binding オブジェクト。
詳細は Binding を参照してください。 -
Process
:: CLOCK _ MONOTONIC _ COARSE -> Integer (36907.0) -
Process.#clock_gettime で使われます。
Process.#clock_gettime で使われます。
システムによっては定義されていません。 -
Process
:: CLOCK _ MONOTONIC _ PRECISE -> Integer (36907.0) -
Process.#clock_gettime で使われます。
Process.#clock_gettime で使われます。
システムによっては定義されていません。 -
Process
:: Status # stopped? -> bool (36907.0) -
プロセスが現在停止(終了ではない)している場合に真を返します。 Process.#waitpid に Process::WUNTRACED フラグを設定した 場合にだけ真になりえます。
プロセスが現在停止(終了ではない)している場合に真を返します。
Process.#waitpid に Process::WUNTRACED フラグを設定した
場合にだけ真になりえます。 -
IO
# autoclose=(bool) (36655.0) -
auto-close フラグを設定します。
auto-close フラグを設定します。
フラグが設定されているオブジェクトは
close時/GCでのファイナライザ呼出時にファイルデスクリプタを close します。
偽を設定すると close しません。
@param bool 真偽値でフラグを設定します
@see IO#autoclose?
f = open("/dev/null")
IO.for_fd(f.fileno)
# ...
f.gets # may cause Errno::EBADF
f = open("/dev/null")
IO.for_fd(f.fileno).auto... -
Enumerator
:: ArithmeticSequence # begin -> Numeric (36607.0) -
初項 (始端) を返します。
初項 (始端) を返します。
@see Enumerator::ArithmeticSequence#end -
Enumerator
:: ArithmeticSequence # each -> self (36607.0) -
各要素に対してブロックを評価します。
各要素に対してブロックを評価します。
@return self を返します。 -
Enumerator
:: ArithmeticSequence # each {|n| . . . } -> self (36607.0) -
各要素に対してブロックを評価します。
各要素に対してブロックを評価します。
@return self を返します。 -
Enumerator
:: ArithmeticSequence # inspect -> String (36607.0) -
自身を人間が読みやすい形の文字列表現にして返します。
自身を人間が読みやすい形の文字列表現にして返します。 -
Enumerator
:: ArithmeticSequence # size -> Integer | nil (36607.0) -
有限なら要素数を返します。 そうでなければ nil を返します。
有限なら要素数を返します。
そうでなければ nil を返します。
@return 要素数または nil を返します。 -
Enumerator
:: ArithmeticSequence # step -> Numeric (36607.0) -
公差 (各ステップの大きさ) を返します。
公差 (各ステップの大きさ) を返します。 -
Encoding
:: ConverterNotFoundError (36043.0) -
指定した名前のエンコーディング変換をする変換器が 存在しない場合に発生する例外。
指定した名前のエンコーディング変換をする変換器が
存在しない場合に発生する例外。
//emlist[例][ruby]{
"あ".encode("Foo")
#=> Encoding::ConverterNotFoundError: code converter not found (UTF-8 to Foo)
//} -
Object
# to _ enum(method = :each , *args) -> Enumerator (28549.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 (28549.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
# yield _ self -> Enumerator (28243.0) -
self を引数としてブロックを評価し、ブロックの結果を返します。
self を引数としてブロックを評価し、ブロックの結果を返します。
//emlist[例][ruby]{
3.next.then {|x| x**x }.to_s # => "256"
"my string".yield_self {|s| s.upcase } # => "MY STRING"
//}
値をメソッドチェインのパイプラインに次々と渡すのは良い使い方です。
//emlist[メソッドチェインのパイプライン][ruby]{
require 'open-uri'
require 'json'
construct_url(arguments).
... -
Numeric
# coerce(other) -> [Numeric] (28225.0) -
自身と other が同じクラスになるよう、自身か other を変換し [other, self] という配列にして返します。
自身と other が同じクラスになるよう、自身か other を変換し [other, self] という配列にして返します。
デフォルトでは self と other を Float に変換して [other, self] という配列にして返します。
Numeric のサブクラスは、このメソッドを適切に再定義しなければなりません。
以下は Rational の coerce のソースです。other が自身の知らない数値クラスであった場合、
super を呼んでいることに注意して下さい。
//emlist[例][ruby]{
# lib/rational.rb より
def co... -
Enumerator
:: Lazy # filter {|item| . . . } -> Enumerator :: Lazy (28207.0) -
Enumerable#select と同じですが、配列ではなくEnumerator::Lazy を返します。
Enumerable#select と同じですが、配列ではなくEnumerator::Lazy を返します。
@raise ArgumentError ブロックを指定しなかった場合に発生します。
//emlist[例][ruby]{
1.step.lazy.find_all { |i| i.even? }
# => #<Enumerator::Lazy: #<Enumerator::Lazy: #<Enumerator: 1:step>>:find_all>
1.step.lazy.select { |i| i.even? }.take(10).force
# => [2, 4, 6,... -
Integer
# downto(min) -> Enumerator (28207.0) -
self から min まで 1 ずつ減らしながらブロックを繰り返し実行します。 self < min であれば何もしません。
self から min まで 1 ずつ減らしながらブロックを繰り返し実行します。
self < min であれば何もしません。
@param min 数値
@return self を返します。
//emlist[][ruby]{
5.downto(1) {|i| print i, " " } # => 5 4 3 2 1
//}
@see Integer#upto, Numeric#step, Integer#times -
Integer
# upto(max) -> Enumerator (28207.0) -
self から max まで 1 ずつ増やしながら繰り返します。 self > max であれば何もしません。
self から max まで 1 ずつ増やしながら繰り返します。
self > max であれば何もしません。
@param max 数値
@return self を返します。
//emlist[][ruby]{
5.upto(10) {|i| print i, " " } # => 5 6 7 8 9 10
//}
@see Integer#downto, Numeric#step, Integer#times -
Module
# private _ instance _ methods(inherited _ too = true) -> [Symbol] (28207.0) -
そのモジュールで定義されている private メソッド名 の一覧を配列で返します。
そのモジュールで定義されている private メソッド名
の一覧を配列で返します。
@param inherited_too false を指定するとそのモジュールで定義されているメソッドのみ返します。
@see Object#private_methods, Module#instance_methods
//emlist[例][ruby]{
module Foo
def foo; end
private def bar; end
end
module Bar
include Foo
def baz; end
private def qux; end
end... -
Enumerable
# slice _ when {|elt _ before , elt _ after| bool } -> Enumerator (28123.0) -
要素を前から順にブロックで評価し、その結果によって要素をチャンクに分け た(グループ化した)要素を持つEnumerator を返します。
要素を前から順にブロックで評価し、その結果によって要素をチャンクに分け
た(グループ化した)要素を持つEnumerator を返します。
隣り合う値をブロックパラメータ elt_before、elt_after に渡し、ブロックの
評価値が真になる所でチャンクを区切ります。
ブロックは self の長さ - 1 回呼び出されます。
@return チャンクごとの配列をブロックパラメータに渡す Enumerator
を返します。eachメソッドは以下のように呼び出します。
//emlist{
enum.slice_when { |elt_before, elt_aft... -
Enumerator
# each(*args) -> Enumerator (28033.0) -
生成時のパラメータに従ってブロックを繰り返します。 *args を渡した場合は、生成時のパラメータ内引数末尾へ *args を追加した状態で繰り返します。 ブロック付きで呼び出された場合は、 生成時に指定したイテレータの戻り値をそのまま返します。
生成時のパラメータに従ってブロックを繰り返します。
*args を渡した場合は、生成時のパラメータ内引数末尾へ *args を追加した状態で繰り返します。
ブロック付きで呼び出された場合は、
生成時に指定したイテレータの戻り値をそのまま返します。
@param args 末尾へ追加する引数
//emlist[例1][ruby]{
str = "Yet Another Ruby Hacker"
enum = Enumerator.new {|y| str.scan(/\w+/) {|w| y << w }}
enum.each {|word| p word } ... -
Kernel
. # Integer(arg , base = 0 , exception: true) -> Integer | nil (28033.0) -
引数を整数 (Fixnum,Bignum) に変換した結果を返します。
引数を整数
(Fixnum,Bignum)
に変換した結果を返します。
引数が数値の場合は直接変換し(小数点以下切り落とし)、
文字列の場合は、進数を表す接頭辞を含む整数表現とみなせる文字列のみ
変換します。
数値と文字列以外のオブジェクトに対しては arg.to_int, arg.to_i を
この順に使用して変換します。
@param arg 変換対象のオブジェクトです。
@param base 基数として0か2から36の整数を指定します(引数argに文字列を指
定した場合のみ)。省略するか0を指定した場合はプリフィクスか
ら基数を... -
Numeric
# to _ c -> Complex (28000.0) -
自身を複素数 (Complex) に変換します。Complex(self, 0) を返します。
自身を複素数 (Complex) に変換します。Complex(self, 0) を返します。
//emlist[例][ruby]{
1.to_c # => (1+0i)
-1.to_c # => (-1+0i)
1.0.to_c # => (1.0+0i)
Rational(1, 2).to_c # => ((1/2)+0i)
//}
Numeric のサブクラスは、このメソッドを適切に再定義しなければなりません。 -
RubyVM
:: InstructionSequence # to _ binary(extra _ data = nil) -> String (28000.0) -
バイナリフォーマットでシリアライズされたiseqのデータを文字列として返します。 RubyVM::InstructionSequence.load_from_binary メソッドでバイナリデータに対応するiseqオブジェクトを作れます。
バイナリフォーマットでシリアライズされたiseqのデータを文字列として返します。
RubyVM::InstructionSequence.load_from_binary メソッドでバイナリデータに対応するiseqオブジェクトを作れます。
引数の extra_data はバイナリデータと共に保存されます。
RubyVM::InstructionSequence.load_from_binary_extra_data メソッドでこの文字列にアクセス出来ます。
注意: 変換後のバイナリデータはポータブルではありません。 to_binary で得たバイナリデータは他のマシンに移動できません。他... -
Enumerator
:: Lazy # slice _ after {|elt| bool } -> Enumerator :: Lazy (27997.0) -
Enumerable#slice_after と同じですが、配列ではなく Enumerator::Lazy を返します。
Enumerable#slice_after と同じですが、配列ではなく Enumerator::Lazy を返します。
//emlist[例][ruby]{
1.step.lazy.slice_after { |e| e % 3 == 0 }
# => #<Enumerator::Lazy: #<Enumerator: #<Enumerator::Generator:0x007fd73980e6f8>:each>>
1.step.lazy.slice_after { |e| e % 3 == 0 }.take(5).force
# => [[1, 2, 3], [4, 5, 6], [... -
Enumerator
:: Lazy # slice _ after(pattern) -> Enumerator :: Lazy (27997.0) -
Enumerable#slice_after と同じですが、配列ではなく Enumerator::Lazy を返します。
Enumerable#slice_after と同じですが、配列ではなく Enumerator::Lazy を返します。
//emlist[例][ruby]{
1.step.lazy.slice_after { |e| e % 3 == 0 }
# => #<Enumerator::Lazy: #<Enumerator: #<Enumerator::Generator:0x007fd73980e6f8>:each>>
1.step.lazy.slice_after { |e| e % 3 == 0 }.take(5).force
# => [[1, 2, 3], [4, 5, 6], [... -
Numeric
# to _ int -> Integer (27994.0) -
self.to_i と同じです。
self.to_i と同じです。
//emlist[例][ruby]{
(2+0i).to_int # => 2
Rational(3).to_int # => 3
//} -
Time
# to _ i -> Integer (27982.0) -
起算時からの経過秒数を整数で返します。
起算時からの経過秒数を整数で返します。
//emlist[][ruby]{
t = Time.local(2000,1,2,3,4,5,6)
p t # => 2000-01-02 03:04:05 +0900
p "%10.6f" % t.to_f # => "946749845.000006"
p t.to_i # => 946749845
p t.tv_sec # => 946749845
//} -
Enumerator
# with _ object(obj) -> Enumerator (27979.0) -
繰り返しの各要素に obj を添えてブロックを繰り返し、obj を返り値として返します。
繰り返しの各要素に obj を添えてブロックを繰り返し、obj を返り値として返します。
obj には任意のオブジェクトを渡すことができます。
ブロックが渡されなかった場合は、上で説明した繰り返しを実行し、
最後に obj を返す Enumerator を返します。
//emlist[例][ruby]{
# 0,1,2 と呼びだす enumeratorを作る
to_three = Enumerator.new do |y|
3.times do |x|
y << x
end
end
to_three_with_string = to_three.with_object... -
Enumerator
# with _ object(obj) {|(*args) , memo _ obj| . . . } -> object (27979.0) -
繰り返しの各要素に obj を添えてブロックを繰り返し、obj を返り値として返します。
繰り返しの各要素に obj を添えてブロックを繰り返し、obj を返り値として返します。
obj には任意のオブジェクトを渡すことができます。
ブロックが渡されなかった場合は、上で説明した繰り返しを実行し、
最後に obj を返す Enumerator を返します。
//emlist[例][ruby]{
# 0,1,2 と呼びだす enumeratorを作る
to_three = Enumerator.new do |y|
3.times do |x|
y << x
end
end
to_three_with_string = to_three.with_object... -
Enumerator
:: Chain . new(*enums) -> Enumerator :: Chain (27979.0) -
複数の Enumerable から、1つの新しい Enumerator を作って返します。
複数の Enumerable から、1つの新しい Enumerator を作って返します。
//emlist[例][ruby]{
e = Enumerator::Chain.new(1..3, [4, 5])
e.to_a #=> [1, 2, 3, 4, 5]
e.size #=> 5
//} -
Enumerator
:: Lazy # slice _ before {|elt| bool } -> Enumerator :: Lazy (27979.0) -
Enumerable#slice_before と同じですが、配列ではなく Enumerator::Lazy を返します。
Enumerable#slice_before と同じですが、配列ではなく Enumerator::Lazy を返します。
//emlist[例][ruby]{
1.step.lazy.slice_before { |e| e.even? }
# => #<Enumerator::Lazy: #<Enumerator: #<Enumerator::Generator:0x00007f9f31844ce8>:each>>
1.step.lazy.slice_before { |e| e % 3 == 0 }.take(5).force
# => [[1, 2], [3, 4, 5], [6... -
Enumerator
:: Lazy # slice _ before(initial _ state) {|elt , state| bool } -> Enumerator :: Lazy (27979.0) -
Enumerable#slice_before と同じですが、配列ではなく Enumerator::Lazy を返します。
Enumerable#slice_before と同じですが、配列ではなく Enumerator::Lazy を返します。
//emlist[例][ruby]{
1.step.lazy.slice_before { |e| e.even? }
# => #<Enumerator::Lazy: #<Enumerator: #<Enumerator::Generator:0x00007f9f31844ce8>:each>>
1.step.lazy.slice_before { |e| e % 3 == 0 }.take(5).force
# => [[1, 2], [3, 4, 5], [6... -
Enumerator
:: Lazy # slice _ before(pattern) -> Enumerator :: Lazy (27979.0) -
Enumerable#slice_before と同じですが、配列ではなく Enumerator::Lazy を返します。
Enumerable#slice_before と同じですが、配列ではなく Enumerator::Lazy を返します。
//emlist[例][ruby]{
1.step.lazy.slice_before { |e| e.even? }
# => #<Enumerator::Lazy: #<Enumerator: #<Enumerator::Generator:0x00007f9f31844ce8>:each>>
1.step.lazy.slice_before { |e| e % 3 == 0 }.take(5).force
# => [[1, 2], [3, 4, 5], [6... -
Enumerator
:: Lazy # take _ while -> Enumerator :: Lazy (27979.0) -
Enumerable#take_while と同じですが、配列ではなくEnumerator::Lazy を返します。
Enumerable#take_while と同じですが、配列ではなくEnumerator::Lazy を返します。
//emlist[例][ruby]{
1.step.lazy.zip(('a'..'z').cycle).take_while { |e| e.first < 100_000 }
# => #<Enumerator::Lazy: #<Enumerator::Lazy: #<Enumerator::Lazy: #<Enumerator: 1:step>>:zip(#<Enumerator: "a".."z":cycle>)>:take_while>
1.step.lazy.... -
Enumerator
:: Lazy # take _ while {|item| . . . } -> Enumerator :: Lazy (27979.0) -
Enumerable#take_while と同じですが、配列ではなくEnumerator::Lazy を返します。
Enumerable#take_while と同じですが、配列ではなくEnumerator::Lazy を返します。
//emlist[例][ruby]{
1.step.lazy.zip(('a'..'z').cycle).take_while { |e| e.first < 100_000 }
# => #<Enumerator::Lazy: #<Enumerator::Lazy: #<Enumerator::Lazy: #<Enumerator: 1:step>>:zip(#<Enumerator: "a".."z":cycle>)>:take_while>
1.step.lazy.... -
Complex
# to _ i -> Integer (27964.0) -
自身を整数に変換します。
自身を整数に変換します。
@raise RangeError 虚部が実数か、0 ではない場合に発生します。
//emlist[例][ruby]{
Complex(3).to_i # => 3
Complex(3.5).to_i # => 3
Complex(3, 2).to_i # => RangeError
//} -
Complex
# to _ c -> self (27946.0) -
self を返します。
self を返します。
//emlist[例][ruby]{
Complex(2).to_c # => (2+0i)
Complex(-8, 6).to_c # => (-8+6i)
//} -
Enumerable
# to _ a(*args) -> [object] (27946.0) -
全ての要素を含む配列を返します。
全ての要素を含む配列を返します。
@param args each の呼び出し時に引数として渡されます。
//emlist[例][ruby]{
(1..7).to_a #=> [1, 2, 3, 4, 5, 6, 7]
{ 'a'=>1, 'b'=>2, 'c'=>3 }.to_a #=> [["a", 1], ["b", 2], ["c", 3]]
require 'prime'
Prime.entries 10 #=> [2, 3, 5, 7]
//} -
ENV
. store(key , value) -> String (27943.0) -
key に対応する環境変数の値を value にします。 value が nil の時、key に対応する環境変数を取り除きます。
key に対応する環境変数の値を value にします。
value が nil の時、key に対応する環境変数を取り除きます。
@param key 環境変数名を指定します。文字列で指定します。文字列以外のオ
ブジェクトを指定した場合は to_str メソッドによる暗黙の型変
換を試みます。
@param value 置き換えるべき値を指定します。文字列で指定します。文字列以
外のオブジェクトを指定した場合は to_str メソッドによる暗黙
の型変換を試みます。
@retur... -
Enumerator
:: Lazy # grep(pattern) {|item| . . . } -> Enumerator :: Lazy (27943.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 (27943.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... -
Object
# yield _ self {|x| . . . } -> object (27943.0) -
self を引数としてブロックを評価し、ブロックの結果を返します。
self を引数としてブロックを評価し、ブロックの結果を返します。
//emlist[例][ruby]{
3.next.then {|x| x**x }.to_s # => "256"
"my string".yield_self {|s| s.upcase } # => "MY STRING"
//}
値をメソッドチェインのパイプラインに次々と渡すのは良い使い方です。
//emlist[メソッドチェインのパイプライン][ruby]{
require 'open-uri'
require 'json'
construct_url(arguments).
... -
ENV
. to _ h {|name , value| block } -> Hash (27931.0) -
環境変数の名前をキーとし、対応する値をもつハッシュを返します。
環境変数の名前をキーとし、対応する値をもつハッシュを返します。
ブロックを指定すると各ペアでブロックを呼び出し、
その結果をペアとして使います。
//emlist[ブロック付きの例][ruby]{
ENV.to_h {|name, value| [name, value.size] }
//} -
Integer
# to _ i -> self (27931.0) -
self を返します。
self を返します。
//emlist[][ruby]{
10.to_i # => 10
//} -
Integer
# to _ int -> self (27931.0) -
self を返します。
self を返します。
//emlist[][ruby]{
10.to_i # => 10
//} -
Object
# to _ int -> Integer (27928.0) -
オブジェクトの Integer への暗黙の変換が必要なときに内部で呼ばれます。 デフォルトでは定義されていません。
オブジェクトの Integer への暗黙の変換が必要なときに内部で呼ばれます。
デフォルトでは定義されていません。
説明のためここに記載してありますが、
このメソッドは実際には Object クラスには定義されていません。
必要に応じてサブクラスで定義すべきものです。
このメソッドを定義する条件は、
* 整数が使われるすべての場面で代置可能であるような、
* 整数そのものとみなせるようなもの
という厳しいものになっています。
//emlist[][ruby]{
class Foo
def to_int
1
end
end
ary = [:a, :b, :c]
p(... -
Enumerator
:: Lazy # collect _ concat {|item| . . . } -> Enumerator :: Lazy (27925.0) -
ブロックの実行結果をひとつに繋げたものに対してイテレートするような Enumerator::Lazy のインスタンスを返します。
ブロックの実行結果をひとつに繋げたものに対してイテレートするような
Enumerator::Lazy のインスタンスを返します。
//emlist[][ruby]{
["foo", "bar"].lazy.flat_map {|i| i.each_char.lazy}.force
#=> ["f", "o", "o", "b", "a", "r"]
//}
ブロックの返した値 x は、以下の場合にのみ分解され、連結されます。
* x が配列であるか、to_ary メソッドを持つとき
* x が each および force メソッドを持つ (例:Enumerator::Lazy) ... -
Process
:: Status # to _ i -> Integer (27910.0) -
C 言語での終了ステータス表現の整数を返します。
C 言語での終了ステータス表現の整数を返します。
多くのシステムの実装では、この値の上位 8 bit に exit(2)
に渡した終了ステータスが、下位 8 bit にシグナル等で終了した等の情
報が入っています。 -
Enumerable
# each _ entry -> Enumerator (27907.0) -
ブロックを各要素に一度ずつ適用します。
ブロックを各要素に一度ずつ適用します。
一要素として複数の値が渡された場合はブロックには配列として渡されます。
//emlist[例][ruby]{
class Foo
include Enumerable
def each
yield 1
yield 1,2
end
end
Foo.new.each_entry{|o| print o, " -- "}
# => 1 -- [1, 2] --
//}
ブロックを省略した場合は Enumerator が返されます。
@see Enumerable#slice_before -
Enumerator
# with _ index(offset = 0) -> Enumerator (27907.0) -
生成時のパラメータに従って、要素にインデックスを添えて繰り返します。 インデックスは offset から始まります。
生成時のパラメータに従って、要素にインデックスを添えて繰り返します。
インデックスは offset から始まります。
ブロックを指定した場合の戻り値は生成時に指定したレシーバ自身です。
//emlist[例][ruby]{
str = "xyz"
enum = Enumerator.new {|y| str.each_byte {|b| y << b }}
enum.with_index {|byte, idx| p [byte, idx] }
# => [120, 0]
# [121, 1]
# [122, 2]
require "stringi... -
Enumerator
. new(obj , method = :each , *args) -> Enumerator (27907.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... -
Enumerator
. new(size=nil) {|y| . . . } -> Enumerator (27907.0) -
Enumerator オブジェクトを生成して返します。与えられたブロックは Enumerator::Yielder オブジェクトを 引数として実行されます。
Enumerator オブジェクトを生成して返します。与えられたブロックは Enumerator::Yielder オブジェクトを
引数として実行されます。
生成された Enumerator オブジェクトに対して each を呼ぶと、この生成時に指定されたブロックを
実行し、Yielder オブジェクトに対して << メソッドが呼ばれるたびに、
each に渡されたブロックが繰り返されます。
new に渡されたブロックが終了した時点で each の繰り返しが終わります。
このときのブロックの返り値が each の返り値となります。
@param size 生成する Enumerator... -
Enumerator
:: Chain # each(*args) -> Enumerator (27907.0) -
まず最初の繰り返し可能なオブジェクトの each メソッドを args 引数とともに呼び出した後、続く繰り返し可能なオブジェクト も同様に呼び出します。
まず最初の繰り返し可能なオブジェクトの each メソッドを
args 引数とともに呼び出した後、続く繰り返し可能なオブジェクト
も同様に呼び出します。
ブロックが渡されない場合は Enumerator を返します。 -
Enumerator
:: Lazy # chunk _ while {|elt _ before , elt _ after| . . . } -> Enumerator :: Lazy (27907.0) -
Enumerable#chunk_while と同じですが、Enumerator ではなく Enumerator::Lazy を返します。
Enumerable#chunk_while と同じですが、Enumerator ではなく Enumerator::Lazy を返します。
@raise ArgumentError ブロックを指定しなかった場合に発生します。 -
Enumerator
:: Lazy # collect {|item| . . . } -> Enumerator :: Lazy (27907.0) -
Enumerable#map と同じですが、配列ではなくEnumerator::Lazy を返します。
Enumerable#map と同じですが、配列ではなくEnumerator::Lazy を返します。
@raise ArgumentError ブロックを指定しなかった場合に発生します。
//emlist[例][ruby]{
1.step.lazy.map{ |n| n % 3 == 0 }
# => #<Enumerator::Lazy: #<Enumerator::Lazy: #<Enumerator: 1:step>>:map>
1.step.lazy.collect{ |n| n.succ }.take(10).force
# => [2, 3, 4, 5, 6, 7, 8,... -
Enumerator
:: Lazy # drop _ while {|item| . . . } -> Enumerator :: Lazy (27907.0) -
Enumerable#drop_while と同じですが、配列ではなくEnumerator::Lazy を返します。
Enumerable#drop_while と同じですが、配列ではなくEnumerator::Lazy を返します。
//emlist[例][ruby]{
1.step.lazy.drop_while { |i| i < 42 }
# => #<Enumerator::Lazy: #<Enumerator::Lazy: #<Enumerator: 1:step>>:drop_while>
1.step.lazy.drop_while { |i| i < 42 }.take(10).force
# => [42, 43, 44, 45, 46, 47, 48, 49, 50, 51]
//... -
Enumerator
:: Lazy # reject {|item| . . . } -> Enumerator :: Lazy (27907.0) -
Enumerable#reject と同じですが、配列ではなくEnumerator::Lazy を返します。
Enumerable#reject と同じですが、配列ではなくEnumerator::Lazy を返します。
@raise ArgumentError ブロックを指定しなかった場合に発生します。
//emlist[例][ruby]{
1.step.lazy.reject { |i| i.even? }
# => #<Enumerator::Lazy: #<Enumerator::Lazy: #<Enumerator: 1:step>>:reject>
1.step.lazy.reject { |i| i.even? }.take(10).force
# => [1, 3, 5, 7, ...