種類
- インスタンスメソッド (33)
- 文書 (26)
- 特異メソッド (22)
クラス
- IPSocket (11)
- OptionParser (44)
キーワード
-
NEWS for Ruby 3
. 0 . 0 (4) - addr (11)
- reject (22)
-
ruby 1
. 6 feature (11) -
ruby 1
. 8 . 4 feature (11)
検索結果
先頭5件
-
NEWS for Ruby 3
. 0 . 0 (26084.0) -
NEWS for Ruby 3.0.0 このドキュメントは前回リリース以降のバグ修正を除くユーザーに影響のある機能の変更のリストです。
...NEWS for Ruby 3.0.0
このドキュメントは前回リリース以降のバグ修正を除くユーザーに影響のある機能の変更のリストです。
それぞれのエントリーは参照情報があるため短いです。
十分な情報と共に書かれた全ての変更のリス......2.7 will now
result in ArgumentError or different behavior. 14183
* Procs accepting a single rest argument and keywords are no longer
subject to autosplatting. This now matches the behavior of Procs
accepting a single rest argument and no keywords.
16166
//emlist[][ruby]{
pr = p......`false`. 17371
//emlist{
0 => a
p a #=> 0
{b: 0, c: 1} => {b:}
p b #=> 0
//}
//emlist{
# version 3.0
0 in 1 #=> false
# version 2.7
0 in 1 #=> raise NoMatchingPatternError
//}
* Find-pattern is added. [EXPERIMENTAL]
16828
//emlist{
case ["a", 1, "b", "c", 2, "d", "e", "f", 3]
in [*pre,... -
ruby 1
. 6 feature (23306.0) -
ruby 1.6 feature ruby version 1.6 は安定版です。この版での変更はバグ修正がメイン になります。
...00019>))
: 2002-09-11: Queue#((<Queue/pop>))
Queue#pop に競合状態の問題がありました ((<ruby-dev:17223>))
: 2002-09-11: SizedQueue.new
引数に 0 以下を受けつけるバグが修正されました。
: 2002-09-05: ((<リテラル/式展開>))
stable snapshot で、一......)
# server
require 'socket'
File.unlink("/tmp/sss")
sock = UNIXServer.new("/tmp/sss").accept
# client
require 'socket'
sock = UNIXSocket.new("/tmp/sss").addr
=> ["AF_UNIX", "\031((\306\031(\010"]
=> ["AF_UNIX", ""]
: ???......(rb_safe_level() >= 4 && !OBJ_TAINTED(klass)) {
+ if (rb_safe_level() >= 4 && (klass == rb_cObject || !OBJ_TAINTED(klass))) {
rb_raise(rb_eSecurityError, "Insecure: can't define method");
}
if (OBJ_FROZEN(klass)) rb_error_frozen("class/module");
また今度... -
ruby 1
. 8 . 4 feature (23186.0) -
ruby 1.8.4 feature ruby 1.8.4 での ruby 1.8.3 からの変更点です。
...ruby]: ruby インタプリタの変更
# * [api]: 拡張ライブラリ API
# * [lib]: ライブラリ
* レベル
* [bug]: バグ修正
* [new]: 追加されたクラス/メソッドなど
* [compat]: 変更されたクラス/メソッドなど
* 互換性のある変更
* on......on on server socket on Cygwin.
# fixed: [ruby-core:6765] ([ ruby-Bugs-2872 ])
#
Cygwinの場合のみ、使用中socketに対する再acceptがErrno::EADDRINUSE
例外になっていなかった。((<ruby-core:6765>)),((<ruby-bugs:2872>)),((<ruby-dev:27818>))
: optparse
#Tue Nov......* test/openssl/test_x509ext.rb: new file.
#
# ?
#Tue Nov 01 10:50:17 2005 GOTOU Yuuzou <gotoyuzo@notwork.org>
#
# * ext/openssl/extconf.rb: should check ERR_peek_last_error().
# [ruby-dev:27597]
#
# * ext/openssl/ossl.c (ossl_raise): ditto.
#
# ?
#Mon Oct 31 05:49:... -
OptionParser
# accept(klass , pat = / . * / ) {|str| . . . } -> () (18135.0) -
OptionParser.accept と同様ですが、 登録したブロックはレシーバーに限定されます。
...OptionParser.accept と同様ですが、
登録したブロックはレシーバーに限定されます。
@param klass クラスオブジェクトを与えます。
@param pat match メソッドを持ったオブジェクト(Regexp オブジェクトなど)を与えます。
//emlist[例][rub......y]{
require "optparse"
require "time"
opts = OptionParser.new
opts.accept(Time) do |s,|
begin
Time.parse(s) if s
rescue
raise OptionParser::InvalidArgument, s
end
end
opts.on("-t", "--time [TIME]", Time) do |time|
p time.class # => Time
end
opts.parse!(ARGV)
//}... -
OptionParser
. accept(klass , pat = / . * / ) {|str| . . . } -> () (18125.0) -
オプションの引数を文字列から Ruby のオブジェクトに変換するための ブロックを登録します。すべての OptionParser インスタンスに共通です。
...られた引数は、この accept で登録したブロックで
klass のインスタンスに変換されてから、OptionParser#on メソッドで登録したブロックに渡されます。
//emlist[][ruby]{
require "optparse"
require "time"
OptionParser.accept(Time) do |s,|
begin
Tim......e.parse(s) if s
rescue
raise OptionParser::InvalidArgument, s
end
end
opts = OptionParser.new
opts.on("-t", "--time [TIME]", Time) do |time|
p time.class #=> Time
end
opts.parse!(ARGV)
//}
いくつかのクラスに対しては変換用のブロックがデフォルトで登録され... -
OptionParser
. reject(klass) -> () (40.0) -
OptionParser.accept メソッドで登録したブロックを削除します。
...OptionParser.accept メソッドで登録したブロックを削除します。
@param klass 削除したいクラスオブジェクトを指定します。
//emlist[例][ruby]{
require "optparse"
require "time"
def parse(option_parser)
option_parser.on("-t", "--time [TIME]", Time) do |time|......option_parser.parse(ARGV)
end
OptionParser.accept(Time) do |s,|
begin
Time.parse(s) if s
rescue
raise OptionParser::InvalidArgument, s
end
end
opts1 = OptionParser.new
parse(opts1) # => Time
OptionParser.reject(Time)
opts2 = OptionParser.new
parse(opts2) # => unsupported argument typ... -
OptionParser
# reject(klass) -> () (34.0) -
OptionParser#accept で登録したクラスとブロックを 自身から削除します。
...OptionParser#accept で登録したクラスとブロックを
自身から削除します。
@param klass 自身から削除したいクラスを指定します。
//emlist[例][ruby]{
require "optparse"
require "time"
def parse(option_parser)
option_parser.on("-t", "--time [TIME]", Time) do......|time|
p time.class
end
option_parser.parse(ARGV)
end
opts = OptionParser.new
opts.accept(Time) do |s,|
begin
Time.parse(s) if s
rescue
raise OptionParser::InvalidArgument, s
end
end
parse(opts) # => Time
opts.reject(Time)
parse(opts) # => unsupported argument type: Time (Arg... -
IPSocket
# addr -> Array (24.0) -
ソケットの接続情報を表す配列を返します。配列の各要素は第1要 素が文字列 "AF_INET", "AF_INET6" など、第2要素が port 番号、第3要素がホストを表 す文字列、第4要素がホストの IP アドレスを表す文字列 (octet decimal や hexadecimal) です。
...decimal) です。
@raise Errno::EXXX getsockname(2) が 0 未満の値を返した場合に発生します。
例:
require 'socket'
serv = TCPServer.new("localhost", 0)
p serv.addr #=> ["AF_INET", 46102, "localhost.localdomain", "127.0.0.1"]
c = TCPSocket.new(*serv.addr.values_a...