種類
ライブラリ
- ビルトイン (221)
- csv (1)
- date (1)
- delegate (8)
- digest (1)
- drb (1)
- fiber (1)
- fiddle (2)
- gdbm (2)
-
irb
/ inspector (1) -
irb
/ magic-file (2) -
irb
/ output-method (3) -
irb
/ xmp (2) - json (15)
-
net
/ http (6) -
net
/ imap (3) -
net
/ pop (13) -
net
/ smtp (4) - objspace (8)
- open-uri (4)
- openssl (21)
- optparse (14)
- ostruct (4)
- pp (9)
- prettyprint (2)
- prime (2)
- psych (20)
- pty (2)
- rake (1)
-
rdoc
/ code _ object (2) -
rexml
/ document (2) -
ripper
/ sexp (2) - set (1)
-
shell
/ filter (1) - socket (16)
- stringio (3)
- tempfile (5)
- uri (2)
-
webrick
/ httpauth / authenticator (1) -
webrick
/ httpauth / basicauth (1) - win32ole (18)
- zlib (8)
クラス
-
ARGF
. class (3) - Addrinfo (6)
- Array (25)
- BasicObject (3)
- CSV (1)
- Date (1)
- Delegator (4)
-
Digest
:: Base (1) - Dir (6)
- Enumerator (3)
-
Enumerator
:: Yielder (2) - Fiber (3)
-
Fiddle
:: Pointer (1) - File (3)
- GDBM (2)
- Hash (7)
- IO (28)
-
IRB
:: Inspector (1) -
IRB
:: OutputMethod (3) -
JSON
:: Parser (2) -
JSON
:: State (1) - Method (3)
- Module (3)
- NameError (3)
-
Net
:: HTTP (4) -
Net
:: HTTPGenericRequest (2) -
Net
:: IMAP :: FetchData (1) -
Net
:: IMAP :: ResponseCode (1) -
Net
:: IMAP :: UntaggedResponse (1) -
Net
:: POP3 (4) -
Net
:: POPMail (9) -
Net
:: SMTP (4) - Object (56)
-
ObjectSpace
:: WeakMap (2) -
OpenSSL
:: ASN1 :: ASN1Data (1) -
OpenSSL
:: ASN1 :: ObjectId (8) -
OpenSSL
:: X509 :: Attribute (2) -
OpenSSL
:: X509 :: Name (6) - OpenStruct (4)
- OptionParser (12)
- PP (6)
- PrettyPrint (2)
-
Prime
:: PseudoPrimeGenerator (2) - Proc (3)
-
Psych
:: Nodes :: Node (2) -
Psych
:: ScalarScanner (1) -
Psych
:: Visitors :: YAMLTree (2) -
RDoc
:: CodeObject (2) -
REXML
:: Attribute (1) -
REXML
:: DocType (1) - Range (3)
- Regexp (2)
- Ripper (2)
- Set (1)
-
Shell
:: Filter (1) - SimpleDelegator (3)
- Socket (10)
- StopIteration (1)
- String (4)
- StringIO (3)
- Tempfile (5)
- TracePoint (1)
- UnboundMethod (1)
-
WEBrick
:: HTTPAuth :: BasicAuth (1) - WIN32OLE (4)
-
WIN32OLE
_ METHOD (3) -
WIN32OLE
_ TYPE (8) -
WIN32OLE
_ TYPELIB (1) -
WIN32OLE
_ VARIANT (1) - XMP (1)
-
Zlib
:: GzipReader (4) -
Zlib
:: GzipWriter (4)
モジュール
- Comparable (1)
- Enumerable (15)
- Fiddle (1)
-
GC
:: Profiler (1) - JSON (10)
- Kernel (33)
- Marshal (4)
- ObjectSpace (18)
-
OpenSSL
:: ASN1 (2) -
OptionParser
:: Arguable (2) - PTY (2)
- Psych (10)
-
Rake
:: Cloneable (1) - URI (4)
-
WEBrick
:: HTTPAuth :: Authenticator (1)
オブジェクト
-
IRB
:: MagicFile (2)
キーワード
- != (1)
- !~ (1)
-
$ > (1) -
$ stdin (1) -
$ stdout (1) - % (1)
-
1
. 6 . 8から1 . 8 . 0への変更点(まとめ) (1) - << (2)
- <=> (1)
- == (3)
- === (2)
- =~ (1)
- ARGF (1)
- ARGV (1)
- Array (1)
- DATA (1)
- DRbProtocol (1)
- ENV (1)
- Float (1)
- Integer (1)
- JSON (1)
- Marshal フォーマット (1)
- Method (1)
-
NEWS for Ruby 2
. 4 . 0 (1) -
NEWS for Ruby 2
. 5 . 0 (1) - ObjectId (3)
- ObjectSpace (1)
-
RUBY
_ PATCHLEVEL (1) - Rational (1)
- Ruby プログラムの実行 (1)
- Rubyで使われる記号の意味(正規表現の複雑な記号は除く) (1)
- SSLContext (1)
- SimpleDelegator (1)
- String (1)
-
TOPLEVEL
_ BINDING (1) -
WIN32OLE
_ TYPE (1) - WeakMap (1)
- [] (3)
- []= (2)
-
_ _ getobj _ _ (1) -
_ _ setobj _ _ (1) -
_ dump (1) -
_ getproperty (1) -
_ id2ref (1) -
_ invoke (1) - all (3)
- attr (1)
- begin (1)
- bind (2)
- binding (1)
-
body
_ stream (1) -
body
_ stream= (1) -
boot
_ defclass (1) - catch (2)
- clamp (1)
- clone (2)
-
compare
_ by _ identity (1) -
connect
_ from (2) -
connect
_ to (2) - context (1)
-
count
_ objects (1) -
count
_ objects _ size (1) -
count
_ tdata _ objects (1) - create (2)
- data (2)
- debug (1)
-
def
_ inspector (1) -
default
_ event _ sources (1) -
define
_ finalizer (2) -
delete
_ at (1) - detect (2)
- dig (1)
- display (1)
- dlunwrap (1)
-
drb
/ extservm (1) - dump (5)
-
dump
_ stream (1) - dup (3)
-
each
_ char (2) -
each
_ object (4) - eql? (2)
- equal? (1)
- eval (2)
- extend (1)
- extended (1)
-
fast
_ unparse (1) - fetch (3)
- file (1)
- fill (6)
- find (2)
- first (4)
-
for
_ fd (1) - format (2)
- freeze (1)
- frozen? (1)
-
garbage
_ collect (1) - generate (1)
- gets (1)
- grep (2)
-
grep
_ v (2) - guid (1)
- hash (1)
- helpcontext (1)
- helpfile (2)
- initialize (1)
-
initialize
_ copy (1) - inject (3)
- inspect (4)
-
instance
_ eval (2) -
instance
_ of? (1) -
instance
_ variable _ get (1) -
instance
_ variable _ set (1) -
instance
_ variables (1) - irb (1)
-
irb
/ completion (1) -
is
_ a? (1) - j (1)
- join (1)
-
kind
_ of? (1) - lambda (2)
- last (2)
- ln (1)
- load (4)
-
load
_ file (1) -
load
_ stream (2) - logger (2)
-
long
_ name (1) - mail (3)
- main (1)
-
marshal
_ dump (2) - match (2)
-
memsize
_ of (1) -
memsize
_ of _ all (1) - method (1)
- methods (1)
- name (1)
-
net
/ smtp (1) - new (24)
-
next
_ values (1) -
object
_ group (1) -
object
_ id (1) - oid (1)
-
ole
_ classes (1) -
ole
_ typelib (2) - on (12)
- open (28)
- parameters (3)
- parent (1)
- parent= (1)
- parse (4)
- parse! (1)
-
parse
_ openssl (1) -
parse
_ rfc2253 (1) - peek (1)
-
peek
_ values (1) - pipe (8)
- pop (5)
- popen (14)
- pp (4)
- ppx (1)
-
pretty
_ generate (1) -
pretty
_ print (1) -
pretty
_ print _ cycle (1) -
pretty
_ print _ inspect (1) -
pretty
_ unparse (1) -
private
_ methods (1) - proc (2)
- progid (1)
-
protected
_ methods (2) -
psych
_ to _ yaml (1) -
psych
_ y (1) -
public
_ instance _ method (1) -
public
_ method (1) -
public
_ methods (2) -
public
_ send (2) - push (1)
- putc (2)
- puts (1)
-
rb
_ data _ object _ alloc (1) -
rb
_ define _ class _ under (1) -
rb
_ obj _ dup (1) -
reachable
_ objects _ from (1) -
read
_ nonblock (1) - readline (1)
- receiver (1)
- reduce (3)
- register (1)
- rehash (1)
-
remove
_ instance _ variable (1) - replace (1)
-
respond
_ to? (2) - restore (2)
- result (2)
- resume (1)
-
ruby 1
. 6 feature (1) -
ruby 1
. 8 . 2 feature (1) -
ruby 1
. 8 . 3 feature (1) -
ruby 1
. 8 . 4 feature (1) -
ruby 1
. 9 feature (1) -
safe
_ load (2) - sample (4)
- self (1)
- send (2)
- set (1)
- sexp (1)
-
sexp
_ raw (1) -
sharing
_ detection (1) -
sharing
_ detection= (1) - shift (2)
-
short
_ name (1) -
singleline
_ format (1) -
singleline
_ pp (1) -
singleton
_ methods (1) - sn (1)
- sprintf (1)
- sprintf フォーマット (1)
- start (12)
- sum (2)
- taint (1)
- tainted? (1)
- tcp (2)
-
tcp
_ server _ sockets (4) -
to
_ a (1) -
to
_ ary (1) -
to
_ hash (1) -
to
_ int (1) -
to
_ proc (1) -
to
_ regexp (1) -
to
_ ruby (1) -
to
_ s (3) -
to
_ str (1) -
to
_ value (1) -
to
_ yaml (1) - tokenize (1)
-
trace
_ object _ allocations (1) -
trace
_ object _ allocations _ start (1) -
trace
_ object _ allocations _ stop (1) - transfer (1)
- transform (1)
-
udp
_ server _ sockets (4) -
undefine
_ finalizer (1) - unparse (1)
- untaint (1)
- value (1)
- variables (1)
-
with
_ object (2) - wrap (4)
- write (1)
-
write
_ nonblock (1) - xmp (1)
- y (1)
- yaml (1)
-
yaml
_ tag (1) - yield (2)
- zip (2)
- このマニュアルのヘルプ (1)
- クラス/メソッドの定義 (1)
- セキュリティモデル (1)
- メソッド呼び出し(super・ブロック付き・yield) (1)
- 変数と定数 (1)
検索結果
先頭5件
-
Object
# object _ id -> Integer (127405.0) -
各オブジェクトに対して一意な整数を返します。あるオブジェクトに対し てどのような整数が割り当てられるかは不定です。
各オブジェクトに対して一意な整数を返します。あるオブジェクトに対し
てどのような整数が割り当てられるかは不定です。
Rubyでは、(Garbage Collectされていない)アクティブなオブジェクト間で
重複しない整数(object_id)が各オブジェクトにひとつずつ割り当てられています。この
メソッドはその値を返します。
TrueClass, FalseClass, NilClass, Symbol, Integer クラス
のインスタンスなど Immutable(変更不可)なオブジェクトの一部は同じ内容ならば必ず同じ object_id になります。
これは、Immutable ... -
Object
# pretty _ print _ inspect -> String (126949.0) -
Object#pretty_print を使って Object#inspect と同様に オブジェクトを人間が読める形式に変換した文字列を返します。
Object#pretty_print を使って Object#inspect と同様に
オブジェクトを人間が読める形式に変換した文字列を返します。
出力する全てのオブジェクトに Object#pretty_print が定義されている必要があります。
そうでない場合には RuntimeError が発生します。
@raise RuntimeError 出力する全てのオブジェクトに Object#pretty_print が定義されて
いない場合に発生します。 -
Object
# pretty _ print _ cycle(pp) -> () (126799.0) -
プリティプリント時にオブジェクトの循環参照が検出された場合、 Object#pretty_print の代わりに呼ばれるメソッドです。
プリティプリント時にオブジェクトの循環参照が検出された場合、
Object#pretty_print の代わりに呼ばれるメソッドです。
あるクラスの pp の出力をカスタマイズしたい場合は、
このメソッドも再定義する必要があります。
@param pp PP オブジェクトです。
//emlist[][ruby]{
class Array
def pretty_print_cycle(q)
q.text(empty? ? '[]' : '[...]')
end
end
//}
@see Object#pretty_print -
Object
# pretty _ print(pp) -> () (126787.0) -
PP.pp や Kernel.#pp がオブジェクトの内容を出力するときに 呼ばれるメソッドです。PP オブジェクト pp を引数として呼ばれます。
PP.pp や Kernel.#pp がオブジェクトの内容を出力するときに
呼ばれるメソッドです。PP オブジェクト pp を引数として呼ばれます。
あるクラスの pp の出力をカスタマイズしたい場合は、このメソッドを再定義します。
そのとき pretty_print メソッドは指定された pp に対して表示したい自身の内容を追加して
いかなければいけません。いくつかの組み込みクラスについて、
pp ライブラリはあらかじめ pretty_print メソッドを定義しています。
@param pp PP オブジェクトです。
//emlist[][ruby]{
class Array
... -
Object
# initialize _ copy(obj) -> object (109369.0) -
(拡張ライブラリによる) ユーザ定義クラスのオブジェクトコピーの初期化メソッド。
(拡張ライブラリによる) ユーザ定義クラスのオブジェクトコピーの初期化メソッド。
このメソッドは self を obj の内容で置き換えます。ただ
し、self のインスタンス変数や特異メソッドは変化しません。
Object#clone, Object#dupの内部で使われています。
initialize_copy は、Ruby インタプリタが知り得ない情報をコピーするた
めに使用(定義)されます。例えば C 言語でクラスを実装する場合、情報
をインスタンス変数に保持させない場合がありますが、そういった内部情
報を initialize_copy でコピーするよう定義しておくことで、du... -
Object
# marshal _ dump -> object (109069.0) -
Marshal.#dump を制御するメソッドです。
Marshal.#dump を制御するメソッドです。
Marshal.dump(some) において、出力するオブジェクト some がメソッド marshal_dump を
持つ場合には、その返り値がダンプされたものが Marshal.dump(some) の返り値となります。
marshal_dump/marshal_load の仕組みは Ruby 1.8.0 から導入されました。
これから書くプログラムでは _dump/_load ではなく
marshal_dump/marshal_load を使うべきです。
@return 任意のオブジェクトで marshal_load の引数... -
Object
# public _ send(name , *args) -> object (108997.0) -
オブジェクトの public メソッド name を args を引数にして呼び出し、メソッ ドの実行結果を返します。
オブジェクトの public メソッド name を args を引数にして呼び出し、メソッ
ドの実行結果を返します。
ブロック付きで呼ばれたときはブロックもそのまま引き渡します。
//emlist[][ruby]{
1.public_send(:+, 2) # => 3
//}
@param name 文字列かSymbol で指定するメソッド名です。
@param args 呼び出すメソッドに渡す引数です。
@raise ArgumentError name を指定しなかった場合に発生します。
@raise NoMethodError protected メソッドや priv... -
Object
# public _ send(name , *args) { . . . . } -> object (108997.0) -
オブジェクトの public メソッド name を args を引数にして呼び出し、メソッ ドの実行結果を返します。
オブジェクトの public メソッド name を args を引数にして呼び出し、メソッ
ドの実行結果を返します。
ブロック付きで呼ばれたときはブロックもそのまま引き渡します。
//emlist[][ruby]{
1.public_send(:+, 2) # => 3
//}
@param name 文字列かSymbol で指定するメソッド名です。
@param args 呼び出すメソッドに渡す引数です。
@raise ArgumentError name を指定しなかった場合に発生します。
@raise NoMethodError protected メソッドや priv... -
Object
# to _ proc -> Proc (108703.0) -
オブジェクトの Proc への暗黙の変換が必要なときに内部で呼ばれます。 デフォルトでは定義されていません。
オブジェクトの Proc への暗黙の変換が必要なときに内部で呼ばれます。
デフォルトでは定義されていません。
説明のためここに記載してありますが、
このメソッドは実際には Object クラスには定義されていません。
必要に応じてサブクラスで定義すべきものです。
//emlist[][ruby]{
def doing
yield
end
class Foo
def to_proc
Proc.new{p 'ok'}
end
end
it = Foo.new
doing(&it) #=> "ok"
//} -
Object
# to _ regexp -> Regexp (108703.0) -
オブジェクトの Regexp への暗黙の変換が必要なときに内部で呼ばれます。 デフォルトでは定義されていません。
オブジェクトの Regexp への暗黙の変換が必要なときに内部で呼ばれます。
デフォルトでは定義されていません。
説明のためここに記載してありますが、
このメソッドは実際には Object クラスには定義されていません。
必要に応じてサブクラスで定義すべきものです。
このメソッドを定義する条件は、
* 正規表現が使われるすべての場面で代置可能であるような、
* 正規表現そのものとみなせるようなもの
という厳しいものになっています。
//emlist[][ruby]{
class Foo
def to_regexp
/[\d]+/
end
end
it = Foo.... -
Object
# _ dump(limit) -> String (108655.0) -
Marshal.#dump において出力するオブジェクトがメソッド _dump を定義している場合には、そのメソッドの結果が書き出されます。
Marshal.#dump において出力するオブジェクトがメソッド _dump
を定義している場合には、そのメソッドの結果が書き出されます。
バージョン1.8.0以降ではObject#marshal_dump, Object#marshal_loadの使用
が推奨されます。 Marshal.dump するオブジェクトが _dump と marshal_dump の両方の
メソッドを持つ場合は marshal_dump が優先されます。
メソッド _dump は引数として再帰を制限するレベル limit を受
け取り、オブジェクトを文字列化したものを返します。
インスタンスがメソッド _... -
Object
# public _ method(name) -> Method (108553.0) -
オブジェクトの public メソッド name をオブジェクト化した Method オブジェクトを返します。
オブジェクトの public メソッド name をオブジェクト化した
Method オブジェクトを返します。
@param name メソッド名を Symbol または String で指定します。
@raise NameError 定義されていないメソッド名や、
protected メソッド名、 private メソッド名を引数として与えると発生します。
//emlist[][ruby]{
1.public_method(:to_int) #=> #<Method: Integer#to_int>
1.public_method(:p) # method ... -
Object
# display(out = $ stdout) -> nil (108475.0) -
オブジェクトを out に出力します。
オブジェクトを out に出力します。
以下のように定義されています。
//emlist[][ruby]{
class Object
def display(out = $stdout)
out.write self
nil
end
end
//}
@param out 出力先のIOオブジェクトです。指定しない場合は標準出力に出力されます。
@return nil を返します。
//emlist[][ruby]{
Object.new.display #=> #<Object:0xbb0210>
//}
@see $stdout -
Object
# private _ methods(include _ inherited = true) -> [Symbol] (108421.0) -
そのオブジェクトが理解できる private メソッド名の一覧を返します。
そのオブジェクトが理解できる private メソッド名の一覧を返します。
@param include_inherited 偽となる値を指定すると自身のクラスのスーパークラスで定義されたメソッドを除きます。
@see Module#private_instance_methods,Object#methods,Object#singleton_methods -
Object
# protected _ methods(include _ inherited = true) -> [Symbol] (108421.0) -
そのオブジェクトが理解できる protected メソッド名の一覧を返します。
そのオブジェクトが理解できる protected メソッド名の一覧を返します。
@param include_inherited 偽となる値を指定すると自身のクラスのスーパークラスで定義されたメソッドを除きます。
@see Module#protected_instance_methods,Object#methods,Object#singleton_methods -
Object
# public _ methods(include _ inherited = true) -> [Symbol] (108421.0) -
そのオブジェクトが理解できる public メソッド名の一覧を返します。
そのオブジェクトが理解できる public メソッド名の一覧を返します。
@param include_inherited 偽となる値を指定すると自身のクラスのスーパークラスで定義されたメソッドを除きます。
@see Module#public_instance_methods,Object#methods,Object#singleton_methods -
Object
# respond _ to?(name , include _ all = false) -> bool (108421.0) -
オブジェクトがメソッド name を持つとき真を返します。
オブジェクトがメソッド name を持つとき真を返します。
オブジェクトが メソッド name を持つというのは、
オブジェクトが メソッド name に応答できることをいいます。
Windows での Process.fork や GNU/Linux での File.lchmod の
ような NotImplementedError が発生する場合は false を返します。
※ NotImplementedError が発生する場合に false を返すのは
Rubyの組み込みライブラリや標準ライブラリなど、C言語で実装されているメソッドのみです。
Rubyで実装されたメソッドで N... -
Object
# inspect -> String (108403.0) -
オブジェクトを人間が読める形式に変換した文字列を返します。
オブジェクトを人間が読める形式に変換した文字列を返します。
組み込み関数 Kernel.#p は、このメソッドの結果を使用して
オブジェクトを表示します。
//emlist[][ruby]{
[ 1, 2, 3..4, 'five' ].inspect # => "[1, 2, 3..4, \"five\"]"
Time.new.inspect # => "2008-03-08 19:43:39 +0900"
//}
inspect メソッドをオーバーライドしなかった場合、クラス名とインスタンス
変数の名前、値の組を元にした文字列を返します。
//... -
Object
:: RUBY _ PATCHLEVEL -> Integer (108367.0) -
Ruby のパッチレベルを表す Integer オブジェクトです。
Ruby のパッチレベルを表す Integer オブジェクトです。
パッチレベルはRubyの各バージョンに対するバグ修正パッチの適用をカウントしています。
teeny リリースのそれぞれについてパッチレベルは 0 から始まり、
その teeny リリースに対してバグ修正パッチが適用される度に増えていきます。
パッチレベルという概念および RUBY_PATCHLEVEL 定数は、 Ruby 1.8.5-p1 以降、 1.8.6 以降で導入されました。
1.8.5やそれ以前のバージョンでは定義されていません。 -
Object
# psych _ to _ yaml(options = {}) -> String (108349.0) -
オブジェクトを YAML document に変換します。
オブジェクトを YAML document に変換します。
options でオプションを指定できます。
Psych.dump と同じなので詳しくはそちらを参照してください。
syck に to_yaml メソッドがあるため、
psych_to_yaml が別名として定義されています。将来的に
syck が廃止された場合 psych_to_yaml は廃止
される予定であるため、特別の事情がない限り to_yaml を用いてください。
@param options 出力オプション
@see Psych.dump -
Object
:: TOPLEVEL _ BINDING -> Binding (108349.0) -
トップレベルでの Binding オブジェクト。
トップレベルでの Binding オブジェクト。
詳細は Binding を参照してください。 -
Object
# dup -> object (100447.0) -
オブジェクトの複製を作成して返します。
オブジェクトの複製を作成して返します。
dup はオブジェクトの内容, taint 情報をコピーし、
clone はそれに加えて freeze, 特異メソッドなどの情報も含めた完全な複製を作成します。
clone や dup は浅い(shallow)コピーであることに注意してください。後述。
TrueClass, FalseClass, NilClass, Symbol, そして Numeric クラスのインスタンスなど一部のオブジェクトは複製ではなくインスタンス自身を返します。
@param freeze false を指定すると freeze されていないコピーを返します。
@r... -
Object
# to _ yaml(options = {}) -> String (99349.0) -
オブジェクトを YAML document に変換します。
オブジェクトを YAML document に変換します。
options でオプションを指定できます。
Psych.dump と同じなので詳しくはそちらを参照してください。
syck に to_yaml メソッドがあるため、
psych_to_yaml が別名として定義されています。将来的に
syck が廃止された場合 psych_to_yaml は廃止
される予定であるため、特別の事情がない限り to_yaml を用いてください。
@param options 出力オプション
@see Psych.dump -
Object
# clone(freeze: true) -> object (91147.0) -
オブジェクトの複製を作成して返します。
オブジェクトの複製を作成して返します。
dup はオブジェクトの内容, taint 情報をコピーし、
clone はそれに加えて freeze, 特異メソッドなどの情報も含めた完全な複製を作成します。
clone や dup は浅い(shallow)コピーであることに注意してください。後述。
TrueClass, FalseClass, NilClass, Symbol, そして Numeric クラスのインスタンスなど一部のオブジェクトは複製ではなくインスタンス自身を返します。
@param freeze false を指定すると freeze されていないコピーを返します。
@r... -
Object
# send(name , *args) -> object (90859.0) -
オブジェクトのメソッド name を args を引数に して呼び出し、メソッドの実行結果を返します。
オブジェクトのメソッド name を args を引数に
して呼び出し、メソッドの実行結果を返します。
ブロック付きで呼ばれたときはブロックもそのまま引き渡します。
send が再定義された場合に備えて別名 __send__ も
用意されており、ライブラリではこちらを使うべきです。また
__send__ は再定義すべきではありません。
send, __send__ は、メソッドの呼び出し制限
にかかわらず任意のメソッドを呼び出せます。
d:spec/def#limit も参照してください。
public メソッドだけ呼び出せれば良い場合は
Object#public_send を使う... -
Object
# send(name , *args) { . . . . } -> object (90859.0) -
オブジェクトのメソッド name を args を引数に して呼び出し、メソッドの実行結果を返します。
オブジェクトのメソッド name を args を引数に
して呼び出し、メソッドの実行結果を返します。
ブロック付きで呼ばれたときはブロックもそのまま引き渡します。
send が再定義された場合に備えて別名 __send__ も
用意されており、ライブラリではこちらを使うべきです。また
__send__ は再定義すべきではありません。
send, __send__ は、メソッドの呼び出し制限
にかかわらず任意のメソッドを呼び出せます。
d:spec/def#limit も参照してください。
public メソッドだけ呼び出せれば良い場合は
Object#public_send を使う... -
Object
# instance _ variable _ set(var , value) -> object (90853.0) -
オブジェクトのインスタンス変数 var に値 value を設定します。
オブジェクトのインスタンス変数 var に値 value を設定します。
インスタンス変数が定義されていなければ新たに定義されます。
@param var インスタンス変数名を文字列か Symbol で指定します。
@param value 設定する値です。
@return value を返します。
//emlist[][ruby]{
obj = Object.new
p obj.instance_variable_set("@foo", 1) #=> 1
p obj.instance_variable_set(:@foo, 2) #=> 2
p obj.instance_var... -
Object
# instance _ variable _ get(var) -> object | nil (90817.0) -
オブジェクトのインスタンス変数の値を取得して返します。
オブジェクトのインスタンス変数の値を取得して返します。
インスタンス変数が定義されていなければ nil を返します。
@param var インスタンス変数名を文字列か Symbol で指定します。
//emlist[][ruby]{
class Foo
def initialize
@foo = 1
end
end
obj = Foo.new
p obj.instance_variable_get("@foo") #=> 1
p obj.instance_variable_get(:@foo) #=> 1
p obj.instance_variab... -
Object
# remove _ instance _ variable(name) -> object (90709.0) -
オブジェクトからインスタンス変数 name を取り除き、そのインス タンス変数に設定されていた値を返します。
オブジェクトからインスタンス変数 name を取り除き、そのインス
タンス変数に設定されていた値を返します。
@param name 削除するインスタンス変数の名前をシンボルか文字列で指定します。
@raise NameError オブジェクトがインスタンス変数 name を持たない場合に発生します。
//emlist[][ruby]{
class Foo
def foo
@foo = 1
p remove_instance_variable(:@foo) #=> 1
p remove_instance_variable(:@foo) # instance v... -
Object
# initialize(*args , &block) -> object (90673.0) -
ユーザ定義クラスのオブジェクト初期化メソッド。
ユーザ定義クラスのオブジェクト初期化メソッド。
このメソッドは Class#new から新しく生成されたオブ
ジェクトの初期化のために呼び出されます。他の言語のコンストラクタに相当します。
デフォルトの動作ではなにもしません。
initialize には
Class#new に与えられた引数がそのまま渡されます。
サブクラスではこのメソッドを必要に応じて再定義されること
が期待されています。
initialize という名前のメソッドは自動的に private に設定され
ます。
@param args 初期化時の引数です。
@param block 初期化時のブロック引数です。必... -
Object
# methods(include _ inherited = true) -> [Symbol] (90517.0) -
そのオブジェクトに対して呼び出せるメソッド名の一覧を返します。 このメソッドは public メソッドおよび protected メソッドの名前を返します。
そのオブジェクトに対して呼び出せるメソッド名の一覧を返します。
このメソッドは public メソッドおよび protected メソッドの名前を返します。
ただし特別に、引数が偽の時は Object#singleton_methods(false) と同じになっています。
@param include_inherited 引数が偽の時は Object#singleton_methods(false) と同じになります。
//emlist[例1][ruby]{
class Parent
private; def private_parent() end
protecte... -
Object
# hash -> Integer (90463.0) -
オブジェクトのハッシュ値を返します。このハッシュ値は、Object#eql? と合わせて Hash クラスで、2つのオブジェクトを同一のキーとするか判定するために用いられます。
オブジェクトのハッシュ値を返します。このハッシュ値は、Object#eql? と合わせて Hash クラスで、2つのオブジェクトを同一のキーとするか判定するために用いられます。
2つのオブジェクトのハッシュ値が異なるとき、直ちに異なるキーとして判定されます。
逆に、2つのハッシュ値が同じとき、さらに Object#eql? での比較により判定されます。
そのため、同じキーとして判定される状況は Object#eql? の比較で真となる場合のみであり、このとき前段階としてハッシュ値どうしが等しい必要があります。
つまり、
A.eql?(B) ならば A.hash == B.hash
... -
Object
# singleton _ methods(inherited _ too = true) -> [Symbol] (90391.0) -
そのオブジェクトに対して定義されている特異メソッド名 (public あるいは protected メソッド) の一覧を返します。
そのオブジェクトに対して定義されている特異メソッド名
(public あるいは protected メソッド) の一覧を返します。
inherited_too が真のときは継承した特異メソッドを含みます。
継承した特異メソッドとは Object#extend によって追加された特異メソッドや、
self がクラスの場合はスーパークラスのクラスメソッド(Classのインスタンスの特異メソッド)などです。
singleton_methods(false) は、Object#methods(false) と同じです。
@param inherited_too 継承した特異メソッドを含める場合は... -
Object
# freeze -> self (90355.0) -
オブジェクトを凍結(内容の変更を禁止)します。
オブジェクトを凍結(内容の変更を禁止)します。
凍結されたオブジェクトの変更は
例外 FrozenError を発生させます。
いったん凍結されたオブジェクトを元に戻す方法はありません。
凍結されるのはオブジェクトであり、変数ではありません。代入などで変数の指す
オブジェクトが変化してしまうことは freeze では防げません。 freeze が防ぐのは、
`破壊的な操作' と呼ばれるもの一般です。変数への参照自体を凍結したい
場合は、グローバル変数なら Kernel.#trace_var が使えます。
@return self を返します。
//emlist[][ruby]{
a1... -
Object
# equal?(other) -> bool (90343.0) -
other が self 自身の時、真を返します。
other が self 自身の時、真を返します。
二つのオブジェクトが同一のものかどうか調べる時に使用します。
このメソッドを再定義してはいけません。
お互いのObject#object_idが一致する
かどうかを調べます。
@param other 比較するオブジェクトです。
//emlist[][ruby]{
p("foo".equal?("bar")) #=> false
p("foo".equal?("foo")) #=> false
p(4.equal?(4)) #=> true
p(4.equal?(4.0)) #=> false
p(:foo.equal? :fo... -
Object
# is _ a?(mod) -> bool (90337.0) -
オブジェクトが指定されたクラス mod かそのサブクラスのインスタンスであるとき真を返します。
オブジェクトが指定されたクラス mod かそのサブクラスのインスタンスであるとき真を返します。
また、オブジェクトがモジュール mod をインクルードしたクラスかそのサブクラス
のインスタンスである場合にも真を返します。
Module#includeだけではなく、Object#extendやModule#prependに
よってサブクラスのインスタンスになる場合も含みます。
上記のいずれでもない場合に false を返します。
@param mod クラスやモジュールなど、Moduleかそのサブクラスのインスタンスです。
//emlist[][ruby]{
module M
end
c... -
Object
# kind _ of?(mod) -> bool (90337.0) -
オブジェクトが指定されたクラス mod かそのサブクラスのインスタンスであるとき真を返します。
オブジェクトが指定されたクラス mod かそのサブクラスのインスタンスであるとき真を返します。
また、オブジェクトがモジュール mod をインクルードしたクラスかそのサブクラス
のインスタンスである場合にも真を返します。
Module#includeだけではなく、Object#extendやModule#prependに
よってサブクラスのインスタンスになる場合も含みます。
上記のいずれでもない場合に false を返します。
@param mod クラスやモジュールなど、Moduleかそのサブクラスのインスタンスです。
//emlist[][ruby]{
module M
end
c... -
Object
# eql?(other) -> bool (90301.0) -
オブジェクトと other が等しければ真を返します。Hash で二つのキー が等しいかどうかを判定するのに使われます。
オブジェクトと other が等しければ真を返します。Hash で二つのキー
が等しいかどうかを判定するのに使われます。
このメソッドは各クラスの性質に合わせて再定義すべきです。
多くの場合、 == と同様に同値性の判定をするように再定義されていますが、
適切にキー判定ができるようにより厳しくなっている場合もあります。
デフォルトでは equal? と同じオブジェクト
の同一性判定になっています。
このメソッドを再定義した時には Object#hash メソッ
ドも再定義しなければなりません。
@param other 比較するオブジェクトです。
//emlist[][ruby]{... -
Object
# method(name) -> Method (90253.0) -
オブジェクトのメソッド name をオブジェクト化した Method オブジェクトを返します。
オブジェクトのメソッド name をオブジェクト化した
Method オブジェクトを返します。
@param name メソッド名をSymbol またはStringで指定します。
@raise NameError 定義されていないメソッド名を引数として与えると発生します。
//emlist[][ruby]{
me = -365.method(:abs)
p me #=> #<Method: Integer#abs>
p me.call #=> 365
//}
@see Module#instance_method, Method, BasicObject#__send__, Objec... -
Object
# ==(other) -> bool (90247.0) -
オブジェクトと other が等しければ真を返します。
オブジェクトと other が等しければ真を返します。
このメソッドは各クラスの性質に合わせて再定義すべきです。
多くの場合、オブジェクトの内容が等しければ真を返すように
(同値性を判定するように)再定義されることが期待されています。
デフォルトでは equal? と同じオブジェクト
の同一性判定になっています。
@param other 比較するオブジェクトです。
//emlist[][ruby]{
p("foo" == "bar") #=> false
p("foo" == "foo") #=> true
p(4 == 4) #=> true
p(4 == 4.0) #=> t... -
Object
# taint -> self (90235.0) -
このメソッドは Ruby 2.7 から deprecated で、Ruby 3.2 で削除予定です。
このメソッドは Ruby 2.7 から deprecated で、Ruby 3.2 で削除予定です。
オブジェクトの「汚染マーク」をセットします。
環境変数(ENVで得られる文字列)など一部のオブジェクトは最初から汚染されています。
オブジェクトの汚染に関してはspec/safelevelを参照してください。
//emlist[][ruby]{
$SAFE = 1
some = "puts '@&%&(#!'"
p some.tainted? #=> false
eval(some) #=> @&%&(#!
some.taint
p some.tainted? #=> true
e... -
Object
. yaml _ tag(tag) -> () (90199.0) -
クラスと tag の間を関連付けます。
クラスと tag の間を関連付けます。
これによって tag 付けされた YAML ドキュメントを Ruby のオブジェクトに
変換したりその逆をしたりすることができます。
@param tag 対象のクラスに関連付けるタグの文字列
=== Example
require 'psych'
class Foo
def initialize(x)
@x = x
end
attr_reader :x
end
# Dumps Ruby object normally
p Psych.dump(Foo.new(3))
... -
Object
# instance _ of?(klass) -> bool (90193.0) -
オブジェクトがクラス klass の直接のインスタンスである時真を返します。
オブジェクトがクラス klass の直接のインスタンスである時真を返します。
obj.instance_of?(c) が成立する時には、常に obj.kind_of?(c) も成立します。
@param klass Classかそのサブクラスのインスタンスです。
//emlist[][ruby]{
class C < Object
end
class S < C
end
obj = S.new
p obj.instance_of?(S) # true
p obj.instance_of?(C) # false
//}
@see Object#kind_of?... -
Object
# to _ a -> Array (90175.0) -
オブジェクトを配列に変換した結果を返します。 デフォルトでは定義されていません。
オブジェクトを配列に変換した結果を返します。
デフォルトでは定義されていません。
説明のためここに記載してありますが、
このメソッドは実際には Object クラスには定義されていません。
必要に応じてサブクラスで定義すべきものです。
//emlist[][ruby]{
p( {'a'=>1}.to_a ) # [["a", 1]]
p ['array'].to_a # ["array"]
p nil.to_a # []
//}
@see Object#to_ary,Kernel.#Array -
Object
# untaint -> self (90175.0) -
オブジェクトの「汚染マーク」を取り除きます。
オブジェクトの「汚染マーク」を取り除きます。
汚染マークを取り除くことによる危険性はプログラマが責任を負う必要が
あります。
オブジェクトの汚染に関してはspec/safelevelを参照してください。
ruby -e 'p ARGV[0].tainted?;t=+ARGV[0];t.untaint;p t.tainted?' hoge
# => true
# false
このメソッドは Ruby 2.7 から deprecated で、Ruby 3.2 で削除予定です。
@see Object#taint,Object#tainted? -
Object
# extend(*modules) -> self (90163.0) -
引数で指定したモジュールのインスタンスメソッドを self の特異 メソッドとして追加します。
引数で指定したモジュールのインスタンスメソッドを self の特異
メソッドとして追加します。
Module#include は、クラス(のインスタンス)に機能を追加します
が、extend は、ある特定のオブジェクトだけにモジュールの機能を追加
したいときに使用します。
引数に複数のモジュールを指定した場合、最後
の引数から逆順に extend を行います。
@param modules モジュールを任意個指定します(クラスは不可)。
@return self を返します。
//emlist[][ruby]{
module Foo
def a
'ok Foo'
en... -
Object
# tainted? -> bool (90145.0) -
オブジェクトの「汚染マーク」がセットされている時真を返します。
オブジェクトの汚染に関してはspec/safelevelを参照してください。
//emlist[][ruby]{
p String.new.tainted? #=> false
p ENV['OS'].tainted? #=> true
//}
このメソッドは Ruby 2.7から deprecated で、Ruby 3.2 で削除予定です。
@see Object#taint,Object#untaint -
Object
# instance _ variables -> [Symbol] (90139.0) -
オブジェクトのインスタンス変数名をシンボルの配列として返します。
オブジェクトのインスタンス変数名をシンボルの配列として返します。
//emlist[][ruby]{
obj = Object.new
obj.instance_eval { @foo, @bar = nil }
p obj.instance_variables
#=> [:@foo, :@bar]
//}
@see Object#instance_variable_get, Kernel.#local_variables, Kernel.#global_variables, Module.constants, Module#constants, Module#class_variabl... -
Object
# to _ ary -> Array (90139.0) -
オブジェクトの Array への暗黙の変換が必要なときに内部で呼ばれます。 デフォルトでは定義されていません。
オブジェクトの Array への暗黙の変換が必要なときに内部で呼ばれます。
デフォルトでは定義されていません。
説明のためここに記載してありますが、
このメソッドは実際には Object クラスには定義されていません。
必要に応じてサブクラスで定義すべきものです。
このメソッドを定義する条件は、
* 配列が使われるすべての場面で代置可能であるような、
* 配列そのものとみなせるようなもの
という厳しいものになっています。
//emlist[][ruby]{
class Foo
def to_ary
[3,4]
end
end
it = Foo.new
p([1,2... -
Object
# to _ str -> String (90139.0) -
オブジェクトの String への暗黙の変換が必要なときに内部で呼ばれます。 デフォルトでは定義されていません。
オブジェクトの String への暗黙の変換が必要なときに内部で呼ばれます。
デフォルトでは定義されていません。
説明のためここに記載してありますが、
このメソッドは実際には Object クラスには定義されていません。
必要に応じてサブクラスで定義すべきものです。
このメソッドを定義する条件は、
* 文字列が使われるすべての場面で代置可能であるような、
* 文字列そのものとみなせるようなもの
という厳しいものになっています。
//emlist[][ruby]{
class Foo
def to_str
'Edition'
end
end
it = Foo.new... -
Object
# frozen? -> bool (90121.0) -
オブジェクトが凍結(内容の変更を禁止)されているときに真を返します。
オブジェクトが凍結(内容の変更を禁止)されているときに真を返します。
//emlist[][ruby]{
obj = "someone"
p obj.frozen? #=> false
obj.freeze
p obj.frozen? #=> true
//}
@see Object#freeze -
Object
# =~(other) -> nil (90103.0) -
右辺に正規表現オブジェクトを置いた正規表現マッチ obj =~ /RE/ をサポートするためのメソッドです。常に nil を返します。
右辺に正規表現オブジェクトを置いた正規表現マッチ obj =~ /RE/
をサポートするためのメソッドです。常に nil を返します。
このメソッドは Ruby 2.6 から deprecated です。
意図せずに Array などに対して呼ばれた時にバグの原因になっていたため、
代わりに NilClass#=~ が定義されています。
@param other 任意のオブジェクトです。結果に影響しません。
//emlist[例][ruby]{
obj = 'regexp'
p(obj =~ /re/) #=> 0
obj = nil
p(obj =~ /re/) #=> nil
... -
Object
# to _ hash -> Hash (90103.0) -
オブジェクトの Hash への暗黙の変換が必要なときに内部で呼ばれます。 デフォルトでは定義されていません。
オブジェクトの Hash への暗黙の変換が必要なときに内部で呼ばれます。
デフォルトでは定義されていません。
説明のためここに記載してありますが、
このメソッドは実際には Object クラスには定義されていません。
必要に応じてサブクラスで定義すべきものです。
このメソッドを定義する条件は、
* ハッシュが使われるすべての場面で代置可能であるような、
* ハッシュそのものとみなせるようなもの
という厳しいものになっています。
//emlist[][ruby]{
class Foo
def to_hash
{'as' => 24}
end
end
it = Foo... -
Object
# to _ int -> Integer (90103.0) -
オブジェクトの Integer への暗黙の変換が必要なときに内部で呼ばれます。 デフォルトでは定義されていません。
オブジェクトの Integer への暗黙の変換が必要なときに内部で呼ばれます。
デフォルトでは定義されていません。
説明のためここに記載してありますが、
このメソッドは実際には Object クラスには定義されていません。
必要に応じてサブクラスで定義すべきものです。
このメソッドを定義する条件は、
* 整数が使われるすべての場面で代置可能であるような、
* 整数そのものとみなせるようなもの
という厳しいものになっています。
//emlist[][ruby]{
class Foo
def to_int
1
end
end
ary = [:a, :b, :c]
p(... -
Object
:: DATA -> File (90085.0) -
スクリプトの __END__ プログラムの終り以降をアクセスする File オブジェクト。
スクリプトの __END__
プログラムの終り以降をアクセスする File オブジェクト。
d:spec/program#terminateも参照。
ソースファイルの __END__ 以降は解析・実行の対象にならないので
その部分にプログラムが利用するためのデータを書き込んでおくことができます。
DATA 定数はそのデータ部分にアクセスするための File オブジェクトを保持しています。
__END__ を含まないプログラムにおいては DATA は定義されません。
=== 注意
* DATA.rewind で移動する読みとり位置は __END__ 直後ではなく、
... -
Object
# !~(other) -> bool (90055.0) -
自身が other とマッチしない事を判定します。
自身が other とマッチしない事を判定します。
self#=~(obj) を反転した結果と同じ結果を返します。
@param other 判定するオブジェクトを指定します。
//emlist[例][ruby]{
obj = 'regexp'
p (obj !~ /re/) # => false
obj = nil
p (obj !~ /re/) # => true
//} -
ObjectSpace
. # trace _ object _ allocations _ stop -> nil (73027.0) -
オブジェクト割り当てのトレースを終了します。
オブジェクト割り当てのトレースを終了します。
トレースを終了する為には、ObjectSpace.#trace_object_allocations_startを呼んだ回数分だけこのメソッドを呼ぶ必要があります。
@see ObjectSpace.#trace_object_allocations_start -
オブジェクト (72310.0)
-
オブジェクト === オブジェクトとは
オブジェクト
=== オブジェクトとは
Ruby で扱える全ての値はオブジェクトです。
Ruby のオブジェクトに対して可能な操作はメソッド呼び出しのみです。
あるオブジェクトが反応できるメソッドは、
そのオブジェクトが所属するクラスによって一意に決定します。
所属するクラスはオブジェクト生成時に決まり、その後は特異クラスの導入以外、所属クラスが変わることはありません。
またオブジェクトは、特定のクラスに対比して、その「インスタンス」とも呼ばれます。
オブジェクトの生成は、一般には、別のオブジェクトのメソッドを呼び出すことによって行われます。
=== クラス
クラスは自身に所属するオ... -
ObjectSpace
. # each _ object {|object| . . . } -> Integer (64669.0) -
指定された klass と Object#kind_of? の関係にある全ての オブジェクトに対して繰り返します。引数が省略された時には全てのオブ ジェクトに対して繰り返します。 繰り返した数を返します。
指定された klass と Object#kind_of? の関係にある全ての
オブジェクトに対して繰り返します。引数が省略された時には全てのオブ
ジェクトに対して繰り返します。
繰り返した数を返します。
ブロックが与えられなかった場合は、
Enumerator オブジェクトを返します。
次のクラスのオブジェクトについては繰り返しません
* Fixnum
* Symbol
* TrueClass
* FalseClass
* NilClass
とくに、klass に Fixnum や Symbol などのクラスを指定した場合は、
何も繰り返さないことになります。
なお、Sy... -
ObjectSpace
. # each _ object(klass) {|object| . . . } -> Integer (64669.0) -
指定された klass と Object#kind_of? の関係にある全ての オブジェクトに対して繰り返します。引数が省略された時には全てのオブ ジェクトに対して繰り返します。 繰り返した数を返します。
指定された klass と Object#kind_of? の関係にある全ての
オブジェクトに対して繰り返します。引数が省略された時には全てのオブ
ジェクトに対して繰り返します。
繰り返した数を返します。
ブロックが与えられなかった場合は、
Enumerator オブジェクトを返します。
次のクラスのオブジェクトについては繰り返しません
* Fixnum
* Symbol
* TrueClass
* FalseClass
* NilClass
とくに、klass に Fixnum や Symbol などのクラスを指定した場合は、
何も繰り返さないことになります。
なお、Sy... -
ObjectSpace
. # each _ object -> Enumerator (64069.0) -
指定された klass と Object#kind_of? の関係にある全ての オブジェクトに対して繰り返します。引数が省略された時には全てのオブ ジェクトに対して繰り返します。 繰り返した数を返します。
指定された klass と Object#kind_of? の関係にある全ての
オブジェクトに対して繰り返します。引数が省略された時には全てのオブ
ジェクトに対して繰り返します。
繰り返した数を返します。
ブロックが与えられなかった場合は、
Enumerator オブジェクトを返します。
次のクラスのオブジェクトについては繰り返しません
* Fixnum
* Symbol
* TrueClass
* FalseClass
* NilClass
とくに、klass に Fixnum や Symbol などのクラスを指定した場合は、
何も繰り返さないことになります。
なお、Sy... -
ObjectSpace
. # each _ object(klass) -> Enumerator (64069.0) -
指定された klass と Object#kind_of? の関係にある全ての オブジェクトに対して繰り返します。引数が省略された時には全てのオブ ジェクトに対して繰り返します。 繰り返した数を返します。
指定された klass と Object#kind_of? の関係にある全ての
オブジェクトに対して繰り返します。引数が省略された時には全てのオブ
ジェクトに対して繰り返します。
繰り返した数を返します。
ブロックが与えられなかった場合は、
Enumerator オブジェクトを返します。
次のクラスのオブジェクトについては繰り返しません
* Fixnum
* Symbol
* TrueClass
* FalseClass
* NilClass
とくに、klass に Fixnum や Symbol などのクラスを指定した場合は、
何も繰り返さないことになります。
なお、Sy... -
ObjectSpace
. # reachable _ objects _ from(obj) -> Array | nil (63865.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[例... -
ObjectSpace
. # trace _ object _ allocations { . . . } (63745.0) -
与えられたブロック内でオブジェクトのトレースを行います。
与えられたブロック内でオブジェクトのトレースを行います。
//emlist[例][ruby]{
require 'objspace'
class C
include ObjectSpace
def foo
trace_object_allocations do
obj = Object.new
p "#{allocation_sourcefile(obj)}:#{allocation_sourceline(obj)}"
end
end
end
C.new.foo #=> "objtrace.rb:8"
//} -
ObjectSpace
. # count _ tdata _ objects(result _ hash = nil) -> Hash (63721.0) -
T_DATA の種類ごとにオブジェクトの数を格納したハッシュを返します。
T_DATA の種類ごとにオブジェクトの数を格納したハッシュを返します。
@param result_hash 戻り値のためのハッシュを指定します。省略した場合は新
しくハッシュを作成します。result_hash の内容は上書き
されます。プローブ効果を避けるために使用します。
@raise TypeError result_hash にハッシュ以外を指定した時に発生します。
本メソッドは普通の Ruby プログラマ向けのメソッドではありません。パフォー
マンスに興味のある C Ruby の開発者向けのもので... -
ObjectSpace
. # trace _ object _ allocations _ start -> nil (63691.0) -
オブジェクト割り当てのトレースを開始します。
オブジェクト割り当てのトレースを開始します。
@see ObjectSpace.#trace_object_allocations_stop -
ObjectSpace
. # count _ objects(result _ hash = {}) -> Hash (63685.0) -
オブジェクトを種類ごとにカウントした結果を Hash として返します。
オブジェクトを種類ごとにカウントした結果を Hash として返します。
このメソッドは C Ruby 以外の Ruby では動かないでしょう。
@param result_hash ハッシュを指定します。与えられたハッシュは上書きして返されます。
これを利用すると測定による影響を避けることができます。
@raise TypeError 引数に Hash 以外を与えた場合、発生します。
//emlist[例][ruby]{
ObjectSpace.count_objects # => {:TOTAL=>10000, :FREE=>3011, :T_... -
ObjectSpace
. # count _ objects _ size(result _ hash = nil) -> Hash (63649.0) -
型ごとのオブジェクトサイズをバイト単位で格納したハッシュを返します。
型ごとのオブジェクトサイズをバイト単位で格納したハッシュを返します。
@param result_hash 戻り値のためのハッシュを指定します。省略した場合は新
しくハッシュを作成します。result_hash の内容は上書き
されます。プローブ効果を避けるために使用します。
戻り値の内容は完全ではない事に注意してください。この内容はあくまでもヒ
ントとして扱う必要があります。特に T_DATA の合計値は正しくないでしょう。
//emlist[例][ruby]{
ObjectSpace.count_objec... -
Prime
:: PseudoPrimeGenerator # with _ object(obj) {|prime , obj| . . . } -> object (55639.0) -
与えられた任意のオブジェクトと要素をブロックに渡して評価します。
与えられた任意のオブジェクトと要素をブロックに渡して評価します。
@param obj 任意のオブジェクトを指定します。
@return 最初に与えられたオブジェクトを返します。
@return ブロックを与えられた場合は obj を返します。ブロックを与えられなかった場合は Enumerator を返します。
@see Enumerator#with_object -
Kernel
. # p(*arg) -> object | Array (55054.0) -
引数を人間に読みやすい形に整形して改行と順番に標準出力 $stdout に出力します。主にデバッグに使用します。
引数を人間に読みやすい形に整形して改行と順番に標準出力 $stdout に出力します。主にデバッグに使用します。
引数の inspect メソッドの返り値と改行を順番に出力します。つまり以下のコードと同じです。
//emlist[例][ruby]{
print arg[0].inspect, "\n", arg[1].inspect, "\n" #, ...
//}
整形に用いられるObject#inspectは普通に文字列に変換すると
区別がつかなくなるようなクラス間の差異も表現できるように工夫されています。
p に引数を与えずに呼び出した場合は特に何もしません。
@param ... -
PP
# object _ group(obj) { . . . } -> () (54925.0) -
以下と等価な働きをするもので簡便のために用意されています。 group(1, '#<' + obj.class.name, '>') { ... }
以下と等価な働きをするもので簡便のために用意されています。
group(1, '#<' + obj.class.name, '>') { ... }
@param obj 表示したいオブジェクトを指定します。
@see PrettyPrint#group -
Prime
:: PseudoPrimeGenerator # with _ object(obj) -> Enumerator (54739.0) -
与えられた任意のオブジェクトと要素をブロックに渡して評価します。
与えられた任意のオブジェクトと要素をブロックに渡して評価します。
@param obj 任意のオブジェクトを指定します。
@return 最初に与えられたオブジェクトを返します。
@return ブロックを与えられた場合は obj を返します。ブロックを与えられなかった場合は Enumerator を返します。
@see Enumerator#with_object -
ObjectSpace (54049.0)
-
全てのオブジェクトを操作するためのモジュールです。
全てのオブジェクトを操作するためのモジュールです。 -
OpenSSL
:: ASN1 . # ObjectId(value) -> OpenSSL :: ASN1 :: ObjectId -> OpenSSL :: ASN1 :: ObjectId (47467.0) -
ASN.1 の ObjectId 型の値を表現する Ruby のオブジェクトを 生成します。
ASN.1 の ObjectId 型の値を表現する Ruby のオブジェクトを
生成します。
OpenSSL::ASN1::ObjectId.new と同じです。
@param value ASN.1 オブジェクト識別子を表す文字列
@param tag タグ番号
@param tagging タグ付けの方法(:IMPLICIT もしくは :EXPLICIT)
@param tag_class タグクラス(:UNIVERSAL, :CONTEXT_SPECIFIC, :APPLICATION, :PRIVATE のいずれか) -
OpenSSL
:: ASN1 . # ObjectId(value , tag , tagging , tag _ class) -> OpenSSL :: ASN1 :: ObjectId (46567.0) -
ASN.1 の ObjectId 型の値を表現する Ruby のオブジェクトを 生成します。
ASN.1 の ObjectId 型の値を表現する Ruby のオブジェクトを
生成します。
OpenSSL::ASN1::ObjectId.new と同じです。
@param value ASN.1 オブジェクト識別子を表す文字列
@param tag タグ番号
@param tagging タグ付けの方法(:IMPLICIT もしくは :EXPLICIT)
@param tag_class タグクラス(:UNIVERSAL, :CONTEXT_SPECIFIC, :APPLICATION, :PRIVATE のいずれか) -
OpenSSL
:: ASN1 :: ObjectId (45049.0) -
ASN.1 のオブジェクト識別子を表すクラス。
ASN.1 のオブジェクト識別子を表すクラス。
* ITU-T X.660 https://www.itu.int/rec/T-REC-X.660/en -
RDoc
:: CodeObject # parent -> RDoc :: CodeObject (36949.0) -
自身を所有する(変数や定数などの形で保持する)オブジェクトを返します。
自身を所有する(変数や定数などの形で保持する)オブジェクトを返します。 -
VALUE rb
_ data _ object _ alloc(VALUE klass , void *datap , RUBY _ DATA _ FUNC dmark , RUBY _ DATA _ FUNC dfree) (36949.0) -
datap をラップするオブジェクトを生成し、返します。 そのクラスは klass となり、datap をマークするときは dmark、解放するときは dfree を使うようになります。
datap をラップするオブジェクトを生成し、返します。
そのクラスは klass となり、datap をマークするときは
dmark、解放するときは dfree を使うようになります。 -
RDoc
:: CodeObject # parent=(val) (36367.0) -
自身を所有する(変数や定数などの形で保持する)オブジェクトを設定します。
自身を所有する(変数や定数などの形で保持する)オブジェクトを設定します。
@param val RDoc::CodeObject のサブクラスのオブジェクトを指定しま
す。 -
ObjectSpace
:: WeakMap (36049.0) -
GC の対象になるオブジェクトへの weak reference を持つクラスです。主に WeakRef クラスの内部で使用されるため、weakref ライブラリ 経由で使用してください。
GC の対象になるオブジェクトへの weak reference を持つクラスです。主に
WeakRef クラスの内部で使用されるため、weakref ライブラリ
経由で使用してください。 -
OptionParser
:: Arguable # options {|opt| . . . } -> object | nil (28273.0) -
自身をパースするための OptionParser オブジェクトを返します。 初回呼び出し時に自動的に生成されます。 この OptionParser#default_argv には self がセットされています。
自身をパースするための OptionParser オブジェクトを返します。
初回呼び出し時に自動的に生成されます。
この OptionParser#default_argv には self がセットされています。
ブロックを与えた場合は、OptionParser を引数としてブロックを実行します。
ブロックの実行結果を返します。
ブロックの実行途中で OptionParser::ParseError
が発生した場合は、全て rescue し、エラーメッセージを出力し、
nil を返します。
//emlist[][ruby]{
require 'optparse'
o = nil
ARG... -
OpenSSL
:: ASN1 :: ObjectId . new(value) -> OpenSSL :: ASN1 :: ObjectId (28087.0) -
ASN.1 のオブジェクト識別子を表わす OpenSSL::ASN1::ObjectId の オブジェクトを生成します。
ASN.1 のオブジェクト識別子を表わす OpenSSL::ASN1::ObjectId の
オブジェクトを生成します。
value としては、ドット区切り数字表記、short name、long name の文字列の
をいずれかを渡します。
value 以外の引数を省略した場合はタグクラスは :UNIVERSAL、
タグ は OpenSSL::ASN1::OBJECT となります。
例:
require "openssl"
include OpenSSL
p ASN1::ObjectId.new("1.2.840.10040.4.3").long_name # => "d... -
OpenSSL
:: ASN1 :: ObjectId . new(value , tag , tagging , tag _ class) -> OpenSSL :: ASN1 :: ObjectId (28087.0) -
ASN.1 のオブジェクト識別子を表わす OpenSSL::ASN1::ObjectId の オブジェクトを生成します。
ASN.1 のオブジェクト識別子を表わす OpenSSL::ASN1::ObjectId の
オブジェクトを生成します。
value としては、ドット区切り数字表記、short name、long name の文字列の
をいずれかを渡します。
value 以外の引数を省略した場合はタグクラスは :UNIVERSAL、
タグ は OpenSSL::ASN1::OBJECT となります。
例:
require "openssl"
include OpenSSL
p ASN1::ObjectId.new("1.2.840.10040.4.3").long_name # => "d... -
JSON
:: Parser # parse -> object (27991.0) -
現在のソースをパースして結果を Ruby のオブジェクトとして返します。
現在のソースをパースして結果を Ruby のオブジェクトとして返します。
//emlist[例][ruby]{
require 'json'
class Person
attr_accessor :name, :age
def []=(key, value)
instance_variable_set("@#{key}", value)
end
end
parser = JSON::Parser.new(DATA.read, object_class: Person)
person = parser.parse
person.class # => Person
p... -
PP
. pp(obj , out = $ > , width = 79) -> object (27973.0) -
指定されたオブジェクト obj を出力先 out に幅 width で出力します。 出力先 out を返します。
指定されたオブジェクト obj を出力先 out に幅 width で出力します。
出力先 out を返します。
@param obj 表示したいオブジェクトを指定します。
@param out 出力先を指定します。<< メソッドが定義されている必要があります。
@param width 出力先の幅を指定します。
//emlist[][ruby]{
require 'pp'
str = PP.pp(b], [:a, [[:a, [:a, [:a, :b], [:a, :b],]]], '', 20)
puts str
# =>
# [[:a, :b],
# [:a,
# [[... -
PP
. singleline _ pp(obj , out= $ >) -> object (27973.0) -
指定されたオブジェクト obj を出力先 out に出力します。 ただし、インデントも改行もしません。 出力先 out を返します。
指定されたオブジェクト obj を出力先 out に出力します。
ただし、インデントも改行もしません。
出力先 out を返します。
@param obj 表示したいオブジェクトを指定します。
@param out 出力先を指定します。<< メソッドが定義されている必要があります。 -
IRB
:: Inspector . def _ inspector(key , arg = nil) { |v| . . . } -> object (27943.0) -
新しい実行結果の出力方式を定義します。
新しい実行結果の出力方式を定義します。
@param key conf.inspect_mode や IRB.conf[:INSPECT_MODE] に指定するキー
オブジェクトを指定します。配列を指定した場合は配列中の要素全
てが対象になります。
@param arg ブロックを指定する場合には、inspect_mode の初期化のための手続
きオブジェクトを指定します。あらかじめ require が必要な場合
などに、proc { require "foo" } といった指定を行います。
... -
IRB
:: OutputMethod # puts(*objs) -> object (27925.0) -
各 obj を self に出力し、それぞれの後に改行を出力します。
各 obj を self に出力し、それぞれの後に改行を出力します。
@param objs 任意のオブジェクトを指定します。 -
ObjectSpace
. # _ id2ref(id) -> object (27757.0) -
オブジェクト ID(BasicObject#__id__)からオブジェクトを得ます。
オブジェクト ID(BasicObject#__id__)からオブジェクトを得ます。
@param id 取得したいオブジェクトの ID を整数で指定します。
@raise RangeError 対応するオブジェクトが存在しなければ発生します。
//emlist[例][ruby]{
a = "hoge"
p ObjectSpace._id2ref(a.__id__) #=> "hoge"
//} -
ObjectSpace
:: WeakMap # [](key) -> object | nil (27739.0) -
引数 key で指定されたオブジェクトが参照するオブジェクトを返します。
引数 key で指定されたオブジェクトが参照するオブジェクトを返します。
参照先のオブジェクトが存在しない場合、GC されている場合、対象外のオブジェ
クトを参照している場合に nil を返します。
@param key 参照元のオブジェクトを指定します。 -
WIN32OLE
_ TYPE # ole _ typelib -> WIN32OLE _ TYPELIB | nil (27691.0) -
この型を登録してある型情報ライブラリ(TypeLib)を取得します。
この型を登録してある型情報ライブラリ(TypeLib)を取得します。
@return この型を登録しているTypeLibをWIN32OLE_TYPELIBオブジェクト
として返します。見つからない場合はnilを返します。
tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'Worksheet')
puts tobj.ole_typelib.name # => 'Microsoft Excel 14.0 Object Library' -
OptionParser
:: Arguable # options -> OptionParser (27673.0) -
自身をパースするための OptionParser オブジェクトを返します。 初回呼び出し時に自動的に生成されます。 この OptionParser#default_argv には self がセットされています。
自身をパースするための OptionParser オブジェクトを返します。
初回呼び出し時に自動的に生成されます。
この OptionParser#default_argv には self がセットされています。
ブロックを与えた場合は、OptionParser を引数としてブロックを実行します。
ブロックの実行結果を返します。
ブロックの実行途中で OptionParser::ParseError
が発生した場合は、全て rescue し、エラーメッセージを出力し、
nil を返します。
//emlist[][ruby]{
require 'optparse'
o = nil
ARG... -
ObjectSpace
. # undefine _ finalizer(obj) -> object (27625.0) -
obj に対するファイナライザをすべて解除します。 obj を返します。
obj に対するファイナライザをすべて解除します。
obj を返します。
@param obj ファイナライザを解除したいオブジェクトを指定します。
//emlist[例][ruby]{
class Sample
def Sample.callback
proc {
puts "finalize"
}
end
def initialize
ObjectSpace.define_finalizer(self, Sample.callback)
end
def undef
ObjectSpace.undefine_final... -
PP
# pp(obj) -> () (27535.0) -
指定されたオブジェクト obj を Object#pretty_print を使って自身のバッファに追加します。
指定されたオブジェクト obj を Object#pretty_print を使って自身のバッファに追加します。
obj がすでに、現在のノードの親において出力されていた場合には、
参照のループが存在しているので、Object#pretty_print の代わりに
Object#pretty_print_cycle が使われます。
@param obj 表示したいオブジェクトを指定します。 -
ObjectSpace
. # define _ finalizer(obj , proc) -> Array (27403.0) -
obj が解放されるときに実行されるファイナライザ proc を 登録します。同じオブジェクトについて複数回呼ばれたときは置き換えで はなく追加登録されます。固定値 0 と proc を配列にして返します。
obj が解放されるときに実行されるファイナライザ proc を
登録します。同じオブジェクトについて複数回呼ばれたときは置き換えで
はなく追加登録されます。固定値 0 と proc を配列にして返します。
ブロックを指定した場合は、そのブロックがファイナライザになります。
obj の回収時にブロックは obj の ID (BasicObject#__id__)を引数とし
て実行されます。
しかし、後述の問題があるのでブロックでファイナライザを登録するのは難しいでしょう。
@param obj ファイナライザを登録したいオブジェクトを指定します。
@param proc ファイナライザ... -
OpenStruct
# inspect -> String (27385.0) -
オブジェクトを人間が読める形式に変換した文字列を返します。
オブジェクトを人間が読める形式に変換した文字列を返します。
@see Object#inspect -
ObjectSpace
. # garbage _ collect(full _ mark: true , immediate _ sweep: true) -> nil (27349.0) -
どこからも参照されなくなったオブジェクトを回収します。 GC.start と同じです。
どこからも参照されなくなったオブジェクトを回収します。
GC.start と同じです。
@param full_mark マイナー GC を動作させる場合は false を、そうでない場
合は true を指定します。
@param immediate_sweep sweep を遅らせる(Lazy Sweep を行う)場合は false
を、そうでない場合は true を指定します。
注意: これらのキーワード引数は Ruby の実装やバージョンによって異なりま
す。将来のバージョンとの互換性も保証されませ... -
ObjectSpace
. # define _ finalizer(obj) {|id| . . . } -> Array (27103.0) -
obj が解放されるときに実行されるファイナライザ proc を 登録します。同じオブジェクトについて複数回呼ばれたときは置き換えで はなく追加登録されます。固定値 0 と proc を配列にして返します。
obj が解放されるときに実行されるファイナライザ proc を
登録します。同じオブジェクトについて複数回呼ばれたときは置き換えで
はなく追加登録されます。固定値 0 と proc を配列にして返します。
ブロックを指定した場合は、そのブロックがファイナライザになります。
obj の回収時にブロックは obj の ID (BasicObject#__id__)を引数とし
て実行されます。
しかし、後述の問題があるのでブロックでファイナライザを登録するのは難しいでしょう。
@param obj ファイナライザを登録したいオブジェクトを指定します。
@param proc ファイナライザ... -
ObjectSpace
. # memsize _ of _ all(klass = nil) -> Integer (27085.0) -
すべての生存しているオブジェクトが消費しているメモリ使用量をバイト単位 で返します。
すべての生存しているオブジェクトが消費しているメモリ使用量をバイト単位
で返します。
@param klass 指定したクラスのインスタンスのメモリ使用量を返します。省略
した場合はすべてのクラスのインスタンスのメモリ使用量を返し
ます。
本メソッドは以下のような Ruby のコードで定義できます。
//emlist[例][ruby]{
def memsize_of_all klass = false
total = 0
ObjectSpace.each_object{|e|
total += ObjectSpace.... -
OpenSSL
:: ASN1 :: ObjectId # oid -> String (27085.0) -
オブジェクト識別子のドット区切り数値を文字列で返します。
オブジェクト識別子のドット区切り数値を文字列で返します。
例:
require "openssl"
oid = OpenSSL::ASN1::ObjectId.new("subjectAltName")
p oid.oid #=> "2.5.29.17"
@raise OpenSSL::ASN1::ASN1Error オブジェクト識別子名が未知である場合に発生します