るりまサーチ (Ruby 2.3.0)

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

別のキーワード

  1. socket send
  2. udpsocket send
  3. socket msg_send
  4. object send
  5. _builtin send

ライブラリ

モジュール

検索結果

<< 1 2 > >>

Object#send(name, *args) -> object (54541.0)

オブジェクトのメソッド name を args を引数に して呼び出し、メソッドの実行結果を返します。

オブジェクトのメソッド name を args を引数に
して呼び出し、メソッドの実行結果を返します。

ブロック付きで呼ばれたときはブロックもそのまま引き渡します。

send が再定義された場合に備えて別名 __send__ も
用意されており、ライブラリではこちらを使うべきです。また
__send__ は再定義すべきではありません。

send, __send__ は、メソッドの呼び出し制限
にかかわらず任意のメソッドを呼び出せます。
d:spec/def#limit も参照してください。

public メソッドだけ呼び出せれば良い場合は
Object#public_send を使う...

Object#send(name, *args) { .... } -> object (54541.0)

オブジェクトのメソッド name を args を引数に して呼び出し、メソッドの実行結果を返します。

オブジェクトのメソッド name を args を引数に
して呼び出し、メソッドの実行結果を返します。

ブロック付きで呼ばれたときはブロックもそのまま引き渡します。

send が再定義された場合に備えて別名 __send__ も
用意されており、ライブラリではこちらを使うべきです。また
__send__ は再定義すべきではありません。

send, __send__ は、メソッドの呼び出し制限
にかかわらず任意のメソッドを呼び出せます。
d:spec/def#limit も参照してください。

public メソッドだけ呼び出せれば良い場合は
Object#public_send を使う...

BasicSocket#send(mesg, flags, dest_sockaddr = nil) -> Integer (54388.0)

ソケットを介してデータを送ります。flags に関しては send(2) を参照してください。connect していないソケット に対しては送り先である dest_sockaddr を指定する必要があります。実際に送っ たデータの長さを返します。

ソケットを介してデータを送ります。flags に関しては
send(2) を参照してください。connect していないソケット
に対しては送り先である dest_sockaddr を指定する必要があります。実際に送っ
たデータの長さを返します。

dest_sockaddr には「ソケットアドレス構造体を pack した文字列」
を指定します。

データの送信に失敗した場合は例外 Errno::EXXX が発生します。

@param mesg 送信するデータを文字列で指定します。

@param flags send(2) の flags を参照してください。

@...

UDPSocket#send(mesg, flags , dest_sockaddr=nil) -> Integer (54355.0)

4 引数の形式で UDPSocket#send 実行したとき、 パラメータ host の名前解決に resolv ライブラリを使います。

4 引数の形式で UDPSocket#send 実行したとき、
パラメータ host の名前解決に
resolv ライブラリを使います。

@param mesg 送るデータを文字列で与えます。
@param flags フラグを指定します。
@param host データを送る先のホストを指定します。
@param port データを送る先のポートを指定します。
@raise SocketError 名前解決に失敗した場合に発生します。

UDPSocket#send(mesg, flags) -> Integer (54346.0)

UDP ソケットを介してデータを送ります。

UDP ソケットを介してデータを送ります。

flags には Socket::MSG_* という定数の bitwise OR を渡します。
詳しい意味は send(2) を参照してください。

host, port の対、もしくは sockaddr_to で送り先を指定します。
送り先を省略した場合は UDPSocket#connect で接続した
先にデータを送ります。

実際に送ったデータの長さを返します。

sockaddr_to にはlib:socket#pack_string もしくは
Addrinfo オブジェクトを指定します。

host, port に関しては lib:so...

絞り込み条件を変える

UDPSocket#send(mesg, flags, host, port) -> Integer (54346.0)

UDP ソケットを介してデータを送ります。

UDP ソケットを介してデータを送ります。

flags には Socket::MSG_* という定数の bitwise OR を渡します。
詳しい意味は send(2) を参照してください。

host, port の対、もしくは sockaddr_to で送り先を指定します。
送り先を省略した場合は UDPSocket#connect で接続した
先にデータを送ります。

実際に送ったデータの長さを返します。

sockaddr_to にはlib:socket#pack_string もしくは
Addrinfo オブジェクトを指定します。

host, port に関しては lib:so...

UDPSocket#send(mesg, flags, sockaddr_to) -> Integer (54346.0)

UDP ソケットを介してデータを送ります。

UDP ソケットを介してデータを送ります。

flags には Socket::MSG_* という定数の bitwise OR を渡します。
詳しい意味は send(2) を参照してください。

host, port の対、もしくは sockaddr_to で送り先を指定します。
送り先を省略した場合は UDPSocket#connect で接続した
先にデータを送ります。

実際に送ったデータの長さを返します。

sockaddr_to にはlib:socket#pack_string もしくは
Addrinfo オブジェクトを指定します。

host, port に関しては lib:so...

BasicObject#__send__(name, *args) -> object (18415.0)

オブジェクトのメソッド name を args を引数にして呼び出し、メソッドの結果を返します。

オブジェクトのメソッド name を args を引数にして呼び出し、メソッドの結果を返します。

ブロック付きで呼ばれたときはブロックもそのまま引き渡します。

@param name 呼び出すメソッドの名前。 Symbol または文字列で指定します。
@param args メソッドに渡す任意個の引数

//emlist[例][ruby]{
class Mail
def delete(*args)
"(Mail#delete) - delete " + args.join(',')
end
def send(name, *args)
"(Mail#send) -...

BasicObject#__send__(name, *args) { .... } -> object (18415.0)

オブジェクトのメソッド name を args を引数にして呼び出し、メソッドの結果を返します。

オブジェクトのメソッド name を args を引数にして呼び出し、メソッドの結果を返します。

ブロック付きで呼ばれたときはブロックもそのまま引き渡します。

@param name 呼び出すメソッドの名前。 Symbol または文字列で指定します。
@param args メソッドに渡す任意個の引数

//emlist[例][ruby]{
class Mail
def delete(*args)
"(Mail#delete) - delete " + args.join(',')
end
def send(name, *args)
"(Mail#send) -...

Object#public_send(name, *args) -> object (18379.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 (18379.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...

Socket::Constants::MSG_SEND -> Integer (18352.0)

@todo Send the packet in so_temp

@todo
Send the packet in so_temp

Socket::MSG_SEND -> Integer (18352.0)

@todo Send the packet in so_temp

@todo
Send the packet in so_temp

Net::SMTP#send_mail(mailsrc, from_addr, *to_addrs) -> () (18325.0)

メールを送信します。

メールを送信します。

mailsrc をメールとして送信します。
mailsrc は each イテレータを持つ
オブジェクトならなんでも構いません(たとえば String や File)。

from_domain は送り主のメールアドレス ('...@...'のかたち) 、
to_addrs には送信先メールアドレスを文字列で渡します。

require 'net/smtp'

Net::SMTP.start('smtp.example.com') {|smtp|
smtp.send_message mail_string,
...

Net::SMTP#send_message(mailsrc, from_addr, *to_addrs) -> () (18325.0)

メールを送信します。

メールを送信します。

mailsrc をメールとして送信します。
mailsrc は each イテレータを持つ
オブジェクトならなんでも構いません(たとえば String や File)。

from_domain は送り主のメールアドレス ('...@...'のかたち) 、
to_addrs には送信先メールアドレスを文字列で渡します。

require 'net/smtp'

Net::SMTP.start('smtp.example.com') {|smtp|
smtp.send_message mail_string,
...

絞り込み条件を変える

Net::SMTP#sendmail(mailsrc, from_addr, *to_addrs) -> () (18325.0)

メールを送信します。

メールを送信します。

mailsrc をメールとして送信します。
mailsrc は each イテレータを持つ
オブジェクトならなんでも構いません(たとえば String や File)。

from_domain は送り主のメールアドレス ('...@...'のかたち) 、
to_addrs には送信先メールアドレスを文字列で渡します。

require 'net/smtp'

Net::SMTP.start('smtp.example.com') {|smtp|
smtp.send_message mail_string,
...

Net::HTTP#send_request(name, path, data = nil, header = nil) -> Net::HTTPResponse (18322.0)

HTTP リクエストをサーバに送り、そのレスポンスを Net::HTTPResponse のインスタンスとして返します。

HTTP リクエストをサーバに送り、そのレスポンスを
Net::HTTPResponse のインスタンスとして返します。

@param name リクエストのメソッド名を文字列で与えます。
@param path リクエストのパスを文字列で与えます。
@param data リクエストのボディを文字列で与えます。
@param header リクエストのヘッダをハッシュで与えます。

//emlist[例][ruby]{
response = http.send_request('GET', '/index.html')
puts response.body
//}

@see Net::H...

UNIXSocket#send_io(io) -> nil (18322.0)

引数 io に対応するファイルディスクリプタをソケットの接続先に送ります。

引数 io に対応するファイルディスクリプタをソケットの接続先に送ります。

require 'socket'

s1, s2 = UNIXSocket.pair

s1.send_io STDOUT
stdout = s2.recv_io

p STDOUT.fileno #=> 1
p stdout.fileno #=> 6

stdout.puts "hello" # outputs "hello\n" to standard output.

@param io 送るファイルディスクリプタ(整数 or IOオブジェクト)

BasicSocket#sendmsg(mesg, flags=0, dest_sockaddr=nil, *controls) -> Integer (18319.0)

sendmsg(2) を用いてメッセージを送ります。

sendmsg(2) を用いてメッセージを送ります。

このメソッドはブロックします。ノンブロッキング方式で通信したい
場合は BasicSocket#sendmsg_nonblock を用います。

ソケットが connection-less の場合は dest_sockaddr で
通信先のアドレスを指定しなければなりません。Socket.sockaddr_in
の返り値や Addrinfo オブジェクトを引数として渡すことができます。

controls には 補助データ(ancillary data)を渡します。
Socket::AncillaryData のインスタンスや
3要素(c...

BasicSocket#sendmsg_nonblock(mesg, flags=0, dest_sockaddr=nil, *controls) -> Integer (18301.0)

sendmsg(2) を用いてノンブロッキング方式でメッセージを送ります。

sendmsg(2) を用いてノンブロッキング方式でメッセージを送ります。

詳しくは BasicSocket#sendmsg を見てください。

@return 送ったバイト数
@param mesg メッセージ文字列
@param flags フラグ(Socket::MSG_* という定数の bitwise OR を取ったもの)
@param dest_sockaddr 通信先のアドレス
@param controls 補助データの配列
@see BasicSocket#sendmsg

絞り込み条件を変える

IRB::Frame.sender -> object (18301.0)

センダになっているオブジェクトを取り出します。 センダとは、そのメソッドを呼び出した側の self のことです。

センダになっているオブジェクトを取り出します。
センダとは、そのメソッドを呼び出した側の self のことです。

Net::FTP#sendcmd(cmd) -> String (18301.0)

cmd で指定されたコマンドをサーバーに送り、 サーバーからの応答を返します。

cmd で指定されたコマンドをサーバーに送り、
サーバーからの応答を返します。

@param cmd コマンドを文字列で指定します。

@raise Net::FTPTempError 応答コードが 4yz のときに発生します。
@raise Net::FTPPermError 応答コードが 5yz のときに発生します。
@raise Net::FTPProtoError 応答コードが RFC 的に正しくない場合に発生します。

Net::IMAP::Envelope#sender -> [Net::IMAP::Address] | nil (18301.0)

Sender を Net::IMAP::Address オブジェクトの配列で返します。

Sender を Net::IMAP::Address オブジェクトの配列で返します。

エンベロープに存在しないときは nil を返します。

Socket::Constants::IP_SENDSRCADDR -> Integer (18301.0)

ource address for outgoing UDP datagrams。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。

ource address for outgoing UDP datagrams。
BasicSocket#getsockopt, BasicSocket#setsockopt
の第2引数(optname)に使用します。

@see Socket::Constants::IPPROTO_IP, ip(4freebsd)

Socket::IP_SENDSRCADDR -> Integer (18301.0)

ource address for outgoing UDP datagrams。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。

ource address for outgoing UDP datagrams。
BasicSocket#getsockopt, BasicSocket#setsockopt
の第2引数(optname)に使用します。

@see Socket::Constants::IPPROTO_IP, ip(4freebsd)

絞り込み条件を変える

static VALUE rb_f_send(int argc, VALUE *argv, VALUE recv) (18301.0)

net/smtp (127.0)

メールを送信するためのプロトコル SMTP (Simple Mail Transfer Protocol) を扱うライブラリです。

メールを送信するためのプロトコル SMTP (Simple Mail Transfer Protocol)
を扱うライブラリです。

ヘッダなどメールのデータを扱うことはできません。
SMTP の実装は 2821 に基いています。

=== 使用例

==== とにかくメールを送る

SMTP を使ってメールを送るにはまず SMTP.start でセッションを開きます。
第一引数がサーバのアドレスで第二引数がポート番号です。
ブロックを使うと File.open と同じように終端処理を自動的にやってくれる
のでおすすめです。

require 'net/smtp'
Net::SMTP....

Socket::Constants::MSG_DONTROUTE -> Integer (103.0)

Send without using the routing tables。

Send without using the routing tables。

BasicSocket#send, BasicSocket#sendmsg の
flags 引数に用います。

@see sys/socket.h(header),
send(2linux)
send(2freebsd)

Socket::MSG_DONTROUTE -> Integer (103.0)

Send without using the routing tables。

Send without using the routing tables。

BasicSocket#send, BasicSocket#sendmsg の
flags 引数に用います。

@see sys/socket.h(header),
send(2linux)
send(2freebsd)

Socket::Constants::MSG_MORE -> Integer (85.0)

Sender will send more

Sender will send more

BasicSocket#send, BasicSocket#sendmsg の
flags 引数に用います。

@see send(2linux)

絞り込み条件を変える

Socket::MSG_MORE -> Integer (85.0)

Sender will send more

Sender will send more

BasicSocket#send, BasicSocket#sendmsg の
flags 引数に用います。

@see send(2linux)

DRb::DRbProtocol (73.0)

drb で使われる通信プロトコルを取り扱うモジュールです。

drb で使われる通信プロトコルを取り扱うモジュールです。

通常ユーザが使うことはないでしょうが、drb の
ための新しい通信手段を定義したい場合には
このモジュールを使う必要があります。
通信手段を定義したクラスを DRb::DRbProtocol.#add_protocol で
drb に登録することで、追加ができます。

デフォルトでは DRbTCPSocket クラスを用い、druby://... という
URI を指定することで TCP/IP で通信します。

通信プロトコルを追加する例としては、
例としては drb/unix で定義している DRb::DRbUNIXSocket ...

Method (73.0)

Object#method によりオブジェクト化され たメソッドオブジェクトのクラスです。

Object#method によりオブジェクト化され
たメソッドオブジェクトのクラスです。

メソッドの実体(名前でなく)とレシーバの組を封入します。
Proc オブジェクトと違ってコンテキストを保持しません。

=== Proc との差

Method は取り出しの対象であるメソッドが
なければ作れませんが、Proc は準備なしに作れます。その点から
Proc は使い捨てに向き、Method は何度も繰り返し生成する
場合に向くと言えます。また内包するコードの大きさという点では
Proc は小規模、Method は大規模コードに向くと言えます。


既存のメソッドを Method オブジェク...

Socket::Constants::MSG_EOR -> Integer (73.0)

Data completes record。

Data completes record。

BasicSocket#send, BasicSocket#sendmsg,
BasicSocket#recv, BasicSocket#recvmsg の
flags 引数に用います。

@see sys/socket.h(header),
send(2), sendto(2), sendmsg(2),
recv(2), recvfrom(2), recvmsg(2),
send(2linux), recv(2linux),
send(2freebsd), recv(2freebsd)

Socket::Constants::MSG_OOB -> Integer (73.0)

Process out-of-band data。

Process out-of-band data。

BasicSocket#send, BasicSocket#sendmsg,
BasicSocket#recv, BasicSocket#recvmsg の
flags 引数に用います。

@see sys/socket.h(header),
send(2), sendto(2), sendmsg(2),
recv(2), recvfrom(2), recvmsg(2),
send(2linux), recv(2linux),
send(2freebsd), recv(2freebsd)

絞り込み条件を変える

Socket::Constants::MSG_PEEK -> Integer (73.0)

Peek at incoming message。

Peek at incoming message。

BasicSocket#send, BasicSocket#sendmsg,
BasicSocket#recv, BasicSocket#recvmsg の
flags 引数に用います。

@see sys/socket.h(header),
send(2), sendto(2), sendmsg(2),
recv(2), recvfrom(2), recvmsg(2),
send(2linux), recv(2linux),
send(2freebsd), recv(2freebsd)

Socket::MSG_EOR -> Integer (73.0)

Data completes record。

Data completes record。

BasicSocket#send, BasicSocket#sendmsg,
BasicSocket#recv, BasicSocket#recvmsg の
flags 引数に用います。

@see sys/socket.h(header),
send(2), sendto(2), sendmsg(2),
recv(2), recvfrom(2), recvmsg(2),
send(2linux), recv(2linux),
send(2freebsd), recv(2freebsd)

Socket::MSG_OOB -> Integer (73.0)

Process out-of-band data。

Process out-of-band data。

BasicSocket#send, BasicSocket#sendmsg,
BasicSocket#recv, BasicSocket#recvmsg の
flags 引数に用います。

@see sys/socket.h(header),
send(2), sendto(2), sendmsg(2),
recv(2), recvfrom(2), recvmsg(2),
send(2linux), recv(2linux),
send(2freebsd), recv(2freebsd)

Socket::MSG_PEEK -> Integer (73.0)

Peek at incoming message。

Peek at incoming message。

BasicSocket#send, BasicSocket#sendmsg,
BasicSocket#recv, BasicSocket#recvmsg の
flags 引数に用います。

@see sys/socket.h(header),
send(2), sendto(2), sendmsg(2),
recv(2), recvfrom(2), recvmsg(2),
send(2linux), recv(2linux),
send(2freebsd), recv(2freebsd)

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 ファイルのフォーマット変更
* ...

絞り込み条件を変える

Socket::Constants::MSG_CTRUNC -> Integer (55.0)

Control data lost before delivery。

Control data lost before delivery。

BasicSocket#send, BasicSocket#sendmsg,
BasicSocket#recv, BasicSocket#recvmsg の
flags 引数に用います。

@see sys/socket.h(header),
send(2linux), recv(2linux),
send(2freebsd), recv(2freebsd)

Socket::Constants::MSG_NOSIGNAL -> Integer (55.0)

Do not generate SIGPIPE

Do not generate SIGPIPE

BasicSocket#send, BasicSocket#sendmsg の
flags 引数に用います。

@see send(2linux), send(2freebsd)

Socket::Constants::MSG_TRUNC -> Integer (55.0)

Data discarded before delivery。

Data discarded before delivery。

BasicSocket#send, BasicSocket#sendmsg,
BasicSocket#recv, BasicSocket#recvmsg
の flags 引数に用います。

@see sys/socket.h(header),
send(2linux), recv(2linux),
send(2freebsd), recv(2freebsd)

Socket::MSG_CTRUNC -> Integer (55.0)

Control data lost before delivery。

Control data lost before delivery。

BasicSocket#send, BasicSocket#sendmsg,
BasicSocket#recv, BasicSocket#recvmsg の
flags 引数に用います。

@see sys/socket.h(header),
send(2linux), recv(2linux),
send(2freebsd), recv(2freebsd)

Socket::MSG_NOSIGNAL -> Integer (55.0)

Do not generate SIGPIPE

Do not generate SIGPIPE

BasicSocket#send, BasicSocket#sendmsg の
flags 引数に用います。

@see send(2linux), send(2freebsd)

絞り込み条件を変える

Socket::MSG_TRUNC -> Integer (55.0)

Data discarded before delivery。

Data discarded before delivery。

BasicSocket#send, BasicSocket#sendmsg,
BasicSocket#recv, BasicSocket#recvmsg
の flags 引数に用います。

@see sys/socket.h(header),
send(2linux), recv(2linux),
send(2freebsd), recv(2freebsd)

Thread::ConditionVariable (55.0)

スレッドの同期機構の一つである状態変数を実現するクラスです。

スレッドの同期機構の一つである状態変数を実現するクラスです。

以下も ConditionVariable を理解するのに参考になります。

https://ruby-doc.com/docs/ProgrammingRuby/html/tut_threads.html#UF

=== Condition Variable とは

あるスレッド A が排他領域で動いていたとします。スレッド A は現在空いていない
リソースが必要になったので空くまで待つことにしたとします。これはうまくいきません。
なぜなら、スレッド A は排他領域で動いているわけですから、他のスレッドは動くことが
できません。リ...

Socket::Constants::IP_PMTUDISC_DO -> Integer (49.0)

Always send DF frames。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。

Always send DF frames。
BasicSocket#getsockopt, BasicSocket#setsockopt
の第2引数(optname)に使用します。

@see Socket::Constants::IPPROTO_IP, ip(7linux)

Socket::Constants::IP_PMTUDISC_DONT -> Integer (49.0)

Never send DF frames。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。

Never send DF frames。
BasicSocket#getsockopt, BasicSocket#setsockopt
の第2引数(optname)に使用します。

@see Socket::Constants::IPPROTO_IP, ip(7linux)

Socket::Constants::SO_DONTROUTE -> Integer (49.0)

Send without using the routing tables。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。

Send without using the routing tables。
BasicSocket#getsockopt, BasicSocket#setsockopt
の第2引数(optname)に使用します。

@see sys/socket.h(header), getsockopt(2freebsd),
socket(7linux), Socket::Constants::SOL_SOCKET

絞り込み条件を変える

Socket::Constants::SO_SNDBUF -> Integer (49.0)

Send buffer size。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。

Send buffer size。
BasicSocket#getsockopt, BasicSocket#setsockopt
の第2引数(optname)に使用します。

@see sys/socket.h(header), getsockopt(2freebsd),
socket(7linux), Socket::Constants::SOL_SOCKET

Socket::Constants::SO_SNDTIMEO -> Integer (49.0)

Send timeout。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。

Send timeout。
BasicSocket#getsockopt, BasicSocket#setsockopt
の第2引数(optname)に使用します。

@see sys/socket.h(header), getsockopt(2freebsd),
socket(7linux), Socket::Constants::SOL_SOCKET

Socket::Constants::TCP_CORK -> Integer (49.0)

Don't send partial frames。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。

Don't send partial frames。
BasicSocket#getsockopt, BasicSocket#setsockopt
の第2引数(optname)に使用します。

@see tcp(7linux)

Socket::Constants::UDP_CORK -> Integer (49.0)

Don't send partial frames BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。

Don't send partial frames
BasicSocket#getsockopt, BasicSocket#setsockopt
の第2引数(optname)に使用します。

@see udp(7linux)

Socket::IP_PMTUDISC_DO -> Integer (49.0)

Always send DF frames。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。

Always send DF frames。
BasicSocket#getsockopt, BasicSocket#setsockopt
の第2引数(optname)に使用します。

@see Socket::Constants::IPPROTO_IP, ip(7linux)

絞り込み条件を変える

Socket::IP_PMTUDISC_DONT -> Integer (49.0)

Never send DF frames。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。

Never send DF frames。
BasicSocket#getsockopt, BasicSocket#setsockopt
の第2引数(optname)に使用します。

@see Socket::Constants::IPPROTO_IP, ip(7linux)

Socket::SO_DONTROUTE -> Integer (49.0)

Send without using the routing tables。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。

Send without using the routing tables。
BasicSocket#getsockopt, BasicSocket#setsockopt
の第2引数(optname)に使用します。

@see sys/socket.h(header), getsockopt(2freebsd),
socket(7linux), Socket::Constants::SOL_SOCKET

Socket::SO_SNDBUF -> Integer (49.0)

Send buffer size。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。

Send buffer size。
BasicSocket#getsockopt, BasicSocket#setsockopt
の第2引数(optname)に使用します。

@see sys/socket.h(header), getsockopt(2freebsd),
socket(7linux), Socket::Constants::SOL_SOCKET

Socket::SO_SNDTIMEO -> Integer (49.0)

Send timeout。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。

Send timeout。
BasicSocket#getsockopt, BasicSocket#setsockopt
の第2引数(optname)に使用します。

@see sys/socket.h(header), getsockopt(2freebsd),
socket(7linux), Socket::Constants::SOL_SOCKET

Socket::TCP_CORK -> Integer (49.0)

Don't send partial frames。 BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。

Don't send partial frames。
BasicSocket#getsockopt, BasicSocket#setsockopt
の第2引数(optname)に使用します。

@see tcp(7linux)

絞り込み条件を変える

Socket::UDP_CORK -> Integer (49.0)

Don't send partial frames BasicSocket#getsockopt, BasicSocket#setsockopt の第2引数(optname)に使用します。

Don't send partial frames
BasicSocket#getsockopt, BasicSocket#setsockopt
の第2引数(optname)に使用します。

@see udp(7linux)

1.6.8から1.8.0への変更点(まとめ) (37.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への変更点(まとめ)/変更されたクラス/メソッド(互換性のない変更)>))...

Marshal フォーマット (37.0)

Marshal フォーマット フォーマットバージョン 4.8 を元に記述しています。

Marshal フォーマット
フォーマットバージョン 4.8 を元に記述しています。

=== nil, true, false

それぞれ、'0', 'T', 'F' になります。

//emlist[][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 されません...

Module#append_features(module_or_class) -> self (37.0)

モジュール(あるいはクラス)に self の機能を追加します。

モジュール(あるいはクラス)に self の機能を追加します。

このメソッドは Module#include の実体であり、
include を Ruby で書くと以下のように定義できます。

//emlist[例][ruby]{
def include(*modules)
modules.reverse_each do |mod|
# append_features や included はプライベートメソッドなので
# 直接 mod.append_features(self) などとは書けない
mod.__send__(:append_features, s...

Module#extend_object(obj) -> object (37.0)

Object#extend の実体です。オブジェクトにモジュールの機能を追加します。

Object#extend の実体です。オブジェクトにモジュールの機能を追加します。

Object#extend は、Ruby で書くと以下のように定義できます。

//emlist[例][ruby]{
def extend(*modules)
modules.reverse_each do |mod|
# extend_object や extended はプライベートメソッドなので
# 直接 mod.extend_object(self) などとは書けない
mod.__send__(:extend_object, self)
mod.__send__...

絞り込み条件を変える

Object#method(name) -> Method (37.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#singleton_method(name) -> Method (37.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 = ...

Socket::Constants::MSG_CONFIRM -> Integer (37.0)

Confirm path validity

Confirm path validity

BasicSocket#send, BasicSocket#sendmsg
の flags 引数に用います。

@see send(2linux)

Socket::Constants::MSG_DONTWAIT -> Integer (37.0)

This message should be non-blocking。

This message should be non-blocking。

BasicSocket#send, BasicSocket#sendmsg,
BasicSocket#recv, BasicSocket#recvmsg の
flags 引数に用います。

@see send(2linux), recv(2linux),
recv(2freebsd)

Socket::Constants::MSG_EOF -> Integer (37.0)

Data completes connection。

Data completes connection。

BasicSocket#send, BasicSocket#sendmsg,
BasicSocket#recv, BasicSocket#recvmsg の
flags 引数に用います。

@see send(2freebsd)

絞り込み条件を変える

Socket::MSG_CONFIRM -> Integer (37.0)

Confirm path validity

Confirm path validity

BasicSocket#send, BasicSocket#sendmsg
の flags 引数に用います。

@see send(2linux)

Socket::MSG_DONTWAIT -> Integer (37.0)

This message should be non-blocking。

This message should be non-blocking。

BasicSocket#send, BasicSocket#sendmsg,
BasicSocket#recv, BasicSocket#recvmsg の
flags 引数に用います。

@see send(2linux), recv(2linux),
recv(2freebsd)

Socket::MSG_EOF -> Integer (37.0)

Data completes connection。

Data completes connection。

BasicSocket#send, BasicSocket#sendmsg,
BasicSocket#recv, BasicSocket#recvmsg の
flags 引数に用います。

@see send(2freebsd)

UDPSocket#connect(host, port) -> 0 (37.0)

ソケットを host の port に connect(2) します。

ソケットを host の port に connect(2) します。

これによって UDPSocket#send で送り先のアドレスを指定せずに
データを送ることができます(connect しなくとも送り先のアドレスを明示すれば
データを送ることができます)。

require 'socket'

u1 = UDPSocket.new
u1.bind("127.0.0.1", 4913)
u2 = UDPSocket.new
u2.connect("127.0.0.1", 4913)
u2.send "uuuu", 0
p u1.recvfrom(10) #=...

UNIXSocket.pair(type=Socket::SOCK_STREAM, protocol=0) -> [UNIXSocket, UNIXSocket] (37.0)

相互に結合された UNIX ソケットのペアを含む2要素の配列を返します。

相互に結合された UNIX ソケットのペアを含む2要素の配列を返します。

type にはソケットタイプを指定します。
Socket::SOCK_STREAM, Socket::SOCK_DGRAM, Socket::SOCK_RAW などの
整数、:STREAM, :DGRAM, :RAW などのシンボル、
"STREAM" などの文字列が渡せます。

protocol には プロトコルを指定します。0 は Unix domain でのデフォルト値が
使われます。

require 'socket'

s1, s2 = UNIXSocket.pair
s1.send "a", ...

絞り込み条件を変える

UNIXSocket.socketpair(type=Socket::SOCK_STREAM, protocol=0) -> [UNIXSocket, UNIXSocket] (37.0)

相互に結合された UNIX ソケットのペアを含む2要素の配列を返します。

相互に結合された UNIX ソケットのペアを含む2要素の配列を返します。

type にはソケットタイプを指定します。
Socket::SOCK_STREAM, Socket::SOCK_DGRAM, Socket::SOCK_RAW などの
整数、:STREAM, :DGRAM, :RAW などのシンボル、
"STREAM" などの文字列が渡せます。

protocol には プロトコルを指定します。0 は Unix domain でのデフォルト値が
使われます。

require 'socket'

s1, s2 = UNIXSocket.pair
s1.send "a", ...

base64 (37.0)

Base64 エンコード / デコードを行うメソッドを定義したモジュールを提供するライブラリです。

Base64 エンコード / デコードを行うメソッドを定義したモジュールを提供するライブラリです。

Base64 は、3 オクテット (8bits * 3 = 24bits) のバイナリコードを
ASCII 文字のうちの 65 文字 ([A-Za-z0-9+/] の 64 文字と '=')
だけを使用して 4 オクテット (6bits * 4 = 24bits)
の印字可能文字列に変換するエンコーディング法です。
2045, 4648 で定義されています。

このライブラリは 1.8 系統に添付されていた base64 ライブラリとは違います。
もはやサンプルスクリプトではありません。

=...

irb/completion (37.0)

irb の completion 機能を提供するライブラリです。

irb の completion 機能を提供するライブラリです。

=== 使い方

$ irb -r irb/completion

とするか, ~/.irbrc 中に

require "irb/completion"

を入れてください.
irb実行中に require "irb/completion" してもよいです.

irb 実行中に [Tab] を押すとコンプレーションします.

トップレベルで [Tab] を押すとすべての構文要素, クラス,
メソッドの候補がでます. 候補が唯一ならば完全に補完します.

irb(main):001:0> in
in...

制御構造 (37.0)

制御構造 条件分岐: * if * unless * case 繰り返し: * while * until * for * break * next * redo * retry 例外処理: * raise * begin その他: * return * BEGIN * END

制御構造
条件分岐:
* if
* unless
* case
繰り返し:
* while
* until
* for
* break
* next
* redo
* retry
例外処理:
* raise
* begin
その他:
* return
* BEGIN
* END

Rubyでは(Cなどとは異なり)制御構造は式であって、何らかの値を返すものが
あります(返さないものもあります。値を返さない式を代入式の右辺に置くと
syntax error になります)。

R...

Addrinfo#bind -> Socket (19.0)

自身のアドレスにバインドされたソケットを作成します。

自身のアドレスにバインドされたソケットを作成します。

ブロックが渡されたときにはそのブロックに生成された Socket
オブジェクトが渡されます。ブロックの返り値がメソッドの返り値となります。
ブロックを省略した場合は、生成された Socket
オブジェクトが返されます。

require 'socket'

Addrinfo.udp("0.0.0.0", 9981).bind {|s|
s.local_address.connect {|s| s.send "hello", 0 }
p s.recv(10) #=> "hello"
}

絞り込み条件を変える

Addrinfo#bind {|sock| ... } -> object (19.0)

自身のアドレスにバインドされたソケットを作成します。

自身のアドレスにバインドされたソケットを作成します。

ブロックが渡されたときにはそのブロックに生成された Socket
オブジェクトが渡されます。ブロックの返り値がメソッドの返り値となります。
ブロックを省略した場合は、生成された Socket
オブジェクトが返されます。

require 'socket'

Addrinfo.udp("0.0.0.0", 9981).bind {|s|
s.local_address.connect {|s| s.send "hello", 0 }
p s.recv(10) #=> "hello"
}

BasicObject (19.0)

特殊な用途のために意図的にほとんど何も定義されていないクラスです。 Objectクラスの親にあたります。Ruby 1.9 以降で導入されました。

特殊な用途のために意図的にほとんど何も定義されていないクラスです。
Objectクラスの親にあたります。Ruby 1.9 以降で導入されました。

=== 性質
BasicObject クラスは Object クラスからほとんどのメソッドを取り除いたクラスです。

Object クラスは様々な便利なメソッドや Kernel から受け継いだ関数的メソッド
を多数有しています。
これに対して、 BasicObject クラスはオブジェクトの同一性を識別したりメソッドを呼んだりする
最低限の機能の他は一切の機能を持っていません。

=== 用途
基本的にはほぼすべてのクラスの親は Object と考...

IPSocket#recvfrom(maxlen, flags = 0) -> Array (19.0)

recv と同様にソケットからデータを受け取りますが、 戻り値は文字列と相手ソケットのアドレス (形式は IPSocket#addr 参照) のペアです。引数につ いては BasicSocket#recv と同様です。

recv と同様にソケットからデータを受け取りますが、
戻り値は文字列と相手ソケットのアドレス (形式は
IPSocket#addr 参照) のペアです。引数につ
いては BasicSocket#recv と同様です。

@param maxlen 受け取る文字列の最大の長さを指定します。

@param flags recv(2) を参照してください。

@raise IOError

@raise Errno::EXXX recvfrom(2) がエラーになった場合などに発生します。

例:

require 'socket'

s1 = UDPSocket.new
s1.b...

Kernel.#eval(expr) -> object (19.0)

文字列 expr を Ruby プログラムとして評価してその結果を返しま す。第2引数に Binding オブジェクトを与えた場合、 そのオブジェクトを生成したコンテキストで文字列を評価します。

文字列 expr を Ruby プログラムとして評価してその結果を返しま
す。第2引数に
Binding オブジェクトを与えた場合、
そのオブジェクトを生成したコンテキストで文字列を評価します。

expr の中のローカル変数の扱いはブロックの場合と同じです。すなわち、eval
実行前に補足されていた変数は eval 実行後にブロック外に持ち出せます。

fname と lineno が与えられた場合には、ファイル
fname の行番号 lineno から文字列 expr が書かれているかのように
コンパイルされます。スタックトレースの表示などを差し替えることが
できます。

bind によ...

Kernel.#eval(expr, bind, fname = "(eval)", lineno = 1) -> object (19.0)

文字列 expr を Ruby プログラムとして評価してその結果を返しま す。第2引数に Binding オブジェクトを与えた場合、 そのオブジェクトを生成したコンテキストで文字列を評価します。

文字列 expr を Ruby プログラムとして評価してその結果を返しま
す。第2引数に
Binding オブジェクトを与えた場合、
そのオブジェクトを生成したコンテキストで文字列を評価します。

expr の中のローカル変数の扱いはブロックの場合と同じです。すなわち、eval
実行前に補足されていた変数は eval 実行後にブロック外に持ち出せます。

fname と lineno が与えられた場合には、ファイル
fname の行番号 lineno から文字列 expr が書かれているかのように
コンパイルされます。スタックトレースの表示などを差し替えることが
できます。

bind によ...

絞り込み条件を変える

Net::HTTP#request(request, data = nil) -> Net::HTTPResponse (19.0)

Net::HTTPRequest オブジェクト request をサーバに送信します。

Net::HTTPRequest オブジェクト request をサーバに送信します。

POST/PUT の時は data も与えられます
(GET/HEAD などで data を与えると
ArgumentError を発生します)。

ブロックとともに呼びだされたときは
ソケットからボディを読みこまずに Net::HTTPResponse
オブジェクトをブロックに与えます。

@param request リクエストオブジェクトを与えます。
@param data リクエストのボディを文字列で与えます。

@raise ArgumentError dataを与えるべきでないリクエス...

Net::HTTP#request(request, data = nil) {|response| .... } -> Net::HTTPResponse (19.0)

Net::HTTPRequest オブジェクト request をサーバに送信します。

Net::HTTPRequest オブジェクト request をサーバに送信します。

POST/PUT の時は data も与えられます
(GET/HEAD などで data を与えると
ArgumentError を発生します)。

ブロックとともに呼びだされたときは
ソケットからボディを読みこまずに Net::HTTPResponse
オブジェクトをブロックに与えます。

@param request リクエストオブジェクトを与えます。
@param data リクエストのボディを文字列で与えます。

@raise ArgumentError dataを与えるべきでないリクエス...

Net::SMTP#data {|f| .... } -> Net::SMTP::Response (19.0)

DATA コマンドを送ります。

DATA コマンドを送ります。

文字列を引数に与えた場合はそれを本文として送ります。
ブロックを与えた場合にはそのブロックにストリームオブジェクトが渡されます
(Net::SMTP#open_message_stream参考)。

通常は Net::SMTP#send_message, Net::SMTP#open_message_stream で
DATA が送られるため利用する必要はないはずです。

@param message メールの本文

Net::SMTP#data(message) -> Net::SMTP::Response (19.0)

DATA コマンドを送ります。

DATA コマンドを送ります。

文字列を引数に与えた場合はそれを本文として送ります。
ブロックを与えた場合にはそのブロックにストリームオブジェクトが渡されます
(Net::SMTP#open_message_stream参考)。

通常は Net::SMTP#send_message, Net::SMTP#open_message_stream で
DATA が送られるため利用する必要はないはずです。

@param message メールの本文

Net::SMTP#mailfrom(from_addr) -> Net::SMTP::Response (19.0)

MAILFROM コマンドを送ります。

MAILFROM コマンドを送ります。

通常は Net::SMTP#send_message, Net::SMTP#open_message_stream で
MAILFROM が送られるため利用する必要はないはずです。

@param from_addr 送信元メールアドレス

絞り込み条件を変える

Net::SMTP#open_message_stream(from_addr, *to_addrs) {|f| .... } -> () (19.0)

メール書き込みの準備をし、書き込み先のストリームオブジェクトを ブロックに渡します。ブロック終了後、書きこんだ結果が 送られます。

メール書き込みの準備をし、書き込み先のストリームオブジェクトを
ブロックに渡します。ブロック終了後、書きこんだ結果が
送られます。

渡されるストリームオブジェクトは以下のメソッドを持っています。
* puts(str = '') strを出力して CR LFを出力
* print(str) strを出力
* printf(fmt, *args) sprintf(fmt,*args) を出力
* write(str):: str を出力して書き込んだバイト数を返す
* <<(str):: str を出力してストリームオブジェ...

Net::SMTP#rcptto(to_addr) -> Net::SMTP::Response (19.0)

RCPTTO コマンドを送ります。

RCPTTO コマンドを送ります。

通常は Net::SMTP#send_message, Net::SMTP#open_message_stream で
RCPTTO が送られるため利用する必要はないはずです。

@param to_addr 送信先メールアドレス

Net::SMTP#rcptto_list(to_addrs) { ... } -> object (19.0)

RCPTTO コマンドを to_addrs のすべてのメールアドレスに対して送ります。

RCPTTO コマンドを to_addrs のすべてのメールアドレスに対して送ります。

コマンドを送った後、ブロックを呼び出します。
このメソッドの返り値はブロックの返り値になります。

通常は Net::SMTP#send_message, Net::SMTP#open_message_stream で
RCPTTO が送られるため利用する必要はないはずです。

@param to_addrs 送信先メールアドレスの配列

Net::SMTP#ready(from_addr, *to_addrs) {|f| .... } -> () (19.0)

メール書き込みの準備をし、書き込み先のストリームオブジェクトを ブロックに渡します。ブロック終了後、書きこんだ結果が 送られます。

メール書き込みの準備をし、書き込み先のストリームオブジェクトを
ブロックに渡します。ブロック終了後、書きこんだ結果が
送られます。

渡されるストリームオブジェクトは以下のメソッドを持っています。
* puts(str = '') strを出力して CR LFを出力
* print(str) strを出力
* printf(fmt, *args) sprintf(fmt,*args) を出力
* write(str):: str を出力して書き込んだバイト数を返す
* <<(str):: str を出力してストリームオブジェ...

Net::SMTP.start(address, port = Net::SMTP.default_port, helo = &#39;localhost&#39;, user = nil, password = nil, authtype = DEFAULT_AUTH_TYPE) -> Net::SMTP (19.0)

新しい SMTP オブジェクトを生成し、サーバに接続し、セッションを開始します。

新しい SMTP オブジェクトを生成し、サーバに接続し、セッションを開始します。


以下と同じです。

require 'net/smtp'
Net::SMTP.new(address, port).start(helo, user, password, authtype)

このメソッドにブロックを与えた場合には、新しく作られた Net::SMTP オブジェクト
を引数としてそのブロックを呼び、ブロック終了時に自動的に接続を閉じます。
ブロックを与えなかった場合には新しく作られた Net::SMTP オブジェクトが
返されます。この場合終了時に Net::SMTP#finish ...

絞り込み条件を変える

Net::SMTP.start(address, port = Net::SMTP.default_port, helo = &#39;localhost&#39;, user = nil, password = nil, authtype = DEFAULT_AUTH_TYPE) {|smtp| .... } -> object (19.0)

新しい SMTP オブジェクトを生成し、サーバに接続し、セッションを開始します。

新しい SMTP オブジェクトを生成し、サーバに接続し、セッションを開始します。


以下と同じです。

require 'net/smtp'
Net::SMTP.new(address, port).start(helo, user, password, authtype)

このメソッドにブロックを与えた場合には、新しく作られた Net::SMTP オブジェクト
を引数としてそのブロックを呼び、ブロック終了時に自動的に接続を閉じます。
ブロックを与えなかった場合には新しく作られた Net::SMTP オブジェクトが
返されます。この場合終了時に Net::SMTP#finish ...

Object#initialize_copy(obj) -> object (19.0)

(拡張ライブラリによる) ユーザ定義クラスのオブジェクトコピーの初期化メソッド。

(拡張ライブラリによる) ユーザ定義クラスのオブジェクトコピーの初期化メソッド。

このメソッドは self を obj の内容で置き換えます。ただ
し、self のインスタンス変数や特異メソッドは変化しません。
Object#clone, Object#dupの内部で使われています。

initialize_copy は、Ruby インタプリタが知り得ない情報をコピーするた
めに使用(定義)されます。例えば C 言語でクラスを実装する場合、情報
をインスタンス変数に保持させない場合がありますが、そういった内部情
報を initialize_copy でコピーするよう定義しておくことで、du...

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

RubyVM::InstructionSequence.disasm(body) -> String (19.0)

引数 body で指定したオブジェクトから作成した RubyVM::InstructionSequence オブジェクトを人間が読める形式の文字 列に変換して返します。

引数 body で指定したオブジェクトから作成した
RubyVM::InstructionSequence オブジェクトを人間が読める形式の文字
列に変換して返します。

@param body Proc、Method オブジェクトを指定します。

例1:Proc オブジェクトを指定した場合

# /tmp/proc.rb
p = proc { num = 1 + 2 }
puts RubyVM::InstructionSequence.disasm(p)

出力:

== disasm: <RubyVM::InstructionSequence:block in <main...

RubyVM::InstructionSequence.disassemble(body) -> String (19.0)

引数 body で指定したオブジェクトから作成した RubyVM::InstructionSequence オブジェクトを人間が読める形式の文字 列に変換して返します。

引数 body で指定したオブジェクトから作成した
RubyVM::InstructionSequence オブジェクトを人間が読める形式の文字
列に変換して返します。

@param body Proc、Method オブジェクトを指定します。

例1:Proc オブジェクトを指定した場合

# /tmp/proc.rb
p = proc { num = 1 + 2 }
puts RubyVM::InstructionSequence.disasm(p)

出力:

== disasm: <RubyVM::InstructionSequence:block in <main...

絞り込み条件を変える

<< 1 2 > >>