クラス
- BasicObject (4)
- CSV (2)
-
JSON
:: Parser (2) - Method (1)
- Module (20)
- Object (20)
- Prime (2)
- UnboundMethod (2)
-
WIN32OLE
_ RECORD (3)
モジュール
- Enumerable (2)
- Kernel (4)
- Singleton (1)
オブジェクト
- main (2)
キーワード
-
1
. 6 . 8から1 . 8 . 0への変更点(まとめ) (1) - === (2)
- Marshal フォーマット (1)
-
NEWS for Ruby 2
. 0 . 0 (1) -
NEWS for Ruby 2
. 1 . 0 (1) -
NEWS for Ruby 2
. 7 . 0 (1) -
NEWS for Ruby 3
. 2 . 0 (1) -
NEWS for Ruby 3
. 3 . 0 (1) -
NEWS for Ruby 3
. 4 . 0 (1) - Ruby プログラムの実行 (1)
- Ruby用語集 (1)
- Singleton (1)
-
bind
_ call (2) - class (1)
-
class
_ eval (2) -
class
_ variables (1) - constants (2)
-
define
_ method (2) - drb (1)
- each (2)
- eval (2)
-
global
_ variables (1) - grep (2)
-
initialize
_ copy (1) -
instance
_ eval (2) -
instance
_ exec (1) -
instance
_ method (1) -
instance
_ methods (1) -
instance
_ of? (1) -
instance
_ variable _ defined? (1) -
instance
_ variable _ get (1) -
instance
_ variable _ set (1) -
instance
_ variables (1) -
irb
/ completion (1) -
is
_ a? (1) -
kind
_ of? (1) -
local
_ variables (1) - method (1)
-
method
_ missing (1) - methods (1)
-
module
_ eval (2) - new (1)
-
ole
_ instance _ variable _ get (1) -
ole
_ instance _ variable _ set (1) - parameters (1)
- parse (1)
-
pretty
_ print _ instance _ variables (1) -
private
_ instance _ methods (1) -
private
_ methods (1) -
protected
_ instance _ methods (1) -
protected
_ methods (1) - public (4)
-
public
_ instance _ method (1) -
public
_ instance _ methods (1) -
public
_ method (1) -
public
_ methods (1) -
remove
_ class _ variable (1) -
remove
_ const (1) -
remove
_ instance _ variable (1) -
respond
_ to? (1) -
ruby 1
. 6 feature (1) -
ruby 1
. 8 . 4 feature (1) -
ruby 1
. 9 feature (1) -
singleton
_ method (1) -
singleton
_ method _ undefined (1) - クラス/メソッドの定義 (1)
- 変数と定数 (1)
- 記号一覧 (1)
検索結果
先頭5件
-
Object
# instance _ variable _ set(var , value) -> object (81787.0) -
オブジェクトのインスタンス変数 var に値 value を設定します。
オブジェクトのインスタンス変数 var に値 value を設定します。
インスタンス変数が定義されていなければ新たに定義されます。
- **param** `var` -- インスタンス変数名を文字列か [c:Symbol] で指定します。
- **param** `value` -- 設定する値です。
- **return** -- value を返します。
```ruby
obj = Object.new
p obj.instance_variable_set("@foo", 1) # => 1
p obj.instance_variable_set(:@foo, 2) #... -
Object
# instance _ variable _ get(var) -> object | nil (81769.0) -
オブジェクトのインスタンス変数の値を取得して返します。
オブジェクトのインスタンス変数の値を取得して返します。
インスタンス変数が定義されていなければ nil を返します。
- **param** `var` -- インスタンス変数名を文字列か [c:Symbol] で指定します。
```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_... -
Object
# remove _ instance _ variable(name) -> object (81661.0) -
オブジェクトからインスタンス変数 name を取り除き、そのインスタンス変数に設定されていた値を返します。
オブジェクトからインスタンス変数 name を取り除き、そのインスタンス変数に設定されていた値を返します。
- **param** `name` -- 削除するインスタンス変数の名前をシンボルか文字列で指定します。
- **raise** `NameError` -- オブジェクトがインスタンス変数 name を持たない場合に発生します。
```ruby
class Foo
def foo
@foo = 1
p remove_instance_variable(:@foo) # => 1
p remove_instance_variable(:@foo) # ... -
Object
# instance _ variable _ defined?(var) -> bool (81466.0) -
インスタンス変数 var が定義されていたら真を返します。
インスタンス変数 var が定義されていたら真を返します。
- **param** `var` -- インスタンス変数名を文字列か [c:Symbol] で指定します。
```ruby
class Fred
def initialize(p1, p2)
@a, @b = p1, p2
end
end
fred = Fred.new('cat', 99)
p fred.instance_variable_defined?(:@a) # => true
p fred.instance_variable_defined?("@b") # => true
p fred.... -
Object
# instance _ of?(klass) -> bool (81412.0) -
オブジェクトがクラス klass の直接のインスタンスである時真を返します。
オブジェクトがクラス klass の直接のインスタンスである時真を返します。
obj.instance_of?(c) が成立する時には、常に obj.kind_of?(c) も成立します。
- **param** `klass` -- [c:Class]かそのサブクラスのインスタンスです。
```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** [m:Obj... -
Object
# instance _ variables -> [Symbol] (81394.0) -
オブジェクトのインスタンス変数名をシンボルの配列として返します。
オブジェクトのインスタンス変数名をシンボルの配列として返します。
```ruby
obj = Object.new
obj.instance_eval { @foo, @bar = nil }
p obj.instance_variables
# => [:@foo, :@bar]
```
- **SEE** [m:Object#instance_variable_get], [m:Kernel?.local_variables], [m:Kernel?.global_variables], [m:Module.constants], [m:Module#constants], [m:... -
Object
# pretty _ print _ instance _ variables -> [String | Symbol] (81304.0) -
プリティプリント時に表示すべき自身のインスタンス変数名の配列をソートして返します。 返されたインスタンス変数はプリティプリント時に表示されます。
プリティプリント時に表示すべき自身のインスタンス変数名の配列をソートして返します。
返されたインスタンス変数はプリティプリント時に表示されます。
pp に表示したくないインスタンス変数がある場合にこのメソッドを再定義します。 -
Object
# initialize _ copy(obj) -> object (63628.0) -
(拡張ライブラリによる) ユーザ定義クラスのオブジェクトコピーの初期化メソッド。
(拡張ライブラリによる) ユーザ定義クラスのオブジェクトコピーの初期化メソッド。
このメソッドは self を obj の内容で置き換えます。
ただし、self のインスタンス変数や特異メソッドは変化しません。
デフォルトでは、[m:Object#clone] の内部で [m:Object#initialize_clone] から、また [m:Object#dup] の内部で [m:Object#initialize_dup] から呼ばれます。
initialize_copy は、Ruby インタプリタが知り得ない情報をコピーするために使用(定義)されます。例えば C 言語でクラスを実... -
Object
# methods(include _ inherited = true) -> [Symbol] (63451.0) -
そのオブジェクトに対して呼び出せるメソッド名の一覧を返します。 このメソッドは public メソッドおよび protected メソッドの名前を返します。
そのオブジェクトに対して呼び出せるメソッド名の一覧を返します。
このメソッドは public メソッドおよび protected メソッドの名前を返します。
ただし特別に、引数が偽の時は [m:Object#singleton_methods](false) と同じになっています。
- **param** `include_inherited` -- 引数が偽の時は [m:Object#singleton_methods](false) と同じになります。
```ruby title="例1"
class Parent
private; def private_parent()... -
Object
# method(name) -> Method (63145.0) -
オブジェクトのメソッド name をオブジェクト化した [c:Method] オブジェクトを返します。
オブジェクトのメソッド name をオブジェクト化した
[c:Method] オブジェクトを返します。
- **param** `name` -- メソッド名を[c:Symbol] または[c:String]で指定します。
- **raise** `NameError` -- 定義されていないメソッド名を引数として与えると発生します。
```ruby
me = -365.method(:abs)
p me # => #<Method: Integer#abs>
p me.call # => 365
```
[c:Method]・[c:UnboundMethod] オブジェクトを取得する... -
Object
# is _ a?(mod) -> bool (63109.0) -
オブジェクトが指定されたクラス mod かそのサブクラスのインスタンスであるとき真を返します。
オブジェクトが指定されたクラス mod かそのサブクラスのインスタンスであるとき真を返します。
また、オブジェクトがモジュール mod をインクルードしたクラスかそのサブクラスのインスタンスである場合にも真を返します。
[m:Module#include]だけではなく、[m:Object#extend]や[m:Module#prepend]によってサブクラスのインスタンスになる場合も含みます。
上記のいずれでもない場合に false を返します。
- **param** `mod` -- クラスやモジュールなど、[c:Module]かそのサブクラスのインスタンスです。
```ruby
... -
Object
# kind _ of?(mod) -> bool (63109.0) -
オブジェクトが指定されたクラス mod かそのサブクラスのインスタンスであるとき真を返します。
オブジェクトが指定されたクラス mod かそのサブクラスのインスタンスであるとき真を返します。
また、オブジェクトがモジュール mod をインクルードしたクラスかそのサブクラスのインスタンスである場合にも真を返します。
[m:Module#include]だけではなく、[m:Object#extend]や[m:Module#prepend]によってサブクラスのインスタンスになる場合も含みます。
上記のいずれでもない場合に false を返します。
- **param** `mod` -- クラスやモジュールなど、[c:Module]かそのサブクラスのインスタンスです。
```ruby
... -
Object
# singleton _ method(name) -> Method (63091.0) -
オブジェクトの特異メソッド name をオブジェクト化した [c:Method] オブジェクトを返します。
オブジェクトの特異メソッド name をオブジェクト化した [c:Method] オブジェクトを返します。
特異クラスに include / prepend されたモジュールのインスタンスメソッド(例えば [m:Object#extend] で追加したモジュールのメソッド)も対象になります。
- **param** `name` -- メソッド名を[c:Symbol] または[c:String]で指定します。
- **raise** `NameError` -- 定義されていないメソッド名を引数として与えると発生します。
```ruby
class Demo
def initial... -
Object
# ===(other) -> bool (63073.0) -
case 式で使用されるメソッドです。[ref:d:spec/control#case] も参照してください。
case 式で使用されるメソッドです。[ref:d:spec/control#case] も参照してください。
このメソッドは case 式での振る舞いを考慮して、各クラスの性質に合わせて再定義すべきです。
デフォルトでは内部で [m:Object#==] を呼び出します。
when 節の式をレシーバーとして === を呼び出すことに注意してください。
また [m:Enumerable#grep] でも使用されます。
- **param** `other` -- 比較するオブジェクトです。
```ruby
age = 12
# (0..2).===(12), (3..6).===... -
Object
# class -> Class (63073.0) -
レシーバのクラスを返します。
レシーバのクラスを返します。
```ruby
p "ruby".class # => String
p 100.class # => Integer
p ARGV.class # => Array
p self.class # => Object
p Class.class # => Class
p Kernel.class # => Module
```
- **SEE** [m:Class#superclass],[m:Object#kind_of?],[m:Object#instance_of?] -
Object
# private _ methods(include _ inherited = true) -> [Symbol] (63055.0) -
そのオブジェクトが理解できる private メソッド名の一覧を返します。
そのオブジェクトが理解できる private メソッド名の一覧を返します。
- **param** `include_inherited` -- 偽となる値を指定すると自身のクラスのスーパークラスで定義されたメソッドを除きます。
- **SEE** [m:Module#private_instance_methods],[m:Object#methods],[m:Object#singleton_methods] -
Object
# protected _ methods(include _ inherited = true) -> [Symbol] (63055.0) -
そのオブジェクトが理解できる protected メソッド名の一覧を返します。
そのオブジェクトが理解できる protected メソッド名の一覧を返します。
- **param** `include_inherited` -- 偽となる値を指定すると自身のクラスのスーパークラスで定義されたメソッドを除きます。
- **SEE** [m:Module#protected_instance_methods],[m:Object#methods],[m:Object#singleton_methods] -
Object
# public _ method(name) -> Method (63055.0) -
オブジェクトの public メソッド name をオブジェクト化した [c:Method] オブジェクトを返します。
オブジェクトの public メソッド name をオブジェクト化した
[c:Method] オブジェクトを返します。
- **param** `name` -- メソッド名を [c:Symbol] または [c:String] で指定します。
- **raise** `NameError` -- 定義されていないメソッド名や、
protected メソッド名、 private メソッド名を引数として与えると発生します。
```ruby
p 1.public_method(:to_int) #=> #<Method: Integer#to_int>
1.public_met... -
Object
# public _ methods(include _ inherited = true) -> [Symbol] (63055.0) -
そのオブジェクトが理解できる public メソッド名の一覧を返します。
そのオブジェクトが理解できる public メソッド名の一覧を返します。
- **param** `include_inherited` -- 偽となる値を指定すると自身のクラスのスーパークラスで定義されたメソッドを除きます。
- **SEE** [m:Module#public_instance_methods],[m:Object#methods],[m:Object#singleton_methods] -
Object
# respond _ to?(name , include _ all = false) -> bool (63037.0) -
オブジェクトがメソッド name を持つとき真を返します。
オブジェクトがメソッド name を持つとき真を返します。
オブジェクトが メソッド name を持つというのは、オブジェクトが メソッド name に応答できることをいいます。
Windows での [m:Process.fork] や GNU/Linux での [m:File.lchmod] のような [c:NotImplementedError] が発生する場合は false を返します。
※ NotImplementedError が発生する場合に false を返すのは
Rubyの組み込みライブラリや標準ライブラリなど、C言語で実装されているメソッドのみです。
Rubyで実装... -
CSV
. instance(data = $ stdout , **options) {|csv| . . . } -> object (54778.0) -
このメソッドは [m:CSV.new] のように [c:CSV] のインスタンスを返します。 しかし、返される値は [m:Object#object_id] と与えられたオプションをキーとしてキャッシュされます。
このメソッドは [m:CSV.new] のように [c:CSV] のインスタンスを返します。
しかし、返される値は [m:Object#object_id] と与えられたオプションをキーとしてキャッシュされます。
ブロックが与えられた場合、生成されたインスタンスをブロックに渡して評価した結果を返します。
- **param** `data` -- [c:String] か [c:IO] のインスタンスを指定します。
- **param** `options` -- [m:CSV.new] のオプションと同じオプションを指定できます。
```ruby title="例"
require... -
Singleton
. instance -> object (54607.0) -
そのクラスの唯一のインスタンスを返します。 最初に呼ばれたときはそのインスタンスを生成します。
そのクラスの唯一のインスタンスを返します。
最初に呼ばれたときはそのインスタンスを生成します。
Singleton を include したクラスで定義されますので、正確には Singleton モジュールのメソッドではありません。 -
CSV
. instance(data = $ stdout , **options) -> CSV (54478.0) -
このメソッドは [m:CSV.new] のように [c:CSV] のインスタンスを返します。 しかし、返される値は [m:Object#object_id] と与えられたオプションをキーとしてキャッシュされます。
このメソッドは [m:CSV.new] のように [c:CSV] のインスタンスを返します。
しかし、返される値は [m:Object#object_id] と与えられたオプションをキーとしてキャッシュされます。
ブロックが与えられた場合、生成されたインスタンスをブロックに渡して評価した結果を返します。
- **param** `data` -- [c:String] か [c:IO] のインスタンスを指定します。
- **param** `options` -- [m:CSV.new] のオプションと同じオプションを指定できます。
```ruby title="例"
require... -
BasicObject
# instance _ eval {|obj| . . . } -> object (27847.0) -
オブジェクトのコンテキストで文字列 expr またはオブジェクト自身をブロックパラメータとするブロックを評価してその結果を返します。
オブジェクトのコンテキストで文字列 expr またはオブジェクト自身をブロックパラメータとするブロックを評価してその結果を返します。
オブジェクトのコンテキストで評価するとは評価中の self をそのオブジェクトにして実行するということです。
また、文字列 expr やブロック中でメソッドを定義すればそのオブジェクトの特異メソッドが定義されます。
ただし、ローカル変数だけは、文字列 expr の評価では instance_eval の外側のスコープと、ブロックの評価ではそのブロックの外側のスコープと、共有します。
メソッド定義の中で instance_eval でメソッドを定義した場合... -
BasicObject
# instance _ eval(expr , filename = "(eval)" , lineno = 1) -> object (27847.0) -
オブジェクトのコンテキストで文字列 expr またはオブジェクト自身をブロックパラメータとするブロックを評価してその結果を返します。
オブジェクトのコンテキストで文字列 expr またはオブジェクト自身をブロックパラメータとするブロックを評価してその結果を返します。
オブジェクトのコンテキストで評価するとは評価中の self をそのオブジェクトにして実行するということです。
また、文字列 expr やブロック中でメソッドを定義すればそのオブジェクトの特異メソッドが定義されます。
ただし、ローカル変数だけは、文字列 expr の評価では instance_eval の外側のスコープと、ブロックの評価ではそのブロックの外側のスコープと、共有します。
メソッド定義の中で instance_eval でメソッドを定義した場合... -
BasicObject
# instance _ exec(*args) {|*vars| . . . } -> object (27643.0) -
与えられたブロックをレシーバのコンテキストで実行します。
与えられたブロックをレシーバのコンテキストで実行します。
ブロック実行中は、 self がレシーバのコンテキストになるのでレシーバの持つインスタンス変数にアクセスできます。
- **param** `args` -- ブロックパラメータに渡す値です。
```ruby title="例"
class KlassWithSecret
def initialize
@secret = 99
end
end
k = KlassWithSecret.new
# 以下で x には 5 が渡される
p k.instance_exec(5) {|x| @secret + x } # =... -
WIN32OLE
_ RECORD # ole _ instance _ variable _ get(name) -> object (18859.0) -
VT_RECORD OLE変数のメンバ名に対応する値を取得します。メンバ名が正しくない場合は[c:KeyError]が発生します。
VT_RECORD OLE変数のメンバ名に対応する値を取得します。メンバ名が正しくない場合は[c:KeyError]が発生します。
Rubyの[c:Object]が持つメソッドと同名のメンバを持つなど、メンバに
[m:WIN32OLE_RECORD#method_missing]経由で直接アクセスできない場合に利用します。
- **param** `name` -- 取得するメンバ名を文字列またはシンボルで指定します。
- **return** -- 指定したメンバの値を返します。
- **raise** `TypeError` -- nameがStringまたはSymbolではありま... -
Module
# instance _ methods(inherited _ too = true) -> [Symbol] (18682.0) -
そのモジュールで定義されている public および protected メソッド名の一覧を配列で返します。
そのモジュールで定義されている public および protected メソッド名の一覧を配列で返します。
- **param** `inherited_too` -- false を指定するとそのモジュールで定義されているメソッドのみ返します。
- **SEE** [m:Object#methods], [m:Module#public_instance_methods], [m:Module#private_instance_methods], [m:Module#protected_instance_methods]
```ruby title="例1"
class Cat
... -
WIN32OLE
_ RECORD # ole _ instance _ variable _ set(name , val) -> object (18643.0) -
VT_RECORD OLE変数のメンバ名に対応する値を設定します。メンバ名が正しくない場合は[c:KeyError]が発生します。
VT_RECORD OLE変数のメンバ名に対応する値を設定します。メンバ名が正しくない場合は[c:KeyError]が発生します。
[m:WIN32OLE_RECORD#method_missing]経由でメンバの値を直接設定できない場合に利用します。
- **param** `name` -- 設定するメンバ名を文字列またはシンボルで指定します。
- **param** `val` -- 設定する値を指定します。
- **return** -- 設定した値を返します。
- **raise** `TypeError` -- nameがStringまたはSymbolではありません。
- ... -
Module
# instance _ method(name) -> UnboundMethod (18412.0) -
self のインスタンスメソッド name をオブジェクト化した [c:UnboundMethod] を返します。
self のインスタンスメソッド name をオブジェクト化した [c:UnboundMethod] を返します。
- **param** `name` -- メソッド名を [c:Symbol] または [c:String] で指定します。
- **raise** `NameError` -- self に存在しないメソッドを指定した場合に発生します。
- **SEE** [m:Module#public_instance_method], [m:Object#method]
```ruby title="例"
class Interpreter
def do_a() print... -
Module
# private _ instance _ methods(inherited _ too = true) -> [Symbol] (18412.0) -
そのモジュールで定義されている private メソッド名の一覧を配列で返します。
そのモジュールで定義されている private メソッド名の一覧を配列で返します。
- **param** `inherited_too` -- false を指定するとそのモジュールで定義されているメソッドのみ返します。
- **SEE** [m:Object#private_methods], [m:Module#instance_methods], [m:Module#public_instance_methods], [m:Module#protected_instance_methods]
```ruby title="例"
module Taggable
def foo... -
Module
# public _ instance _ method(name) -> UnboundMethod (18412.0) -
self の public インスタンスメソッド name をオブジェクト化した [c:UnboundMethod] を返します。
self の public インスタンスメソッド name をオブジェクト化した [c:UnboundMethod] を返します。
- **param** `name` -- メソッド名を [c:Symbol] または [c:String] で指定します。
- **raise** `NameError` -- 定義されていないメソッド名や、
protected メソッド名、 private メソッド名を引数として与えると発生します。
```ruby title="例"
p Kernel.public_instance_method(:object_id) #=> #<Un... -
Module
# protected _ instance _ methods(inherited _ too = true) -> [Symbol] (18376.0) -
そのモジュールで定義されている protected メソッド名の一覧を配列で返します。
そのモジュールで定義されている protected メソッド名の一覧を配列で返します。
- **param** `inherited_too` -- false を指定するとそのモジュールで定義されているメソッドのみ返します。
- **SEE** [m:Object#protected_methods], [m:Module#instance_methods], [m:Module#public_instance_methods], [m:Module#private_instance_methods] -
Module
# public _ instance _ methods(inherited _ too = true) -> [Symbol] (18376.0) -
そのモジュールで定義されている public メソッド名の一覧を配列で返します。
そのモジュールで定義されている public メソッド名の一覧を配列で返します。
- **param** `inherited_too` -- false を指定するとそのモジュールで定義されているメソッドのみ返します。
- **SEE** [m:Object#public_methods], [m:Module#instance_methods], [m:Module#private_instance_methods], [m:Module#protected_instance_methods] -
BasicObject
# singleton _ method _ undefined(name) -> object (9322.0) -
特異メソッドが [m:Module#undef_method] または undef により未定義にされた時にインタプリタから呼び出されます。
特異メソッドが [m:Module#undef_method] または
undef により未定義にされた時にインタプリタから呼び出されます。
通常のメソッドの未定義に対するフックには
[m:Module#method_undefined] を使います。
- **param** `name` -- 未定義にされたメソッド名が [c:Symbol] で渡されます。
```ruby title="例"
class Foo
def singleton_method_undefined(name)
puts "singleton method \"#{name}\" was unde... -
1
. 6 . 8から1 . 8 . 0への変更点(まとめ) (1567.0) -
1.6.8から1.8.0への変更点(まとめ) * ((<1.6.8から1.8.0への変更点(まとめ)/インタプリタの変更>)) * ((<1.6.8から1.8.0への変更点(まとめ)/追加されたクラス/モジュール>)) * ((<1.6.8から1.8.0への変更点(まとめ)/追加されたメソッド>)) * ((<1.6.8から1.8.0への変更点(まとめ)/追加された定数>)) * ((<1.6.8から1.8.0への変更点(まとめ)/拡張されたクラス/メソッド(互換性のある変更)>)) * ((<1.6.8から1.8.0への変更点(まとめ)/変更されたクラス/メソッド(互換性のない変更)>)) * ((<1.6.8から1.8.0への変更点(まとめ)/文法の変更>)) * ((<1.6.8から1.8.0への変更点(まとめ)/正規表現>)) * ((<1.6.8から1.8.0への変更点(まとめ)/Marshal>)) * ((<1.6.8から1.8.0への変更点(まとめ)/Windows 対応>)) * ((<1.6.8から1.8.0への変更点(まとめ)/廃止された(される予定の)機能>)) * ((<1.6.8から1.8.0への変更点(まとめ)/ライブラリ>)) * ((<1.6.8から1.8.0への変更点(まとめ)/拡張ライブラリAPI>)) * ((<1.6.8から1.8.0への変更点(まとめ)/バグ修正>)) * ((<1.6.8から1.8.0への変更点(まとめ)/サポートプラットフォームの追加>))
1.6.8から1.8.0への変更点(まとめ)
* ((<1.6.8から1.8.0への変更点(まとめ)/インタプリタの変更>))
* ((<1.6.8から1.8.0への変更点(まとめ)/追加されたクラス/モジュール>))
* ((<1.6.8から1.8.0への変更点(まとめ)/追加されたメソッド>))
* ((<1.6.8から1.8.0への変更点(まとめ)/追加された定数>))
* ((<1.6.8から1.8.0への変更点(まとめ)/拡張されたクラス/メソッド(互換性のある変更)>))
* ((<1.6.8から1.8.0への変更点(まとめ)/変更されたクラス/メソッド(互換性のない変更)>))... -
Ruby用語集 (559.0)
-
Ruby用語集 [ref:A] [ref:B] [ref:C] [ref:D] [ref:E] [ref:F] [ref:G] [ref:I] [ref:J] [ref:M] [ref:N] [ref:O] [ref:R] [ref:S] [ref:Y]
Ruby用語集
[ref:A] [ref:B] [ref:C] [ref:D] [ref:E] [ref:F] [ref:G] [ref:I] [ref:J] [ref:M] [ref:N] [ref:O] [ref:R] [ref:S] [ref:Y]
[ref:a] [ref:ka] [ref:sa] [ref:ta] [ref:na] [ref:ha] [ref:ma] [ref:ya] [ref:ra] [ref:wa]
### 記号・数字
- **%記法**: {#percent-notation}
- **% notation**:
「%」記号で始まる多種多様なリテラル... -
ruby 1
. 6 feature (487.0) -
ruby 1.6 feature ruby version 1.6 は安定版です。この版での変更はバグ修正がメインになります。
ruby 1.6 feature
ruby version 1.6 は安定版です。この版での変更はバグ修正がメインになります。
((<stable-snapshot|URL:ftp://ftp.netlab.co.jp/pub/lang/ruby/stable-snapshot.tar.gz>)) は、日々更新される安定版の最新ソースです。
## 1.6.8 (2002-12-24) -> stable-snapshot
- **`2003-01-22: errno`**:
EAGAIN と EWOULDBLOCK が同じ値のシステムで、EWOULDBLOCK がなくなっ
... -
Kernel
. # eval(expr) -> object (379.0) -
文字列 expr を Ruby プログラムとして評価してその結果を返します。第2引数に [c:Binding] オブジェクトを与えた場合、そのオブジェクトを生成したコンテキストで文字列を評価します。
文字列 expr を Ruby プログラムとして評価してその結果を返します。第2引数に
[c:Binding] オブジェクトを与えた場合、そのオブジェクトを生成したコンテキストで文字列を評価します。
expr の中のローカル変数の扱いはブロックの場合と同じです。すなわち、eval
実行前に定義されていた変数を eval の中で参照・変更でき、その変更は
eval 実行後にも引き継がれます。
fname と lineno が与えられた場合には、ファイル
fname の行番号 lineno から文字列 expr が書かれているかのようにコンパイルされます。スタックトレースの表示などを差し替え... -
Kernel
. # eval(expr , bind , fname = "(eval)" , lineno = 1) -> object (379.0) -
文字列 expr を Ruby プログラムとして評価してその結果を返します。第2引数に [c:Binding] オブジェクトを与えた場合、そのオブジェクトを生成したコンテキストで文字列を評価します。
文字列 expr を Ruby プログラムとして評価してその結果を返します。第2引数に
[c:Binding] オブジェクトを与えた場合、そのオブジェクトを生成したコンテキストで文字列を評価します。
expr の中のローカル変数の扱いはブロックの場合と同じです。すなわち、eval
実行前に定義されていた変数を eval の中で参照・変更でき、その変更は
eval 実行後にも引き継がれます。
fname と lineno が与えられた場合には、ファイル
fname の行番号 lineno から文字列 expr が書かれているかのようにコンパイルされます。スタックトレースの表示などを差し替え... -
Prime
. each(upper _ bound = nil , generator = EratosthenesGenerator . new) {|prime| . . . } -> object (352.0) -
Prime.instance.each と同じです。
Prime.instance.each と同じです。
- **param** `upper_bound` -- 任意の正の整数を指定します。列挙の上界です。
nil が与えられた場合は無限に列挙し続けます。
- **param** `generator` -- 素数生成器のインスタンスを指定します。
- **return** -- ブロックの最後に評価された値を返します。
ブロックが与えられなかった場合は、[c:Enumerator] と互換性のある外部イテレータを返します。
- **SEE** [m:Prime#each] -
Marshal フォーマット (343.0)
-
Marshal フォーマット フォーマットバージョン 4.8 を元に記述しています。
Marshal フォーマット
フォーマットバージョン 4.8 を元に記述しています。
### nil, true, false
それぞれ、'0', 'T', 'F' になります。
```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 されません。
Ruby 2.2... -
JSON
:: Parser # parse -> object (340.0) -
現在のソースをパースして結果を Ruby のオブジェクトとして返します。
現在のソースをパースして結果を Ruby のオブジェクトとして返します。
```ruby title="例"
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
pe... -
Module
# remove _ class _ variable(name) -> object (340.0) -
引数で指定したクラス変数を取り除き、そのクラス変数に設定されていた値を返します。
引数で指定したクラス変数を取り除き、そのクラス変数に設定されていた値を返します。
- **param** `name` -- [c:String] または [c:Symbol] を指定します。
- **return** -- 引数で指定されたクラス変数に設定されていた値を返します。
- **raise** `NameError` -- 引数で指定されたクラス変数がそのモジュールやクラスに定義されていない場合に発生します。
```ruby title="例"
class Counter
@@count = 1
p remove_class_variable(:@@count) ... -
Module
# remove _ const(name) -> object (340.0) -
name で指定した定数を取り除き、その定数に設定されていた値を返します。
name で指定した定数を取り除き、その定数に設定されていた値を返します。
- **param** `name` -- [c:String] または [c:Symbol] を指定します。
- **return** -- 引数で指定された定数に設定されていた値を返します。
- **raise** `NameError` -- 引数で指定された定数がそのモジュールやクラスに定義されていない場合に発生します。
```ruby title="例"
class Registry
VALUE = 1
p remove_const(:VALUE) # => 1
VALUE ... -
WIN32OLE
_ RECORD # method _ missing(name , *args) -> object (340.0) -
VT_RECORD OLE変数のメンバ名に対応する値を取得、または設定します。
VT_RECORD OLE変数のメンバ名に対応する値を取得、または設定します。
引数がnameだけの場合(`book.title`のようにgetterとして未定義メソッドが呼び出された場合)はメンバの値を取得します。引数がname、valの2つの場合(`book.title = "..."`のようにsetterとして未定義メソッドが呼び出された場合)は、nameの末尾の「=」を取り除いたメンバ名にvalを設定します。指定したメンバ名が存在しない場合は[c:KeyError]が発生します。
- **param** `name` -- アクセスするメンバ名に対応するメソッド名(シンボル)です... -
変数と定数 (337.0)
-
変数と定数 - [ref:local] - [ref:instance] - [ref:class] - [ref:class_var_scope] - [ref:global] - [ref:pseudo] - [ref:const] - [ref:prio]
変数と定数
- [ref:local]
- [ref:instance]
- [ref:class]
- [ref:class_var_scope]
- [ref:global]
- [ref:pseudo]
- [ref:const]
- [ref:prio]
Ruby の変数と定数の種別は変数名の最初の一文字によって、以下のいずれかに区別されます。
- ローカル変数
- インスタンス変数
- クラス変数
- グローバル変数
- 定数
通常の変数の二文字目以降は英数字または
`_` ですが、組み込み変数の一部には「`$` + 1 文字の記号」という変数... -
Module
# class _ eval {|mod| . . . } -> object (331.0) -
モジュールのコンテキストで文字列 expr またはモジュール自身をブロックパラメータとするブロックを評価してその結果を返します。
モジュールのコンテキストで文字列 expr またはモジュール自身をブロックパラメータとするブロックを評価してその結果を返します。
モジュールのコンテキストで評価するとは、実行中そのモジュールが self になるということです。
つまり、そのモジュールの定義式の中にあるかのように実行されます。
ただし、ローカル変数は module_eval/class_eval の外側のスコープと共有します。
定数とクラス変数のスコープは、文字列が与えられた場合とブロックが与えられた場合で挙動が異なります。
文字列が与えられた場合には、定数とクラス変数のスコープは自身のモジュール定義式内と同じスコープに... -
Module
# class _ eval(expr , fname = "(eval)" , lineno = 1) -> object (331.0) -
モジュールのコンテキストで文字列 expr またはモジュール自身をブロックパラメータとするブロックを評価してその結果を返します。
モジュールのコンテキストで文字列 expr またはモジュール自身をブロックパラメータとするブロックを評価してその結果を返します。
モジュールのコンテキストで評価するとは、実行中そのモジュールが self になるということです。
つまり、そのモジュールの定義式の中にあるかのように実行されます。
ただし、ローカル変数は module_eval/class_eval の外側のスコープと共有します。
定数とクラス変数のスコープは、文字列が与えられた場合とブロックが与えられた場合で挙動が異なります。
文字列が与えられた場合には、定数とクラス変数のスコープは自身のモジュール定義式内と同じスコープに... -
Module
# module _ eval {|mod| . . . } -> object (331.0) -
モジュールのコンテキストで文字列 expr またはモジュール自身をブロックパラメータとするブロックを評価してその結果を返します。
モジュールのコンテキストで文字列 expr またはモジュール自身をブロックパラメータとするブロックを評価してその結果を返します。
モジュールのコンテキストで評価するとは、実行中そのモジュールが self になるということです。
つまり、そのモジュールの定義式の中にあるかのように実行されます。
ただし、ローカル変数は module_eval/class_eval の外側のスコープと共有します。
定数とクラス変数のスコープは、文字列が与えられた場合とブロックが与えられた場合で挙動が異なります。
文字列が与えられた場合には、定数とクラス変数のスコープは自身のモジュール定義式内と同じスコープに... -
Module
# module _ eval(expr , fname = "(eval)" , lineno = 1) -> object (331.0) -
モジュールのコンテキストで文字列 expr またはモジュール自身をブロックパラメータとするブロックを評価してその結果を返します。
モジュールのコンテキストで文字列 expr またはモジュール自身をブロックパラメータとするブロックを評価してその結果を返します。
モジュールのコンテキストで評価するとは、実行中そのモジュールが self になるということです。
つまり、そのモジュールの定義式の中にあるかのように実行されます。
ただし、ローカル変数は module_eval/class_eval の外側のスコープと共有します。
定数とクラス変数のスコープは、文字列が与えられた場合とブロックが与えられた場合で挙動が異なります。
文字列が与えられた場合には、定数とクラス変数のスコープは自身のモジュール定義式内と同じスコープに... -
Enumerable
# grep(pattern) -> [object] (325.0) -
pattern === item が成立する要素を全て含んだ配列を返します。
pattern === item が成立する要素を全て含んだ配列を返します。
ブロックとともに呼び出された時には条件の成立した要素に対してそれぞれブロックを評価し、その結果の配列を返します。
マッチする要素がひとつもなかった場合は空の配列を返します。
- **param** `pattern` -- 「===」メソッドを持つオブジェクトを指定します。
```ruby title="例"
p ['aa', 'bb', 'cc', 'dd', 'ee'].grep(/[bc]/) # => ["bb", "cc"]
p Array.instance_methods.grep(/gr... -
Enumerable
# grep(pattern) {|item| . . . } -> [object] (325.0) -
pattern === item が成立する要素を全て含んだ配列を返します。
pattern === item が成立する要素を全て含んだ配列を返します。
ブロックとともに呼び出された時には条件の成立した要素に対してそれぞれブロックを評価し、その結果の配列を返します。
マッチする要素がひとつもなかった場合は空の配列を返します。
- **param** `pattern` -- 「===」メソッドを持つオブジェクトを指定します。
```ruby title="例"
p ['aa', 'bb', 'cc', 'dd', 'ee'].grep(/[bc]/) # => ["bb", "cc"]
p Array.instance_methods.grep(/gr... -
UnboundMethod
# bind _ call(recv , *args) -> object (325.0) -
self を recv に bind して args を引数として呼び出します。
self を recv に bind して args を引数として呼び出します。
self.bind(recv).call(*args) と同じ意味です。
```ruby
puts Kernel.instance_method(:inspect).bind_call(BasicObject.new) # => #<BasicObject:0x000055c65e8ea7b8>
```
- **SEE** [m:UnboundMethod#bind], [m:Method#call] -
UnboundMethod
# bind _ call(recv , *args) { . . . } -> object (325.0) -
self を recv に bind して args を引数として呼び出します。
self を recv に bind して args を引数として呼び出します。
self.bind(recv).call(*args) と同じ意味です。
```ruby
puts Kernel.instance_method(:inspect).bind_call(BasicObject.new) # => #<BasicObject:0x000055c65e8ea7b8>
```
- **SEE** [m:UnboundMethod#bind], [m:Method#call] -
Method
# parameters -> [object] (322.0) -
Method オブジェクトの引数の情報を返します。
Method オブジェクトの引数の情報を返します。
Method オブジェクトが引数を取らなければ空の配列を返します。引数を取る場合は、配列の配列を返し、各配列の要素は引数の種類に応じた以下のような Symbol と、仮引数の名前を表す Symbol の 2 要素です。
組み込みのメソッドでは、仮引数の名前が取れません。
- **`:req`**:
必須の引数
- **`:opt`**:
デフォルト値が指定されたオプショナルな引数
- **`:rest`**:
* で指定された残りすべての引数
- **`:keyreq`**:
必須のキーワード引数
- **`:key`*... -
NEWS for Ruby 3
. 2 . 0 (307.0) -
NEWS for Ruby 3.2.0 このドキュメントは前回リリース以降のバグ修正を除くユーザーに影響のある機能の変更のリストです。
...な限り追加されました。 [feature:19135]
- 以下の default gems のバージョンがアップデートされました。
- RubyGems 3.4.1
- abbrev 0.1.1
- benchmark 0.2.1
- bigdecimal 3.1.3
- bundler 2.4.1
- cgi 0.3.6
- csv 3.2.6
- date 3.3.3
- delegate 0.3.0
- did_y......ージョンがアップデートされました。
- minitest 5.16.3
- power_assert 2.0.3
- test-unit 3.5.7
- net-ftp 0.2.0
- net-imap 0.3.4
- net-pop 0.1.2
- net-smtp 0.3.3
- rbs 2.8.2
- typeprof 0.21.3
- debug 1.7.1
default gems と bundled gems の詳細については GitHu......libyaml-source-dir=/path/to/libyaml-0.2.5
```
- 同様に、libffi-3.4.4 を fiddle にリンクする場合は以下のように実行します。
```
$ ./configure --with-libffi-source-dir=/path/to/libffi-3.4.4
```
- [feature:18571]
- CGI::Cookie の Cookie name/path/doma... -
NEWS for Ruby 2
. 1 . 0 (235.0) -
NEWS for Ruby 2.1.0 このドキュメントは前回リリース以降のバグ修正を除くユーザーに影響のある機能の変更のリストです。
NEWS for Ruby 2.1.0
このドキュメントは前回リリース以降のバグ修正を除くユーザーに影響のある機能の変更のリストです。
それぞれのエントリーは参照情報があるため短いです。
十分な情報と共に書かれた全ての変更のリストは ChangeLog ファイルか bugs.ruby-lang.org の issue を参照してください。
## 2.0.0 以降の変更
### 言語仕様の変更
- キーワード引数のデフォルト値が省略可能になりました。これらの「必須キーワード引数」は呼び出し時に明示的に与えなければなりません。
- 整数や小数のリテラルの末尾に'r','i','... -
NEWS for Ruby 2
. 0 . 0 (181.0) -
NEWS for Ruby 2.0.0 このドキュメントは前回リリース以降のバグ修正を除くユーザーに影響のある機能の変更のリストです。
NEWS for Ruby 2.0.0
このドキュメントは前回リリース以降のバグ修正を除くユーザーに影響のある機能の変更のリストです。
それぞれのエントリーは参照情報があるため短いです。
十分な情報と共に書かれた全ての変更のリストは ChangeLog ファイルか bugs.ruby-lang.org の issue を参照してください。
## 1.9.3 以降の変更
### 言語仕様の変更
- キーワード引数を追加しました
- %i, %I をシンボルの配列作成のために追加しました。(%w, %W に似ています)
- デフォルトのソースエンコーディングを US-ASCI... -
NEWS for Ruby 2
. 7 . 0 (181.0) -
NEWS for Ruby 2.7.0 このドキュメントは前回リリース以降のバグ修正を除くユーザーに影響のある機能の変更のリストです。
NEWS for Ruby 2.7.0
このドキュメントは前回リリース以降のバグ修正を除くユーザーに影響のある機能の変更のリストです。
それぞれのエントリーは参照情報があるため短いです。
十分な情報と共に書かれた全ての変更のリストは ChangeLog ファイルか bugs.ruby-lang.org の issue を参照してください。
## 2.6.0 以降の変更
### 言語仕様の変更
#### パターンマッチ
- パターンマッチが実験的機能として導入されました。 [feature:14912]
```ruby
case [0, [1, 2, 3]]
... -
Ruby プログラムの実行 (163.0)
-
Ruby プログラムの実行 ### Ruby プログラム
Ruby プログラムの実行
### Ruby プログラム
Ruby プログラムの実行は文の連なりの評価です。なんらかの形であたえられたプログラムテキストをコンパイルし、BEGIN 文があればそれを評価し、トップレベルの式の連なりを評価し、END ブロックがあれば最後にそれを評価して終了します (終了処理の詳細については [d:spec/terminate] を参照のこと)。
### 文
#### if
if 文は、まず条件式を評価し、その値が真ならば対応する本体を評価します。
偽ならば elsif 節の条件式を順番に評価し、その値が初めて真になった節の本体を評価します。それらがすべて... -
クラス/メソッドの定義 (163.0)
-
クラス/メソッドの定義 - クラス/メソッドの定義: - [ref:class] - [ref:singleton_class] - [ref:module] - [ref:method] - [ref:operator] - [ref:nest_method] - [ref:eval_method] - [ref:singleton_method] - [ref:class_method] - [ref:limit] - 定義に関する操作: - [ref:alias] - [ref:undef] - [ref:defined]
クラス/メソッドの定義
- クラス/メソッドの定義:
- [ref:class]
- [ref:singleton_class]
- [ref:module]
- [ref:method]
- [ref:operator]
- [ref:nest_method]
- [ref:eval_method]
- [ref:singleton_method]
- [ref:class_method]
- [ref:limit]
- 定義に関する操作:
- [ref:alias]
- [ref:un... -
irb
/ completion (145.0) -
irb の completion 機能を提供するライブラリです。
irb の completion 機能を提供するライブラリです。
### 使い方
```console
$ irb -r irb/completion
```
とするか, ~/.irbrc 中に
```ruby
require "irb/completion"
```
を入れてください.
irb実行中に require "irb/completion" してもよいです.
irb 実行中に [Tab] を押すとコンプレーションします.
トップレベルで [Tab] を押すとすべての構文要素, クラス,
メソッドの候補がでます. 候補が唯一ならば完全に補完します.
```irb
ir... -
ruby 1
. 8 . 4 feature (145.0) -
ruby 1.8.4 feature ruby 1.8.4 での ruby 1.8.3 からの変更点です。
ruby 1.8.4 feature
ruby 1.8.4 での ruby 1.8.3 からの変更点です。
掲載方針
*バグ修正の影響も含めて動作が変わるものを収録する。
*単にバグを直しただけのものは収録しない。
*ライブラリへの単なる定数の追加は収録しない。
以下は各変更点に付けるべきタグです。
記号について(特に重要なものは大文字(主観))
\# * カテゴリ
\# * [ruby]: ruby インタプリタの変更
\# * [api]: 拡張ライブラリ API
\# * [lib]: ライブラリ
* レベル
- [bug]: バグ修正
- [new]: ... -
drb (127.0)
-
分散オブジェクトプログラミングのためのライブラリです。
分散オブジェクトプログラミングのためのライブラリです。
Ruby のプロセスから他のRubyプロセスにあるオブジェクトのメソッドを呼びだすことができます。他のマシン上のプロセスにもアクセスできます。
### 概要
dRuby は Ruby 専用の分散オブジェクトシステムです。
Ruby のみで記述され、TCP socket のような Ruby 本体が提供する通信手段があれば追加のインストール物なしに利用可能です。
独自のプロトコルで通信し、他の分散オブジェクトシステム
(CORBA, RMI, .NETなど)との相互運用性はありません。
dRuby は
- 他のプロセスと Ruby... -
Module
# constants(inherit = true) -> [Symbol] (109.0) -
そのモジュール(またはクラス)で定義されている定数名の配列を返します。
そのモジュール(またはクラス)で定義されている定数名の配列を返します。
inherit に真を指定するとスーパークラスやインクルードしているモジュールの定数も含みます。
[c:Object] のサブクラスの場合、Objectやそのスーパークラスで定義されている定数は含まれません。 Object.constants とすると Object クラスで定義された定数の配列が得られます。
得られる定数の順序は保証されません。
- **param** `inherit` -- true を指定するとスーパークラスや include したモジュールで定義された定数が対象にはなります。false を... -
NEWS for Ruby 3
. 4 . 0 (109.0) -
NEWS for Ruby 3.4.0 このドキュメントは前回リリース以降のバグ修正を除くユーザーに影響のある機能の変更のリストです。
...NEWS for Ruby 3.4.0
このドキュメントは前回リリース以降のバグ修正を除くユーザーに影響のある機能の変更のリストです。
それぞれのエントリーは参照情報があるため短いです。
十分な情報と共に書かれた全ての変更のリス......gems/rubygems/releases/tag/bundler-v2.6.2)
- [date](https://github.com/ruby/date) 3.4.1
- 3.3.4 から [v3.4.0](https://github.com/ruby/date/releases/tag/v3.4.0), [v3.4.1](https://github.com/ruby/date/releases/tag/v3.4.1)
- [delegate](https://github.com/ruby/delegate) 0.4.0
- 0.3.1 から [v0.4.......test-unit/test-unit/releases/tag/3.6.6), [3.6.7](https://github.com/test-unit/test-unit/releases/tag/3.6.7)
- [rexml](https://github.com/ruby/rexml) 3.4.0
- 3.2.6 から [v3.2.7](https://github.com/ruby/rexml/releases/tag/v3.2.7), [v3.2.8](https://github.com/ruby/rexml/releases/tag/v3.2.8), [v3.2.... -
JSON
:: Parser . new(source , options => {}) -> JSON :: Parser (73.0) -
パーサを初期化します。
パーサを初期化します。
第二引数のハッシュには以下のキーを指定できます。
- **`:max_nesting`**:
データ構造のネストの深さの最大値を指定します。デフォルトは 19 です。
チェックを無効にするにはゼロまたは偽を指定してください。
- **`:allow_nan`**:
真を指定すると [rfc:4627] を無視して NaN, Infinity, -Infinity をパースエラーにしません。
デフォルトは偽です。
- **`:create_additions`**:
偽を指定するとマッチするクラスや ID があっても付加情報を生成しません。デフォ... -
Module
# public() -> nil (73.0) -
メソッドを public に設定します。
メソッドを public に設定します。
引数なしのときは今後このクラスまたはモジュール定義内で新規に定義されるメソッドをどんな形式でも呼び出せるように(public)設定します。
引数が与えられた時には引数によって指定されたメソッドを public に設定します。
可視性については [ref:d:spec/def#limit] を参照して下さい。
- **param** `name` -- 0 個以上の [c:String] または [c:Symbol] を指定します。
- **param** `names` -- 0 個以上の [c:String] または [c:Symbol]... -
Module
# public(*name) -> Array (73.0) -
メソッドを public に設定します。
メソッドを public に設定します。
引数なしのときは今後このクラスまたはモジュール定義内で新規に定義されるメソッドをどんな形式でも呼び出せるように(public)設定します。
引数が与えられた時には引数によって指定されたメソッドを public に設定します。
可視性については [ref:d:spec/def#limit] を参照して下さい。
- **param** `name` -- 0 個以上の [c:String] または [c:Symbol] を指定します。
- **param** `names` -- 0 個以上の [c:String] または [c:Symbol]... -
Module
# public(name) -> String | Symbol (73.0) -
メソッドを public に設定します。
メソッドを public に設定します。
引数なしのときは今後このクラスまたはモジュール定義内で新規に定義されるメソッドをどんな形式でも呼び出せるように(public)設定します。
引数が与えられた時には引数によって指定されたメソッドを public に設定します。
可視性については [ref:d:spec/def#limit] を参照して下さい。
- **param** `name` -- 0 個以上の [c:String] または [c:Symbol] を指定します。
- **param** `names` -- 0 個以上の [c:String] または [c:Symbol]... -
Module
# public(names) -> Array (73.0) -
メソッドを public に設定します。
メソッドを public に設定します。
引数なしのときは今後このクラスまたはモジュール定義内で新規に定義されるメソッドをどんな形式でも呼び出せるように(public)設定します。
引数が与えられた時には引数によって指定されたメソッドを public に設定します。
可視性については [ref:d:spec/def#limit] を参照して下さい。
- **param** `name` -- 0 個以上の [c:String] または [c:Symbol] を指定します。
- **param** `names` -- 0 個以上の [c:String] または [c:Symbol]... -
NEWS for Ruby 3
. 3 . 0 (73.0) -
NEWS for Ruby 3.3.0 このドキュメントは前回リリース以降のバグ修正を除くユーザーに影響のある機能の変更のリストです。
...- Refinement#refined_class の代替として Refinement#target が追加されました。 Refinement#refined_class は非推奨となり、Ruby 3.4 で削除予定です。[feature:19714]
- [c:Regexp]
- Ruby 3.2で導入されたReDoS対策のメモ化最適化が先読み・後読みや......- abbrev 0.1.2
- base64 0.2.0
- benchmark 0.3.0
- bigdecimal 3.1.5
- bundler 2.5.3
- cgi 0.4.1
- csv 3.2.8
- date 3.3.4
- delegate 0.3.1
- drb 2.2.0
- english 0.8.0
- erb 4.0.3
- error_highlight 0.6.0
- etc 1.4.3
- fcntl 1.1.0
- fiddle.......0
- rake 13.1.0
- test-unit 3.6.1
- rexml 3.2.6
- rss 0.3.0
- net-ftp 0.3.3
- net-imap 0.4.9
- net-smtp 0.4.0
- rbs 3.4.0
- typeprof 0.21.9
- debug 1.9.1
default gems と bundled gems の詳細については Logger の GitHub Releases(<https://github.com/ru... -
Singleton (73.0)
-
Singleton パターンを提供するモジュールです。
Singleton パターンを提供するモジュールです。
Mix-in により singleton パターンを提供します。
Singleton モジュールを include することにより、クラスは高々ひとつのインスタンスしか持たないことが保証されます。
Singleton を Mix-in したクラスのクラスメソッド instance はその唯一のインスタンスを返します。
new は private メソッドに移され、外部から呼び出そうとするとエラーになります。
### サンプルコード
```ruby
require 'singleton'
class SomeSingleton... -
ruby 1
. 9 feature (73.0) -
ruby 1.9 feature ruby version 1.9.0 は開発版です。 以下にあげる機能は将来削除されたり互換性のない仕様変更がなされるかもしれません。 1.9.1 以降は安定版です。 バグ修正がメインになります。
ruby 1.9 feature
ruby version 1.9.0 は開発版です。
以下にあげる機能は将来削除されたり互換性のない仕様変更がなされるかもしれません。
1.9.1 以降は安定版です。
バグ修正がメインになります。
記号について(特に重要なものは大文字(主観))
- カテゴリ
- \[ruby]: ruby インタプリタの変更
- \[api]: 拡張ライブラリ API
- \[lib]: ライブラリ
- \[parser]: 文法の変更
- \[regexp]: 正規表現の機能拡張
- \[marshal]: Marshal ファイルのフォーマッ... -
記号一覧 (73.0)
-
記号一覧 Ruby スクリプトで使われる記号の一覧です。
記号一覧
Ruby スクリプトで使われる記号の一覧です。
以下のようなものはそれぞれ、全く含んでいないか一部のみ含んでいます。
- 正規表現のメタ文字
- `Date#strftime` の書式指定で使う `%`、`-`、`.` とかの類
- `Kernel.#format` の書式指定で使う `%`、`#`、`+`、`-` とかの類
- `String#unpack`、`Array#pack` のテンプレートで使う `!`、`<`、`>`
- ファイルパスのデリミター
- CSV、JSON、YAML、XML など特定のファイルフォーマットに使うもの
[ref:ex] [ref:q] ... -
Module
# ===(obj) -> bool (55.0) -
指定された obj が self かそのサブクラスのインスタンスであるとき真を返します。 また、obj が self をインクルードしたクラスかそのサブクラスのインスタンスである場合にも真を返します。上記のいずれでもない場合に false を返します。
指定された obj が self かそのサブクラスのインスタンスであるとき真を返します。
また、obj が self をインクルードしたクラスかそのサブクラスのインスタンスである場合にも真を返します。上記のいずれでもない場合に false を返します。
言い替えると obj.kind_of?(self) が true の場合、 true を返します。
このメソッドは主に case 文での比較に用いられます。
case ではクラス、モジュールの所属関係をチェックすることになります。
```ruby title="例"
str = String.new
case str
when Stri... -
main
. define _ method(name) { . . . } -> Symbol (55.0) -
{: since="2.0.0"}
{: since="2.0.0"}
インスタンスメソッド name を [c:Object] に定義します。
ブロックを与えた場合、定義したメソッドの実行時にブロックが
[c:Object] インスタンスの上で [m:BasicObject#instance_eval] されます。
- **param** `name` -- [c:String] または [c:Symbol] を指定します。
- **param** `method` -- [c:Proc]、[c:Method] あるいは [c:UnboundMethod] のいずれかのインスタンスを指定します。
- **return... -
main
. define _ method(name , method) -> Symbol (55.0) -
{: since="2.0.0"}
{: since="2.0.0"}
インスタンスメソッド name を [c:Object] に定義します。
ブロックを与えた場合、定義したメソッドの実行時にブロックが
[c:Object] インスタンスの上で [m:BasicObject#instance_eval] されます。
- **param** `name` -- [c:String] または [c:Symbol] を指定します。
- **param** `method` -- [c:Proc]、[c:Method] あるいは [c:UnboundMethod] のいずれかのインスタンスを指定します。
- **return... -
Prime
. each(upper _ bound = nil , generator = EratosthenesGenerator . new) -> Enumerator (52.0) -
Prime.instance.each と同じです。
Prime.instance.each と同じです。
- **param** `upper_bound` -- 任意の正の整数を指定します。列挙の上界です。
nil が与えられた場合は無限に列挙し続けます。
- **param** `generator` -- 素数生成器のインスタンスを指定します。
- **return** -- ブロックの最後に評価された値を返します。
ブロックが与えられなかった場合は、[c:Enumerator] と互換性のある外部イテレータを返します。
- **SEE** [m:Prime#each] -
Kernel
. # global _ variables -> [Symbol] (37.0) -
プログラム中で定義されているグローバル変数(`$`で始まる変数)名の配列を返します。
プログラム中で定義されているグローバル変数(`$`で始まる変数)名の配列を返します。
```ruby title="例"
p global_variables # => [:$;, :$-F, :$@, ... ]
```
- **SEE** [m:Kernel?.local_variables],[m:Object#instance_variables],[m:Module.constants],[m:Module#constants],[m:Module#class_variables] -
Kernel
. # local _ variables -> [Symbol] (37.0) -
現在のスコープで定義されているローカル変数名の配列を返します。
現在のスコープで定義されているローカル変数名の配列を返します。
```ruby title="例"
yuyu = 0
p local_variables # => [:yuyu]
```
- **SEE** [m:Kernel?.global_variables],[m:Object#instance_variables],[m:Module.constants],[m:Module#constants],[m:Module#class_variables] -
Module
# class _ variables(inherit = true) -> [Symbol] (37.0) -
クラス/モジュールに定義されているクラス変数の名前の配列を返します。
クラス/モジュールに定義されているクラス変数の名前の配列を返します。
- **param** `inherit` -- false を指定しない場合はスーパークラスやインクルードしているモジュールのクラス変数を含みます。
```ruby title="例"
class One
@@var1 = 1
end
class Two < One
@@var2 = 2
end
p One.class_variables # => [:@@var1]
p Two.class_variables # => [:@@var2, :@@var1]
p Two.class... -
Module
. constants -> [Symbol] (37.0) -
このメソッドを呼び出した時点で参照可能な定数名の配列を返します。
このメソッドを呼び出した時点で参照可能な定数名の配列を返します。
```ruby title="例"
class C
FOO = 1
end
p Module.constants # => [:RUBY_PLATFORM, :STDIN, ..., :C, ...]
# 出力中に :FOO は現われない
```
- **SEE** [m:Module#constants], [m:Kernel?.local_variables], [m:Kernel?.global_variables], [m:Object#instance_varia...
