るりまサーチ (Ruby 3.3)

最速Rubyリファレンスマニュアル検索!
216件ヒット [1-100件を表示] (0.118秒)

別のキーワード

  1. openssl t61string
  2. asn1 t61string
  3. t61string new
  4. matrix t
  5. fiddle align_size_t

クラス

モジュール

オブジェクト

キーワード

検索結果

<< 1 2 3 > >>

Method#name -> Symbol (63346.0)

このメソッドの名前を返します。

このメソッドの名前を返します。

//emlist[例][ruby]{
class Foo
def foo(arg)
"foo called with arg #{arg}"
end
end

m = Foo.new.method(:foo) # => #<Method: Foo#foo>
m.name # => :foo
//}

UnboundMethod#name -> Symbol (63346.0)

このメソッドの名前を返します。

このメソッドの名前を返します。

//emlist[例][ruby]{
a = String.instance_method(:size)
a.name # => :size
//}

Module#name -> String | nil (54754.0)

モジュールやクラスの名前を文字列で返します。

モジュールやクラスの名前を文字列で返します。

このメソッドが返す「モジュール / クラスの名前」とは、
より正確には「クラスパス」を指します。
クラスパスとは、ネストしているモジュールすべてを
「::」を使って表示した名前のことです。
クラスパスの例としては「CGI::Session」「Net::HTTP」が挙げられます。

@return 名前のないモジュール / クラスに対しては、name は nil を、それ以外はオブジェクト ID の文字列を返します。

//emlist[例][ruby]{
module A
module B
end

p B.name #=> "A...

Symbol#name -> String (54664.0)

シンボルに対応する文字列を返します。

シンボルに対応する文字列を返します。

Symbol#to_sと違って freeze された文字列を返します。

//emlist[][ruby]{
p :fred.name # => "fred"
p :fred.name.frozen? # => true
p :fred.to_s # => "fred"
p :fred.to_s.frozen? # => false
//}

@see Symbol#to_s

Encoding#name -> String (54646.0)

エンコーディングの名前を返します。

エンコーディングの名前を返します。

//emlist[例][ruby]{
Encoding::UTF_8.name #=> "UTF-8"
//}

絞り込み条件を変える

RubyVM::INSTRUCTION_NAMES -> [String] (45907.0)

RubyVM の命令シーケンスの名前の一覧を返します。

RubyVM の命令シーケンスの名前の一覧を返します。

@see RubyVM::InstructionSequence

Module#protected_method_defined?(name, inherit=true) -> bool (36994.0)

インスタンスメソッド name がモジュールに定義されており、 しかもその可視性が protected であるときに true を返します。 そうでなければ false を返します。

インスタンスメソッド name がモジュールに定義されており、
しかもその可視性が protected であるときに true を返します。
そうでなければ false を返します。

@param name Symbol か String を指定します。
@param inherit 真を指定するとスーパークラスや include したモジュールで
定義されたメソッドも対象になります。

@see Module#method_defined?, Module#public_method_defined?, Module#private_method_defined?

//e...

File.extname(filename) -> String (36925.0)

ファイル名 filename の拡張子部分(最後の "." に続く文字列)を 返します。ディレクトリ名に含まれる "." や、ファイル名先頭の "." は拡張子の一部としては見なされません。filename に拡張子が含 まれない場合は空文字列を返します。

ファイル名 filename の拡張子部分(最後の "." に続く文字列)を
返します。ディレクトリ名に含まれる "." や、ファイル名先頭の "."
は拡張子の一部としては見なされません。filename に拡張子が含
まれない場合は空文字列を返します。

//emlist[例][ruby]{
p File.extname("foo/foo.txt") # => ".txt"
p File.extname("foo/foo.tar.gz") # => ".gz"
p File.extname("foo/bar") # => ""
p File.extname("f...

Encoding.name_list -> [String] (36646.0)

利用可能なエンコーディングの名前を文字列の配列で返します。

利用可能なエンコーディングの名前を文字列の配列で返します。

//emlist[例][ruby]{
p Encoding.name_list
#=> ["US-ASCII", "ASCII-8BIT", "UTF-8",
# "ISO-8859-1", "Shift_JIS", "EUC-JP",
# "Windows-31J",
# "BINARY", "CP932", "eucJP", ...]
//}

MatchData#named_captures -> Hash (36625.0)

名前付きキャプチャをHashで返します。

名前付きキャプチャをHashで返します。

Hashのキーは名前付きキャプチャの名前です。Hashの値はキーの名前に対応した名前付きグループのうち最後にマッチした文字列です。

@param symbolize_names 真を指定するとハッシュのキーを文字列ではなくシンボルにします。デフォルトは偽です。

//emlist[例][ruby]{
m = /(?<a>.)(?<b>.)/.match("01")
m.named_captures # => {"a" => "0", "b" => "1"}

m = /(?<a>.)(?<b>.)?/.match("0")
m.named_cap...

絞り込み条件を変える

Regexp#named_captures -> { String => [Integer] } (36625.0)

正規表現に含まれる名前付きキャプチャ(named capture)の情報を Hash で返します。

正規表現に含まれる名前付きキャプチャ(named capture)の情報を
Hash で返します。

Hash のキーは名前付きキャプチャの名前で、値は
その名前に関連付けられたキャプチャの index のリストを返します。

//emlist[例][ruby]{
/(?<foo>.)(?<bar>.)/.named_captures
# => {"foo"=>[1], "bar"=>[2]}

/(?<foo>.)(?<foo>.)/.named_captures
# => {"foo"=>[1, 2]}

# 名前付きキャプチャを持たないときは空の Hash を返します。
/(.)(.)/...

Thread#name=(name) -> String (28033.0)

self の名前を name に設定します。

self の名前を name に設定します。

プラットフォームによっては pthread やカーネルにも設定を行う場合があります。

@raise ArgumentError 引数に ASCII 互換ではないエンコーディングのものを
指定した場合に発生します。

//emlist[例][ruby]{
a = Thread.new{}
a.name = 'named'
a.name # => "named"
a.inspect # => "#<Thread:0x00007f85ac8721f0@named@(irb):1 dead>"
...

RubyVM::AbstractSyntaxTree.parse_file(pathname) -> RubyVM::AbstractSyntaxTree::Node (27943.0)

pathname のファイルを読み込み、その内容を抽象構文木にパースし、その木の根ノードを返します。

pathname のファイルを読み込み、その内容を抽象構文木にパースし、その木の根ノードを返します。

@param pathname パースする対象のファイルパスを指定します
@param keep_script_lines true を指定すると、 Node#script_lines でノードと関連づけられたソースコードのテキストを取得できます。
@param keep_tokens true を指定すると、 Node#token が利用できます。
@param error_tolerant true を指定すると、構文エラーが発生した際にエラー箇所を type が :ERROR である...

RubyVM::AbstractSyntaxTree.parse_file(pathname, keep_script_lines: false, error_tolerant: false, keep_tokens: false) -> RubyVM::AbstractSyntaxTree::Node (27943.0)

pathname のファイルを読み込み、その内容を抽象構文木にパースし、その木の根ノードを返します。

pathname のファイルを読み込み、その内容を抽象構文木にパースし、その木の根ノードを返します。

@param pathname パースする対象のファイルパスを指定します
@param keep_script_lines true を指定すると、 Node#script_lines でノードと関連づけられたソースコードのテキストを取得できます。
@param keep_tokens true を指定すると、 Node#token が利用できます。
@param error_tolerant true を指定すると、構文エラーが発生した際にエラー箇所を type が :ERROR である...

Struct#deconstruct_keys(array_of_names) -> Hash (27661.0)

self のメンバの名前と値の組を Hash で返します。

self のメンバの名前と値の組を Hash で返します。

@param array_of_names 返り値に含めるメンバの名前の配列を指定します。nil の場合は全てのメンバを意味します。

//emlist[例][ruby]{
Customer = Struct.new(:name, :address, :zip)
joe = Customer.new("Joe Smith", "123 Maple, Anytown NC", 12345)
h = joe.deconstruct_keys([:zip, :address])
h # => {:zip=>12345, :address...

絞り込み条件を変える

MatchData#names -> [String] (27625.0)

名前付きキャプチャの名前を文字列配列で返します。

名前付きキャプチャの名前を文字列配列で返します。

self.regexp.names と同じです。

//emlist[例][ruby]{
/(?<foo>.)(?<bar>.)(?<baz>.)/.match("hoge").names
# => ["foo", "bar", "baz"]

m = /(?<x>.)(?<y>.)?/.match("a") # => #<MatchData "a" x:"a" y:nil>
m.names # => ["x", "y"]
//}

Method#original_name -> Symbol (27364.0)

オリジナルのメソッド名を返します。

オリジナルのメソッド名を返します。

//emlist[例][ruby]{
class C
def foo; end
alias bar foo
end
C.new.method(:bar).original_name # => :foo
//}

@see UnboundMethod#original_name

UnboundMethod#original_name -> Symbol (27364.0)

オリジナルのメソッド名を返します。

オリジナルのメソッド名を返します。

//emlist[例][ruby]{
class C
def foo; end
alias bar foo
end
C.instance_method(:bar).original_name # => :foo
//}

@see Method#original_name

Struct#deconstruct -> [object] (27343.0)

構造体のメンバの値を配列にいれて返します。

構造体のメンバの値を配列にいれて返します。

//emlist[例][ruby]{
Customer = Struct.new(:name, :address, :zip)
Customer.new("Joe Smith", "123 Maple, Anytown NC", 12345).to_a
# => ["Joe Smith", "123 Maple, Anytown NC", 12345]
//}

[注意] 本メソッドの記述は Struct の下位クラスのインスタンスに対して呼び
出す事を想定しています。Struct.new は Struct の下位クラスを作成する点に
注意してくだ...

Struct#to_a -> [object] (27343.0)

構造体のメンバの値を配列にいれて返します。

構造体のメンバの値を配列にいれて返します。

//emlist[例][ruby]{
Customer = Struct.new(:name, :address, :zip)
Customer.new("Joe Smith", "123 Maple, Anytown NC", 12345).to_a
# => ["Joe Smith", "123 Maple, Anytown NC", 12345]
//}

[注意] 本メソッドの記述は Struct の下位クラスのインスタンスに対して呼び
出す事を想定しています。Struct.new は Struct の下位クラスを作成する点に
注意してくだ...

絞り込み条件を変える

MatchData#byteoffset(name) -> [Integer, Integer] | [nil, nil] (19348.0)

name という名前付きグループに対応する部分文字列のバイト単位のオフセットの 配列 [start, end] を返します。

name という名前付きグループに対応する部分文字列のバイト単位のオフセットの
配列 [start, end] を返します。

nameの名前付きグループにマッチした部分文字列がなければ
[nil, nil] を返します。

@param name 名前(シンボルか文字列)

@raise IndexError 正規表現中で定義されていない name を指定した場合に発生します。

//emlist[例][ruby]{
/(?<year>\d{4})年(?<month>\d{1,2})月(?:(?<day>\d{1,2})日)?/ =~ "2021年1月"
p $~.byteoffset('...

File.utime(atime, mtime, *filename) -> Integer (19243.0)

ファイルの最終アクセス時刻と更新時刻を変更します。 シンボリックリンクに対しては File.lutime と違って、 シンボリックのリンク先を変更します。

ファイルの最終アクセス時刻と更新時刻を変更します。
シンボリックリンクに対しては File.lutime と違って、
シンボリックのリンク先を変更します。

@param atime 最終アクセス時刻を Time か、起算時からの経過秒数を数値で指定します。

@param mtime 更新時刻を Time か、起算時からの経過秒数を数値で指定します。

@param filename ファイル名を表す文字列を指定します。複数指定できます。

@return 変更したファイルの数を返します。

@raise Errno::EXXX 変更に失敗した場合に発生します。

//emlist[例: ...

Thread#fetch(name, default = nil) {|name| ... } -> object (19207.0)

name に関連づけられたスレッドに固有のデータを返します。 name に対応するスレッド固有データがない時には、引数 default が 与えられていればその値を、ブロックが与えられていれば そのブロックを評価した値を返します。

name に関連づけられたスレッドに固有のデータを返します。
name に対応するスレッド固有データがない時には、引数 default が
与えられていればその値を、ブロックが与えられていれば
そのブロックを評価した値を返します。

@param name スレッド固有データのキーを文字列か Symbol で指定します。
@param default name に対応するスレッド固有データがない時の返り値を指定します。
@raise KeyError 引数defaultもブロックも与えられてない時、
name に対応するスレッド固有データがないと発生します。
...

File.basename(filename, suffix = "") -> String (19177.0)

filename の一番後ろのスラッシュに続く要素を返します。もし、 引数 suffix が与えられて、かつそれが filename の末尾に 一致するなら、それを取り除いたものを返します。

filename の一番後ろのスラッシュに続く要素を返します。もし、
引数 suffix が与えられて、かつそれが filename の末尾に
一致するなら、それを取り除いたものを返します。

//emlist[例][ruby]{
p File.basename("ruby/ruby.c") #=> "ruby.c"
p File.basename("ruby/ruby.c", ".c") #=> "ruby"
p File.basename("ruby/ruby.c", ".*") #=> "ruby"
p File.basename("ruby/ruby.e...

Module#ruby2_keywords(method_name, ...) -> nil (19003.0)

For the given method names, marks the method as passing keywords through a normal argument splat. This should only be called on methods that accept an argument splat (`*args`) but not explicit keywords or a keyword splat. It marks the method such that if the method is called with keyword arguments, the final hash argument is marked with a special flag such that if it is the final element of a normal argument splat to another method call, and that method call does not include explicit keywords or a keyword splat, the final element is interpreted as keywords. In other words, keywords will be passed through the method to other methods.

For the given method names, marks the method as passing keywords through
a normal argument splat. This should only be called on methods that
accept an argument splat (`*args`) but not explicit keywords or a
keyword splat. It marks the method such that if the method is called
with keyword argument...

絞り込み条件を変える

File.dirname(filename, level=1) -> String (18997.0)

filename の一番後ろのスラッシュより前を文 字列として返します。スラッシュを含まないファイル名に対しては "."(カレントディレクトリ)を返します。

filename の一番後ろのスラッシュより前を文
字列として返します。スラッシュを含まないファイル名に対しては
"."(カレントディレクトリ)を返します。

//emlist[例][ruby]{
p File.dirname("dir/file.ext") # => "dir"
p File.dirname("file.ext") # => "."
//}

File.dirname の動作は dirname(3)
に従います。
//emlist[例][ruby]{
p File.dirname("foo/bar/") # => "foo"
p File.di...

Module#define_method(name, method) -> Symbol (18997.0)

インスタンスメソッド name を定義します。

インスタンスメソッド name を定義します。

ブロックを与えた場合、定義したメソッドの実行時にブロックが
レシーバクラスのインスタンスの上で BasicObject#instance_eval されます。

@param name メソッド名を String または Symbol を指定します。

@param method Proc、Method あるいは UnboundMethod の
いずれかのインスタンスを指定します。

@return メソッド名を表す Symbol を返します。

@raise TypeError method に同じクラス、サブクラス、モジュー...

Object#method(name) -> Method (18994.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#public_method(name) -> Method (18994.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 ...

Kernel.#format(format, *arg) -> String (18991.0)

format 文字列を C 言語の sprintf と同じように解釈し、 引数をフォーマットした文字列を返します。

format 文字列を C 言語の sprintf と同じように解釈し、
引数をフォーマットした文字列を返します。

@param format フォーマット文字列です。
@param arg フォーマットされる引数です。
@see Kernel.#printf,Time#strftime,Date.strptime

=== sprintf フォーマット

Ruby の sprintf フォーマットは基本的に C 言語の sprintf(3)
のものと同じです。ただし、short や long などの C 特有の型に対する修飾子が
ないこと、2進数の指示子(%b, %B)が存在すること、s...

絞り込み条件を変える

Kernel.#sprintf(format, *arg) -> String (18991.0)

format 文字列を C 言語の sprintf と同じように解釈し、 引数をフォーマットした文字列を返します。

format 文字列を C 言語の sprintf と同じように解釈し、
引数をフォーマットした文字列を返します。

@param format フォーマット文字列です。
@param arg フォーマットされる引数です。
@see Kernel.#printf,Time#strftime,Date.strptime

=== sprintf フォーマット

Ruby の sprintf フォーマットは基本的に C 言語の sprintf(3)
のものと同じです。ただし、short や long などの C 特有の型に対する修飾子が
ないこと、2進数の指示子(%b, %B)が存在すること、s...

File.lstat(filename) -> File::Stat (18979.0)

File.statと同様ですが、シンボリックリンクに関してリンクそのものの 情報を File::Stat として返します。lstat(2) を実装していないシステムでは、File.stat と同じです。

File.statと同様ですが、シンボリックリンクに関してリンクそのものの
情報を File::Stat として返します。lstat(2) を実装していないシステムでは、File.stat と同じです。

@param filename ファイル名を表す文字列を指定します。

@raise Errno::EXXX 情報の取得に失敗した場合に発生します。

//emlist[例][ruby]{
# link.rb は t.rb のシンボリックリンク
File.lstat("link.rb") == File.stat("t.rb") # => false
File.stat("link.rb...

Kernel.#trace_var(varname, hook) -> [String|Proc] (18943.0)

グローバル変数 varname への代入のフックを登録します。

グローバル変数 varname への代入のフックを登録します。

ここでの「グローバル変数」は、特殊変数
(d:spec/variables#builtin を参照)も含めた `$' で始まる変数のこ
とです。

この呼び出し以降、varname で指定したグローバル変数に
値が代入されるたびに hook かブロックが評価されます。hook が Proc オブジェクトの場合
代入された値がブロック引数に渡されます。文字列の場合はRubyコードとして評価されます。

trace_var がフックするのは明示的な代入だけです。
フックは複数登録できます。

フックを解除するには、hook に n...

MatchData#byteoffset(n) -> [Integer, Integer] | [nil, nil] (18928.0)

n 番目の部分文字列のバイト単位のオフセットの 配列 [start, end] を返します。

n 番目の部分文字列のバイト単位のオフセットの
配列 [start, end] を返します。

n番目の部分文字列がマッチしていなければ [nil, nil] を返します。

@param n 部分文字列を指定する数値

@raise IndexError 範囲外の n を指定した場合に発生します。

@see MatchData#offset

File.atime(filename) -> Time (18925.0)

最終アクセス時刻を返します。

最終アクセス時刻を返します。

@param filename ファイル名を表す文字列か IO オブジェクトを指定します。

@raise Errno::EXXX ファイルの時刻の取得に失敗した場合に発生します。

//emlist[例][ruby]{
File.atime(__FILE__) # => 2017-11-28 22:38:44 +0900
//}

絞り込み条件を変える

File.ctime(filename) -> Time (18925.0)

状態が最後に変更された時刻を返します。 状態の変更とは chmod などによるものです。

状態が最後に変更された時刻を返します。
状態の変更とは chmod などによるものです。

@param filename ファイル名を表す文字列か IO オブジェクトを指定します。

@raise Errno::EXXX ファイルの時刻の取得に失敗した場合に発生します。

//emlist[例:][ruby]{
IO.write("testfile", "test")
File.ctime("testfile") # => 2017-11-30 22:40:49 +0900
File.chmod(0755, "testfile")
File.ctime("testfile") # => 2...

File.delete(*filename) -> Integer (18925.0)

ファイルを削除します。削除したファイルの数を返します。 削除に失敗した場合は例外 Errno::EXXX が発生します。

ファイルを削除します。削除したファイルの数を返します。
削除に失敗した場合は例外 Errno::EXXX が発生します。

このメソッドは通常ファイルの削除用で、ディレクトリの削除には
Dir.rmdir を使います。

@param filename ファイル名を表す文字列を指定します。

@raise Errno::EXXX 失敗した場合に発生します。

//emlist[例][ruby]{
IO.write("test.txt", "test")
p File.exist?("test.txt") # => true
p File.delete("test.txt") # => ...

File.mtime(filename) -> Time (18925.0)

最終更新時刻を返します。

最終更新時刻を返します。

@param filename ファイル名を表す文字列か IO オブジェクトを指定します。

@raise Errno::EXXX ファイルの時刻の取得に失敗した場合に発生します。

//emlist[例][ruby]{
File.mtime(__FILE__) # => 2017-12-03 03:16:22 +0900
//}

File.realpath(pathname, basedir = nil) -> String (18925.0)

与えられた pathname に対応する絶対パスを返します。

与えられた pathname に対応する絶対パスを返します。

pathname の全てのコンポーネントは存在しなければなりません。

@param pathname ファイル名を指定します。

@param basedir ベースディレクトリを指定します。省略するとカレントディレクトリを使用します。

@raise Errno::ENOENT ファイルが存在しない場合に発生します。

//emlist[例][ruby]{
ENV["HOME"] # => "/home/matz"
File.symlink("testfile", "testlink"...

File.stat(filename) -> File::Stat (18925.0)

filename の情報を含む File::Stat オブジェクトを生成し て返します。

filename の情報を含む File::Stat オブジェクトを生成し
て返します。

@param filename ファイル名を表す文字列を指定します。

@raise Errno::EXXX 情報の取得に失敗した場合に発生します。

//emlist[例][ruby]{
File.stat("testfile").class # => File::Stat
File.stat("testfile").mtime # => 2017-12-10 01:13:56 +0900
//}

@see IO#stat, File#lstat

絞り込み条件を変える

Kernel.#untrace_var(varname, hook = nil) -> [String|Proc] (18925.0)

グローバル変数 varname に関連付けられたフックを解除します。

グローバル変数 varname に関連付けられたフックを解除します。

hook が指定された場合にはそのフックだけを解除します。
省略するか nil を与えた場合は
varname のフックを全て解除します。

@param varname グローバル変数名を文字列か Symbol で指定します。
@param hook 文字列または Proc オブジェクトです。
@return 解除されたフックの配列を返します。

//emlist[例][ruby]{
trace_var(:$v){|val| print "hookA.#{val.inspect},\n" }
block = proc{...

Module#attr(*name) -> [Symbol] (18862.0)

インスタンス変数読み取りのためのインスタンスメソッド name を定義します。

インスタンス変数読み取りのためのインスタンスメソッド name を定義します。

//emlist[例][ruby]{
class User
attr :name # => [:name]
# 複数の名前を渡すこともできる
attr :id, :age # => [:id, :age]
end
//}

このメソッドで定義されるアクセスメソッドの定義は次の通りです。

//emlist[例][ruby]{
def name
@name
end
//}

第 2 引数 が true で指定された場合には、属性の書き込み用メソッド name= も同時に定義されます。
その定義は次...

Module#attr(name, false) -> [Symbol] (18862.0)

インスタンス変数読み取りのためのインスタンスメソッド name を定義します。

インスタンス変数読み取りのためのインスタンスメソッド name を定義します。

//emlist[例][ruby]{
class User
attr :name # => [:name]
# 複数の名前を渡すこともできる
attr :id, :age # => [:id, :age]
end
//}

このメソッドで定義されるアクセスメソッドの定義は次の通りです。

//emlist[例][ruby]{
def name
@name
end
//}

第 2 引数 が true で指定された場合には、属性の書き込み用メソッド name= も同時に定義されます。
その定義は次...

Module#attr(name, true) -> [Symbol] (18862.0)

インスタンス変数読み取りのためのインスタンスメソッド name を定義します。

インスタンス変数読み取りのためのインスタンスメソッド name を定義します。

//emlist[例][ruby]{
class User
attr :name # => [:name]
# 複数の名前を渡すこともできる
attr :id, :age # => [:id, :age]
end
//}

このメソッドで定義されるアクセスメソッドの定義は次の通りです。

//emlist[例][ruby]{
def name
@name
end
//}

第 2 引数 が true で指定された場合には、属性の書き込み用メソッド name= も同時に定義されます。
その定義は次...

Module#attr_accessor(*name) -> [Symbol] (18838.0)

インスタンス変数 name に対する読み取りメソッドと書き込みメソッドの両方を 定義します。

インスタンス変数 name に対する読み取りメソッドと書き込みメソッドの両方を
定義します。

//emlist[例][ruby]{
class User
attr_accessor :name # => [:name, :name=]
# 複数の名前を渡すこともできる
attr_accessor :id, :age # => [:id, :id=, :age, :age=]
end
//}

このメソッドで定義されるメソッドの定義は以下の通りです。

//emlist[例][ruby]{
def name
@name
end
def name=(val)
@name =...

絞り込み条件を変える

Module#attr_writer(*name) -> [Symbol] (18832.0)

インスタンス変数 name への書き込みメソッド (name=) を定義します。

インスタンス変数 name への書き込みメソッド (name=) を定義します。

//emlist[例][ruby]{
class User
attr_writer :name # => [:name=]
# 複数の名前を渡すこともできる
attr_writer :id, :age # => [:id=, :age=]
end
//}

このメソッドで定義されるメソッドの定義は以下の通りです。

//emlist[例][ruby]{
def name=(val)
@name = val
end
//}

@param name String または Symbol を 1 つ...

MatchData#offset(name) -> [Integer, Integer] | [nil, nil] (18805.0)

name という名前付きグループに対応する部分文字列のオフセットの配列 [start, end] を返 します。

name という名前付きグループに対応する部分文字列のオフセットの配列 [start, end] を返
します。

//emlist[例][ruby]{
[ self.begin(name), self.end(name) ]
//}

と同じです。nameの名前付きグループにマッチした部分文字列がなければ
[nil, nil] を返します。

@param name 名前(シンボルか文字列)

@raise IndexError 正規表現中で定義されていない name を指定した場合に発生します。

//emlist[例][ruby]{
/(?<year>\d{4})年(?<month>\...

Module#attr_reader(*name) -> [Symbol] (18784.0)

インスタンス変数 name の読み取りメソッドを定義します。

インスタンス変数 name の読み取りメソッドを定義します。

//emlist[例][ruby]{
class User
attr_reader :name # => [:name]
# 複数の名前を渡すこともできる
attr_reader :id, :age # => [:id, :age]
end
//}

このメソッドで定義されるメソッドの定義は以下の通りです。

//emlist[例][ruby]{
def name
@name
end
//}

@param name String または Symbol を 1 つ以上指定します。
@return 定義されたメソッ...

Module#autoload(const_name, feature) -> nil (18784.0)

定数 const_name を最初に参照した時に feature を Kernel.#require するように設定します。

定数 const_name を最初に参照した時に feature を Kernel.#require するように設定します。

const_name が autoload 設定されていて、まだ定義されてない(ロードされていない)ときは、
autoload する対象を置き換えます。
const_name が(autoloadではなく)既に定義されているときは何もしません。

@param const_name String または Symbol で指定します。
なお、const_name には、"::" 演算子を含めることはできません。
つまり、self の直下に定...

Object#respond_to?(name, include_all = false) -> bool (18784.0)

オブジェクトがメソッド name を持つとき真を返します。

オブジェクトがメソッド name を持つとき真を返します。

オブジェクトが メソッド name を持つというのは、
オブジェクトが メソッド name に応答できることをいいます。

Windows での Process.fork や GNU/Linux での File.lchmod の
ような NotImplementedError が発生する場合は false を返します。

※ NotImplementedError が発生する場合に false を返すのは
Rubyの組み込みライブラリや標準ライブラリなど、C言語で実装されているメソッドのみです。
Rubyで実装されたメソッドで N...

絞り込み条件を変える

BasicObject#method_missing(name, *args) -> object (18748.0)

呼びだされたメソッドが定義されていなかった時、Rubyインタプリタがこのメソッド を呼び出します。

呼びだされたメソッドが定義されていなかった時、Rubyインタプリタがこのメソッド
を呼び出します。

呼び出しに失敗したメソッドの名前 (Symbol) が name に
その時の引数が第二引数以降に渡されます。

デフォルトではこのメソッドは例外 NoMethodError を発生させます。


@param name 未定義メソッドの名前(シンボル)です。
@param args 未定義メソッドに渡された引数です。
@return ユーザー定義の method_missing メソッドの返り値が未定義メソッドの返り値で
あるかのように見えます。

//emlist[例][ruby]{...

Kernel.#autoload(const_name, feature) -> nil (18748.0)

定数 const_name を最初に参照した時に feature を Kernel.#require するように設定します。

定数 const_name を最初に参照した時に feature を
Kernel.#require するように設定します。

const_name には、 "::" 演算子を含めることはできません。
ネストした定数を指定する方法は Module#autoload を参照してください。

const_name が autoload 設定されていて、まだ定義されてない(ロードされていない)ときは、
autoload する対象を置き換えます。
const_name が(autoloadではなく)既に定義されているときは何もしません。

@param const_name 定数をString また...

Encoding#replicate(name) -> Encoding (18730.0)

レシーバのエンコーディングを複製(replicate)します。 複製されたエンコーディングは元のエンコーディングと同じバイト構造を持たなければなりません。 name という名前のエンコーディングが既に存在する場合は ArgumentError を発生します。

...いう名前のエンコーディングが既に存在する場合は ArgumentError を発生します。

Ruby 3.2 から非推奨となり、Ruby 3.3 で削除予定です。

//emlist[][ruby]{
encoding = Encoding::UTF_8.replicate("REPLICATED_UTF-8") #=> #<Encoding:REPLICATED_UTF-8>
encoding.n...

Module#method_added(name) -> () (18730.0)

メソッド name が追加された時にインタプリタがこのメソッドを呼び出します。

メソッド name が追加された時にインタプリタがこのメソッドを呼び出します。

特異メソッドの追加に対するフックには
BasicObject#singleton_method_added
を使います。

@param name 追加されたメソッドの名前が Symbol で渡されます。

//emlist[例][ruby]{
class Foo
def Foo.method_added(name)
puts "method \"#{name}\" was added"
end

def foo
end
define_method :bar, instance_me...

Module#method_undefined(name) -> () (18730.0)

このモジュールのインスタンスメソッド name が Module#undef_method によって削除されるか、 undef 文により未定義にされると、インタプリタがこのメソッドを呼び出します。

このモジュールのインスタンスメソッド name が
Module#undef_method によって削除されるか、
undef 文により未定義にされると、インタプリタがこのメソッドを呼び出します。

特異メソッドの削除をフックするには
BasicObject#singleton_method_undefined
を使います。

@param name 削除/未定義にされたメソッド名が Symbol で渡されます。

//emlist[例][ruby]{
class C
def C.method_undefined(name)
puts "method C\##{name} was...

絞り込み条件を変える

Module#undef_method(*name) -> self (18730.0)

このモジュールのインスタンスメソッド name を未定義にします。

このモジュールのインスタンスメソッド name を未定義にします。

@param name 0 個以上の String か Symbol を指定します。

@raise NameError 指定したインスタンスメソッドが定義されていない場合に発生します。

=== 「未定義にする」とは
このモジュールのインスタンスに対して name という
メソッドを呼び出すことを禁止するということです。
スーパークラスの定義が継承されるかどうかという点において、
「未定義」は「メソッドの削除」とは区別されます。
以下のコード例を参照してください。

//emlist[例][ruby]{
class A
...

Module#class_variable_get(name) -> object (18712.0)

クラス/モジュールに定義されているクラス変数 name の値を返します。

クラス/モジュールに定義されているクラス変数 name の値を返します。

@param name String または Symbol を指定します。

@raise NameError クラス変数 name が定義されていない場合、発生します。

//emlist[例][ruby]{
class Fred
@@foo = 99
end

def Fred.foo
class_variable_get(:@@foo)
end

p Fred.foo #=> 99
//}

Module#const_added(name) -> () (18712.0)

定数 name が追加された時にインタプリタがこのメソッドを呼び出します。

定数 name が追加された時にインタプリタがこのメソッドを呼び出します。

//emlist[][ruby]{
module Chatty
def self.const_added(const_name)
super
puts "Added #{const_name.inspect}"
end
FOO = 1
end
# => Added :FOO
//}

Module#const_get(name, inherit = true) -> object (18712.0)

name で指定される名前の定数の値を取り出します。

name で指定される名前の定数の値を取り出します。

Module#const_defined? と違って Object を特別扱いすることはありません。

@param name 定数名。String か Symbol で指定します。
完全修飾名を指定しなかった場合はモジュールに定義されている
name で指定される名前の定数の値を取り出します。

@param inherit false を指定するとスーパークラスや include したモジュールで
定義された定数は対象にはなりません。

@raise NameError ...

Module#const_set(name, value) -> object (18712.0)

モジュールに name で指定された名前の定数を value とい う値として定義し、value を返します。

モジュールに name で指定された名前の定数を value とい
う値として定義し、value を返します。

そのモジュールにおいてすでにその名前の定数が定義されている場合、警
告メッセージが出力されます。

@param name Symbol,String で定数の名前を指定します。
@param value セットしたい値を指定します。

//emlist[例][ruby]{
module Foo; end

# Symbolを指定した場合
Foo.const_set(:FOO, 123)
Foo::FOO # => 123

# Stringを指定した場合
Foo.const_...

絞り込み条件を変える

Module#deprecate_constant(*name) -> self (18712.0)

name で指定した定数を deprecate に設定します。 deprecate に設定した定数を参照すると警告メッセージが表示されます。

name で指定した定数を deprecate に設定します。
deprecate に設定した定数を参照すると警告メッセージが表示されます。

Ruby 2.7.2 から Warning[:deprecated] のデフォルト値が false に変更になったため、
デフォルトでは警告が表示されません。

コマンドラインオプション(詳細はd:spec/rubycmd#cmd_option参照)で、
「-w」か「-W2」などを指定するか、実行中に「Warning[:deprecated] = true」で
変更すると表示されるようになります。

「$VERBOSE = true」は「Warnin...

Module#remove_method(*name) -> self (18712.0)

インスタンスメソッド name をモジュールから削除します。

インスタンスメソッド name をモジュールから削除します。

Ruby 1.8.0 以降は複数のメソッド名を指定して一度に削除できます。

@param name 0 個以上の String か Symbol を指定します。

@raise NameError 指定したメソッドが定義されていない場合に発生します。

//emlist[例][ruby]{
class C
def foo
end

remove_method :foo
remove_method :no_such_method # 例外 NameError が発生
end
//}

@see Module#...

Object#remove_instance_variable(name) -> object (18712.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...

Module#define_method(name) { ... } -> Symbol (18697.0)

インスタンスメソッド name を定義します。

インスタンスメソッド name を定義します。

ブロックを与えた場合、定義したメソッドの実行時にブロックが
レシーバクラスのインスタンスの上で BasicObject#instance_eval されます。

@param name メソッド名を String または Symbol を指定します。

@param method Proc、Method あるいは UnboundMethod の
いずれかのインスタンスを指定します。

@return メソッド名を表す Symbol を返します。

@raise TypeError method に同じクラス、サブクラス、モジュー...

Time#deconstruct_keys(array_of_names_or_nil) -> Hash (18697.0)

パターンマッチに使用する名前と値の Hash を返します。

パターンマッチに使用する名前と値の Hash を返します。

キーに利用できる名前は以下の通りです。

* :year
* :month
* :day
* :yday
* :wday
* :hour
* :min
* :sec
* :subsec
* :dst
* :zone

@param array_of_names_or_nil パターンマッチに使用する名前の配列を指定します。nil の場合は全てをパターンマッチに使用します。

//emlist[例][ruby]{
t = Time.utc(2022, 10, 5, 21, 25, 30)
...

絞り込み条件を変える

Dir.empty?(path_name) -> bool (18694.0)

path_name で与えられたディレクトリが空の場合に真を返します。 ディレクトリでない場合や空でない場合に偽を返します。

path_name で与えられたディレクトリが空の場合に真を返します。
ディレクトリでない場合や空でない場合に偽を返します。

//emlist[例][ruby]{
Dir.empty?('.') #=> false
Dir.empty?(IO::NULL) #=> false
require 'tmpdir'
Dir.mktmpdir { |dir| Dir.empty?(dir) } #=> true
//}

@param path_name 確認したいディレクトリ名。

Dir.exist?(file_name) -> bool (18694.0)

file_name で与えられたディレクトリが存在する場合に真を返します。 そうでない場合は、偽を返します。

file_name で与えられたディレクトリが存在する場合に真を返します。
そうでない場合は、偽を返します。

@param file_name 存在を確認したいディレクトリ名。

//emlist[例][ruby]{
Dir.exist?(".") # => true
File.directory?(".") # => true
//}

@see File.directory?

File.absolute_path(file_name, dir_string=nil) -> String (18694.0)

file_name を絶対パスに変換した文字列を返します。

file_name を絶対パスに変換した文字列を返します。

相対パスの場合はカレントディレクトリを基準とします。
dir_string を渡した場合はそのディレクトリを基準とします。

File.expand_path と異なり、 file_name 先頭が "~" である場合
それは展開されません。普通のディレクトリ名として処理されます。

//emlist[例][ruby]{
p Dir.getwd #=> "/home/matz/work/bar"
p ENV["HOME"] #=> "/home/mat...

File.absolute_path?(file_name) -> bool (18694.0)

file_name が絶対パスなら true を、そうでなければ false を返します。

file_name が絶対パスなら true を、そうでなければ false を返します。

@param file_name ファイル名を表す文字列を指定します。文字列でない場合は、to_path メソッド、to_str メソッドの順で暗黙の型変換が試みられます。

@raise TypeError 引数に文字列以外の(暗黙の型変換が行えない)オブジェクトを指定した場合に発生します。

//emlist[例][ruby]{
File.absolute_path?("//foo/bar\\baz") # => true
File.absolute_path?("C:foo\\bar") ...

Kernel.#autoload?(const_name) -> String | nil (18694.0)

const_name が Kernel.#autoload 設定されているか調べます。

const_name が Kernel.#autoload 設定されているか調べます。

autoload 設定されていて、autoload 定数がまだ定義されてない(ロードされていない)
ときにそのパス名を返します。

autoload 設定されていないか、ロード済みなら nil を返します。

@param const_name 定数をString または Symbol で指定します。

//emlist[例][ruby]{
# ------- /tmp/foo.rb ---------
class Foo
class Bar
end
end
# ----- end of /tm...

絞り込み条件を変える

Module#class_variable_set(name, val) -> object (18694.0)

クラス/モジュールにクラス変数 name を定義して、その値として val をセットします。val を返します。

クラス/モジュールにクラス変数 name を定義して、その値として
val をセットします。val を返します。

@param name String または Symbol を指定します。

//emlist[例][ruby]{
class Fred
@@foo = 99
def foo
@@foo
end
end

def Fred.foo(val)
class_variable_set(:@@foo, val)
end

p Fred.foo(101) # => 101
p Fred.new.foo # => 101
//}

Module#const_defined?(name, inherit = true) -> bool (18694.0)

モジュールに name で指定される名前の定数が定義されている時真 を返します。

モジュールに name で指定される名前の定数が定義されている時真
を返します。

スーパークラスや include したモジュールで定義された定数を検索対象
にするかどうかは第二引数で制御することができます。

@param name String, Symbol で指定される定数名。

@param inherit false を指定するとスーパークラスや include したモジュールで
定義された定数は対象にはなりません。

//emlist[例][ruby]{
module Kernel
FOO = 1
end

# Object は include したモジュー...

Module#const_missing(name) (18694.0)

定義されていない定数を参照したときに Ruby インタプリタが このメソッドを呼びます。

定義されていない定数を参照したときに Ruby インタプリタが
このメソッドを呼びます。

@param name 参照した定数名の Symbol

@raise NameError このメソッドを呼び出した場合、デフォルトで発生する例外


//emlist[例][ruby]{
class Foo
def Foo.const_missing(id)
warn "undefined constant #{id.inspect}"
end

Bar
end
Foo::Bar

# => undefined constant :Bar
# undefined consta...

Module#const_source_location(name, inherited = true) -> [String, Integer] (18694.0)

name で指定した定数の定義を含むソースコードのファイル名と行番号を配列で返します。

name で指定した定数の定義を含むソースコードのファイル名と行番号を配列で返します。

@param name Symbol,String で定数の名前を指定します。
@param inherited true を指定するとスーパークラスや include したモジュールで定義された定数が対象にはなります。false を指定した場合 対象にはなりません。
@return ソースコードのファイル名と行番号を配列で返します。
指定した定数が見つからない場合は nil を返します。
定数は見つかったがソースファイルが見つからなかった場合は空の配列を返します。

...

Module#instance_method(name) -> UnboundMethod (18694.0)

self のインスタンスメソッド name をオブジェクト化した UnboundMethod を返します。

self のインスタンスメソッド name をオブジェクト化した UnboundMethod を返します。

@param name メソッド名を Symbol または String で指定します。

@raise NameError self に存在しないメソッドを指定した場合に発生します。

@see Module#public_instance_method, Object#method

//emlist[例][ruby]{
class Interpreter
def do_a() print "there, "; end
def do_d() print "Hello ";...

絞り込み条件を変える

Module#method_defined?(name, inherit=true) -> bool (18694.0)

モジュールにインスタンスメソッド name が定義されており、 かつその可視性が public または protected であるときに true を返します。

モジュールにインスタンスメソッド name が定義されており、
かつその可視性が public または protected であるときに
true を返します。

@param name Symbol か String を指定します。
@param inherit 真を指定するとスーパークラスや include したモジュールで
定義されたメソッドも対象になります。

@see Module#public_method_defined?, Module#private_method_defined?, Module#protected_method_defined?

//em...

Module#private_class_method(*name) -> self (18694.0)

name で指定したクラスメソッド (クラスの特異メソッド) の 可視性を private に変更します。

name で指定したクラスメソッド (クラスの特異メソッド) の
可視性を private に変更します。

@param name 0 個以上の String または Symbol を指定します。
@param names 0 個以上の String または Symbol を Array で指定します。

//emlist[例][ruby]{
module Foo
def self.foo; end
end

Foo.singleton_class.private_method_defined?(:foo) # => false
Foo.private_class_method(:f...

Module#private_class_method(names) -> self (18694.0)

name で指定したクラスメソッド (クラスの特異メソッド) の 可視性を private に変更します。

name で指定したクラスメソッド (クラスの特異メソッド) の
可視性を private に変更します。

@param name 0 個以上の String または Symbol を指定します。
@param names 0 個以上の String または Symbol を Array で指定します。

//emlist[例][ruby]{
module Foo
def self.foo; end
end

Foo.singleton_class.private_method_defined?(:foo) # => false
Foo.private_class_method(:f...

Module#private_constant(*name) -> self (18694.0)

name で指定した定数の可視性を private に変更します。

name で指定した定数の可視性を private に変更します。

@param name 0 個以上の String か Symbol を指定します。

@raise NameError 存在しない定数を指定した場合に発生します。

@return self を返します。

@see Module#public_constant

//emlist[例][ruby]{
module Foo
BAR = 'bar'
class Baz; end
QUX = 'qux'
class Quux; end

private_constant :QUX
private_co...

Module#private_method_defined?(name, inherit=true) -> bool (18694.0)

インスタンスメソッド name がモジュールに定義されており、 しかもその可視性が private であるときに true を返します。 そうでなければ false を返します。

インスタンスメソッド name がモジュールに定義されており、
しかもその可視性が private であるときに true を返します。
そうでなければ false を返します。

@param name Symbol か String を指定します。
@param inherit 真を指定するとスーパークラスや include したモジュールで
定義されたメソッドも対象になります。

@see Module#method_defined?, Module#public_method_defined?, Module#protected_method_defined?

//e...

絞り込み条件を変える

Module#public_class_method(*name) -> self (18694.0)

name で指定したクラスメソッド (クラスの特異メソッド) の 可視性を public に変更します。

name で指定したクラスメソッド (クラスの特異メソッド) の
可視性を public に変更します。

@param name 0 個以上の String または Symbol を指定します。
@param names 0 個以上の String または Symbol を Array で指定します。

//emlist[例][ruby]{
class Foo
def self.foo
"foo"
end

private_class_method :foo
end

Foo.foo # NoMethodError: private method `foo' call...

Module#public_class_method(names) -> self (18694.0)

name で指定したクラスメソッド (クラスの特異メソッド) の 可視性を public に変更します。

name で指定したクラスメソッド (クラスの特異メソッド) の
可視性を public に変更します。

@param name 0 個以上の String または Symbol を指定します。
@param names 0 個以上の String または Symbol を Array で指定します。

//emlist[例][ruby]{
class Foo
def self.foo
"foo"
end

private_class_method :foo
end

Foo.foo # NoMethodError: private method `foo' call...

Module#public_constant(*name) -> self (18694.0)

name で指定した定数の可視性を public に変更します。

name で指定した定数の可視性を public に変更します。

@param name 0 個以上の String か Symbol を指定します。

@raise NameError 存在しない定数を指定した場合に発生します。

@return self を返します。

//emlist[例][ruby]{
module SampleModule
class SampleInnerClass
end

# => 非公開クラスであることを明示するために private にする
private_constant :SampleInnerClass
end

begin
...

Module#public_instance_method(name) -> UnboundMethod (18694.0)

self の public インスタンスメソッド name をオブジェクト化した UnboundMethod を返します。

self の public インスタンスメソッド name をオブジェクト化した UnboundMethod を返します。

@param name メソッド名を Symbol または String で指定します。

@raise NameError 定義されていないメソッド名や、
protected メソッド名、 private メソッド名を引数として与えると発生します。

//emlist[例][ruby]{
Kernel.public_instance_method(:object_id) #=> #<UnboundMethod: Kernel#object_id>
Ke...

Module#public_method_defined?(name, inherit=true) -> bool (18694.0)

インスタンスメソッド name がモジュールに定義されており、 しかもその可視性が public であるときに true を返します。 そうでなければ false を返します。

インスタンスメソッド name がモジュールに定義されており、
しかもその可視性が public であるときに true を返します。
そうでなければ false を返します。

@param name Symbol か String を指定します。
@param inherit 真を指定するとスーパークラスや include したモジュールで
定義されたメソッドも対象になります。

@see Module#method_defined?, Module#private_method_defined?, Module#protected_method_defined?

//e...

絞り込み条件を変える

Module#remove_const(name) -> object (18694.0)

name で指定した定数を取り除き、その定数に設定されていた値を 返します。

name で指定した定数を取り除き、その定数に設定されていた値を
返します。

@param name String または Symbol を指定します。

@return 引数で指定された定数に設定されていた値を返します。

@raise NameError 引数で指定された定数がそのモジュールやクラスに定義されていない場合に発生します。

//emlist[例][ruby]{
class Foo
FOO = 1
p remove_const(:FOO) # => 1
p FOO # => uninitialized constant FOO at Foo (Na...

Object#singleton_method(name) -> Method (18694.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 (18682.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 (18682.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 (18682.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...

絞り込み条件を変える

Module#method_removed(name) -> () (18682.0)

メソッドが Module#remove_method により削除 された時にインタプリタがこのメソッドを呼び出します。

メソッドが Module#remove_method により削除
された時にインタプリタがこのメソッドを呼び出します。

特異メソッドの削除に対するフックには
BasicObject#singleton_method_removed
を使います。

@param name 削除されたメソッド名が Symbol で渡されます。

//emlist[例][ruby]{
class Foo
def Foo.method_removed(name)
puts "method \"#{name}\" was removed"
end

def foo
end
remove_...

Module#module_function(*name) -> Array (18667.0)

メソッドをモジュール関数にします。

メソッドをモジュール関数にします。

引数が与えられた時には、
引数で指定されたメソッドをモジュール関数にします。
引数なしのときは今後このモジュール定義文内で
新しく定義されるメソッドをすべてモジュール関数にします。

モジュール関数とは、プライベートメソッドであると同時に
モジュールの特異メソッドでもあるようなメソッドです。
例えば Math モジュールのメソッドはすべてモジュール関数です。

単一の引数が与えられた時には与えられた引数をそのまま返します。
複数の引数が与えられた時には配列にまとめて返します。
引数なしの時は nil を返します。

@param name String ...

Module#module_function(name) -> String | Symbol (18667.0)

メソッドをモジュール関数にします。

メソッドをモジュール関数にします。

引数が与えられた時には、
引数で指定されたメソッドをモジュール関数にします。
引数なしのときは今後このモジュール定義文内で
新しく定義されるメソッドをすべてモジュール関数にします。

モジュール関数とは、プライベートメソッドであると同時に
モジュールの特異メソッドでもあるようなメソッドです。
例えば Math モジュールのメソッドはすべてモジュール関数です。

単一の引数が与えられた時には与えられた引数をそのまま返します。
複数の引数が与えられた時には配列にまとめて返します。
引数なしの時は nil を返します。

@param name String ...

ENV.to_h {|name, value| block } -> Hash (18664.0)

環境変数の名前をキーとし、対応する値をもつハッシュを返します。

環境変数の名前をキーとし、対応する値をもつハッシュを返します。

ブロックを指定すると各ペアでブロックを呼び出し、
その結果をペアとして使います。
//emlist[ブロック付きの例][ruby]{
ENV.to_h {|name, value| [name, value.size] }
//}

Data#deconstruct_keys(array_of_names_or_nil) -> Hash (18661.0)

self のメンバの名前と値の組を Hash で返します。

self のメンバの名前と値の組を Hash で返します。

//emlist[例][ruby]{
Measure = Data.define(:amount, :unit)

distance = Measure.new(10, 'km')
distance.deconstruct_keys(nil) # => {:amount=>10, :unit=>"km"}
distance.deconstruct_keys([:amount]) # => {:amount=>10}
//}

このメソッドは以下のようにパターンマッチで利用されます。

//emlist[例][ruby]...

絞り込み条件を変える

Module#private(*name) -> Array (18649.0)

メソッドを private に設定します。

メソッドを private に設定します。

引数なしのときは今後このクラスまたはモジュール定義内で新規に定義さ
れるメソッドを関数形式でだけ呼び出せるように(private)設定します。

引数が与えられた時には引数によって指定されたメソッドを private に
設定します。

可視性については d:spec/def#limit を参照して下さい。

@param name 0 個以上の String または Symbol を指定します。
@param names 0 個以上の String または Symbol を Array で指定します。

@raise NameError 存在...

Module#private(name) -> String | Symbol (18649.0)

メソッドを private に設定します。

メソッドを private に設定します。

引数なしのときは今後このクラスまたはモジュール定義内で新規に定義さ
れるメソッドを関数形式でだけ呼び出せるように(private)設定します。

引数が与えられた時には引数によって指定されたメソッドを private に
設定します。

可視性については d:spec/def#limit を参照して下さい。

@param name 0 個以上の String または Symbol を指定します。
@param names 0 個以上の String または Symbol を Array で指定します。

@raise NameError 存在...

Module#private(names) -> Array (18649.0)

メソッドを private に設定します。

メソッドを private に設定します。

引数なしのときは今後このクラスまたはモジュール定義内で新規に定義さ
れるメソッドを関数形式でだけ呼び出せるように(private)設定します。

引数が与えられた時には引数によって指定されたメソッドを private に
設定します。

可視性については d:spec/def#limit を参照して下さい。

@param name 0 個以上の String または Symbol を指定します。
@param names 0 個以上の String または Symbol を Array で指定します。

@raise NameError 存在...

Module#autoload?(const_name) -> String | nil (18646.0)

autoload 定数がまだ定義されてない(ロードされていない) ときにそのパス名を返します。 また、ロード済みなら nil を返します。

autoload 定数がまだ定義されてない(ロードされていない) ときにそのパス名を返します。
また、ロード済みなら nil を返します。

@param const_name String または Symbol で指定します。

@see Kernel.#autoload?

//emlist[例][ruby]{
autoload :Date, 'date'

autoload?(:Date) # => "date"
Date
autoload?(:Date) # => nil
autoload?(:Foo) # => nil
//}

BasicObject#instance_eval(expr, filename = "(eval)", lineno = 1) -> object (18643.0)

オブジェクトのコンテキストで文字列 expr またはオブジェクト自身をブロックパラメータとするブロックを 評価してその結果を返します。

オブジェクトのコンテキストで文字列 expr またはオブジェクト自身をブロックパラメータとするブロックを
評価してその結果を返します。

オブジェクトのコンテキストで評価するとは評価中の self をそのオブジェクトにして実行するということです。
また、文字列 expr やブロック中でメソッドを定義すればそのオブジェクトの特異メソッドが定義されます。

ただし、ローカル変数だけは、文字列 expr の評価では instance_eval の外側のスコープと、ブロックの評価ではそのブロックの外側のスコープと、共有します。

メソッド定義の中で instance_eval でメソッドを定義した場...

絞り込み条件を変える

<< 1 2 3 > >>