別のキーワード
ライブラリ
- ビルトイン (22)
- benchmark (11)
-
cgi
/ core (2) - etc (131)
- fileutils (2)
- json (1)
- logger (2)
-
net
/ ftp (4) -
net
/ http (19) -
net
/ imap (5) -
net
/ smtp (12) - open-uri (2)
- optparse (12)
- pathname (1)
- readline (1)
-
rubygems
/ defaults (2) -
rubygems
/ dependency _ installer (1) -
rubygems
/ installer (1) -
rubygems
/ remote _ fetcher (1) -
rubygems
/ source _ info _ cache (4) -
rubygems
/ user _ interaction (16) - socket (14)
- syslog (27)
- uri (11)
-
webrick
/ accesslog (3) -
webrick
/ httpauth (2) -
webrick
/ httpauth / authenticator (1) -
webrick
/ httpauth / basicauth (2) -
webrick
/ httpauth / digestauth (1) -
webrick
/ httpauth / htdigest (4) -
webrick
/ httpauth / htpasswd (4) -
webrick
/ httpauth / userdb (6) -
webrick
/ httprequest (2) -
webrick
/ utils (1) -
win32
/ registry (20) - win32ole (2)
クラス
-
Benchmark
:: Tms (6) - Dir (2)
- File (2)
-
Gem
:: DependencyInstaller (1) -
Gem
:: Installer (1) -
Gem
:: RemoteFetcher (1) -
Gem
:: SourceInfoCache (4) - Logger (2)
- Module (6)
-
Net
:: FTP (4) -
Net
:: HTTP (8) -
Net
:: IMAP (3) -
Net
:: IMAP :: MailboxACLItem (2) -
Net
:: SMTP (12) - OptionParser (12)
- Pathname (1)
- Socket (7)
- String (1)
-
URI
:: FTP (2) -
URI
:: Generic (6) -
URI
:: HTTP (1) -
URI
:: LDAP (1) -
URI
:: MailTo (1) - UnboundMethod (1)
-
WEBrick
:: HTTPAuth :: BasicAuth (2) -
WEBrick
:: HTTPAuth :: DigestAuth (1) -
WEBrick
:: HTTPAuth :: Htdigest (4) -
WEBrick
:: HTTPAuth :: Htpasswd (4) -
WEBrick
:: HTTPRequest (2) - WIN32OLE (1)
-
Win32
:: Registry (11)
モジュール
- Benchmark (5)
-
CGI
:: QueryExtension (2) - Etc (131)
- FileUtils (2)
- Gem (2)
-
Gem
:: DefaultUserInteraction (6) -
Gem
:: UserInteraction (8) - JSON (1)
- Kernel (4)
-
Net
:: HTTPHeader (11) - OpenURI (2)
- Process (4)
-
Process
:: UID (1) - Readline (1)
-
Socket
:: Constants (7) - Syslog (4)
-
Syslog
:: Facility (23) -
WEBrick
:: AccessLog (2) -
WEBrick
:: HTTPAuth (2) -
WEBrick
:: HTTPAuth :: Authenticator (1) -
WEBrick
:: HTTPAuth :: UserDB (5) -
WEBrick
:: Utils (1) -
WIN32OLE
:: VARIANT (1) -
Win32
:: Registry :: Constants (9)
キーワード
-
AGENT
_ LOG _ FORMAT (1) - AccessLog (1)
-
COMBINED
_ LOG _ FORMAT (1) - DefaultUserInteraction (1)
- EUSERS (1)
- FORMAT (2)
-
HKEY
_ CLASSES _ ROOT (2) -
HKEY
_ CURRENT _ CONFIG (2) -
HKEY
_ CURRENT _ USER (2) -
HKEY
_ DYN _ DATA (2) -
HKEY
_ LOCAL _ MACHINE (2) -
HKEY
_ PERFORMANCE _ DATA (2) -
HKEY
_ PERFORMANCE _ NLSTEXT (2) -
HKEY
_ PERFORMANCE _ TEXT (2) -
HKEY
_ USERS (2) -
IFF
_ MONITOR (2) -
IFF
_ PPROMISC (2) -
IPPORT
_ USERRESERVED (2) -
IPPROTO
_ UDP (2) -
LOCALE
_ USER _ DEFAULT (1) -
LOG
_ AUTH (1) -
LOG
_ AUTHPRIV (1) -
LOG
_ CONSOLE (1) -
LOG
_ CRON (1) -
LOG
_ DAEMON (1) -
LOG
_ FTP (1) -
LOG
_ KERN (1) -
LOG
_ LOCAL0 (1) -
LOG
_ LOCAL1 (1) -
LOG
_ LOCAL2 (1) -
LOG
_ LOCAL3 (1) -
LOG
_ LOCAL4 (1) -
LOG
_ LOCAL5 (1) -
LOG
_ LOCAL6 (1) -
LOG
_ LOCAL7 (1) -
LOG
_ LPR (1) -
LOG
_ MAIL (1) -
LOG
_ NEWS (1) -
LOG
_ NTP (1) -
LOG
_ SECURITY (1) -
LOG
_ SYSLOG (1) -
LOG
_ USER (1) -
LOG
_ UUCP (1) - Marshal フォーマット (1)
-
NEWS for Ruby 2
. 0 . 0 (1) -
NEWS for Ruby 2
. 5 . 0 (1) -
NEWS for Ruby 2
. 6 . 0 (1) -
PRIO
_ USER (1) - Ruby用語集 (1)
-
SCM
_ UCRED (2) -
SC
_ 2 _ CHAR _ TERM (1) -
SC
_ 2 _ C _ BIND (1) -
SC
_ 2 _ C _ DEV (1) -
SC
_ 2 _ FORT _ DEV (1) -
SC
_ 2 _ FORT _ RUN (1) -
SC
_ 2 _ LOCALEDEF (1) -
SC
_ 2 _ PBS (1) -
SC
_ 2 _ PBS _ ACCOUNTING (1) -
SC
_ 2 _ PBS _ CHECKPOINT (1) -
SC
_ 2 _ PBS _ LOCATE (1) -
SC
_ 2 _ PBS _ MESSAGE (1) -
SC
_ 2 _ PBS _ TRACK (1) -
SC
_ 2 _ SW _ DEV (1) -
SC
_ 2 _ UPE (1) -
SC
_ 2 _ VERSION (1) -
SC
_ ADVISORY _ INFO (1) -
SC
_ AIO _ LISTIO _ MAX (1) -
SC
_ AIO _ MAX (1) -
SC
_ AIO _ PRIO _ DELTA _ MAX (1) -
SC
_ ARG _ MAX (1) -
SC
_ ASYNCHRONOUS _ IO (1) -
SC
_ ATEXIT _ MAX (1) -
SC
_ AVPHYS _ PAGES (1) -
SC
_ BARRIERS (1) -
SC
_ BC _ BASE _ MAX (1) -
SC
_ BC _ DIM _ MAX (1) -
SC
_ BC _ SCALE _ MAX (1) -
SC
_ BC _ STRING _ MAX (1) -
SC
_ CHILD _ MAX (1) -
SC
_ CLK _ TCK (1) -
SC
_ CLOCK _ SELECTION (1) -
SC
_ COLL _ WEIGHTS _ MAX (1) -
SC
_ CPUSET _ SIZE (1) -
SC
_ CPUTIME (1) -
SC
_ DELAYTIMER _ MAX (1) -
SC
_ EXPR _ NEST _ MAX (1) -
SC
_ FSYNC (1) -
SC
_ GETGR _ R _ SIZE _ MAX (1) -
SC
_ GETPW _ R _ SIZE _ MAX (1) -
SC
_ HOST _ NAME _ MAX (1) -
SC
_ IOV _ MAX (1) -
SC
_ IPV6 (1) -
SC
_ JOB _ CONTROL (1) -
SC
_ LINE _ MAX (1) -
SC
_ LOGIN _ NAME _ MAX (1) -
SC
_ MAPPED _ FILES (1) -
SC
_ MEMLOCK (1) -
SC
_ MEMLOCK _ RANGE (1) -
SC
_ MEMORY _ PROTECTION (1) -
SC
_ MESSAGE _ PASSING (1) -
SC
_ MONOTONIC _ CLOCK (1) -
SC
_ MQ _ OPEN _ MAX (1) -
SC
_ MQ _ PRIO _ MAX (1) -
SC
_ NGROUPS _ MAX (1) -
SC
_ NPROCESSORS _ CONF (1) -
SC
_ NPROCESSORS _ ONLN (1) -
SC
_ OPEN _ MAX (1) -
SC
_ PAGESIZE (1) -
SC
_ PAGE _ SIZE (1) -
SC
_ PHYS _ PAGES (1) -
SC
_ PRIORITIZED _ IO (1) -
SC
_ PRIORITY _ SCHEDULING (1) -
SC
_ RAW _ SOCKETS (1) -
SC
_ READER _ WRITER _ LOCKS (1) -
SC
_ REALTIME _ SIGNALS (1) -
SC
_ REGEXP (1) -
SC
_ RE _ DUP _ MAX (1) -
SC
_ RTSIG _ MAX (1) -
SC
_ SAVED _ IDS (1) -
SC
_ SEMAPHORES (1) -
SC
_ SEM _ NSEMS _ MAX (1) -
SC
_ SEM _ VALUE _ MAX (1) -
SC
_ SHARED _ MEMORY _ OBJECTS (1) -
SC
_ SHELL (1) -
SC
_ SIGQUEUE _ MAX (1) -
SC
_ SPAWN (1) -
SC
_ SPIN _ LOCKS (1) -
SC
_ SPORADIC _ SERVER (1) -
SC
_ SS _ REPL _ MAX (1) -
SC
_ STREAM _ MAX (1) -
SC
_ SYMLOOP _ MAX (1) -
SC
_ SYNCHRONIZED _ IO (1) -
SC
_ THREADS (1) -
SC
_ THREAD _ ATTR _ STACKADDR (1) -
SC
_ THREAD _ ATTR _ STACKSIZE (1) -
SC
_ THREAD _ CPUTIME (1) -
SC
_ THREAD _ DESTRUCTOR _ ITERATIONS (1) -
SC
_ THREAD _ KEYS _ MAX (1) -
SC
_ THREAD _ PRIORITY _ SCHEDULING (1) -
SC
_ THREAD _ PRIO _ INHERIT (1) -
SC
_ THREAD _ PRIO _ PROTECT (1) -
SC
_ THREAD _ PROCESS _ SHARED (1) -
SC
_ THREAD _ ROBUST _ PRIO _ INHERIT (1) -
SC
_ THREAD _ ROBUST _ PRIO _ PROTECT (1) -
SC
_ THREAD _ SAFE _ FUNCTIONS (1) -
SC
_ THREAD _ SPORADIC _ SERVER (1) -
SC
_ THREAD _ STACK _ MIN (1) -
SC
_ THREAD _ THREADS _ MAX (1) -
SC
_ TIMEOUTS (1) -
SC
_ TIMERS (1) -
SC
_ TIMER _ MAX (1) -
SC
_ TRACE (1) -
SC
_ TRACE _ EVENT _ FILTER (1) -
SC
_ TRACE _ EVENT _ NAME _ MAX (1) -
SC
_ TRACE _ INHERIT (1) -
SC
_ TRACE _ LOG (1) -
SC
_ TRACE _ NAME _ MAX (1) -
SC
_ TRACE _ SYS _ MAX (1) -
SC
_ TRACE _ USER _ EVENT _ MAX (1) -
SC
_ TTY _ NAME _ MAX (1) -
SC
_ TYPED _ MEMORY _ OBJECTS (1) -
SC
_ TZNAME _ MAX (1) -
SC
_ V6 _ ILP32 _ OFF32 (1) -
SC
_ V6 _ ILP32 _ OFFBIG (1) -
SC
_ V6 _ LP64 _ OFF64 (1) -
SC
_ V6 _ LPBIG _ OFFBIG (1) -
SC
_ V7 _ ILP32 _ OFF32 (1) -
SC
_ V7 _ ILP32 _ OFFBIG (1) -
SC
_ V7 _ LP64 _ OFF64 (1) -
SC
_ V7 _ LPBIG _ OFFBIG (1) -
SC
_ VERSION (1) -
SC
_ XOPEN _ CRYPT (1) -
SC
_ XOPEN _ ENH _ I18N (1) -
SC
_ XOPEN _ REALTIME (1) -
SC
_ XOPEN _ REALTIME _ THREADS (1) -
SC
_ XOPEN _ SHM (1) -
SC
_ XOPEN _ STREAMS (1) -
SC
_ XOPEN _ UNIX (1) -
SC
_ XOPEN _ UUCP (1) -
SC
_ XOPEN _ VERSION (1) -
SO
_ PEERNAME (2) -
SO
_ RECVUCRED (2) -
USERNAME
_ COMPLETION _ PROC (1) - UserDB (1)
- UserInteraction (1)
-
VT
_ USERDEFINED (1) - [] (1)
- []= (1)
- alert (1)
-
alert
_ error (1) -
alert
_ warning (1) - ask (1)
-
ask
_ yes _ no (1) - attr (3)
-
attr
_ accessor (1) -
attr
_ reader (1) -
attr
_ writer (1) -
auth
_ cram _ md5 (1) -
auth
_ login (1) -
auth
_ plain (1) -
auth
_ type (1) -
auth
_ type= (1) - authenticate (2)
-
basic
_ auth (2) - benchmark (1)
- bm (1)
- bmbm (1)
-
caller
_ locations (2) - cgi (1)
-
choose
_ from _ list (1) - chown (1)
-
chown
_ R (1) -
create
_ id (1) - crypt (1)
- cutime (1)
- debug (2)
-
default
_ user _ source _ cache _ dir (1) -
delete
_ passwd (2) - each (3)
-
each
_ capitalized _ name (1) -
each
_ header (1) -
each
_ key (1) -
each
_ name (1) - fetch (3)
- format (1)
-
from
_ name (1) -
get
_ passwd (3) -
get
_ proxy _ from _ env (1) - getlogin (1)
- getpriority (1)
- home (2)
- initgroups (1)
-
latest
_ user _ cache _ file (2) - load (1)
- login (2)
-
make
_ passwd (3) - measure (1)
- name (1)
-
net
/ imap (1) -
net
/ smtp (1) - new (10)
- new2 (1)
- on (12)
- open (4)
- open! (1)
- open-uri (1)
-
open
_ uri (2) - password= (1)
- path (1)
-
proxy
_ basic _ auth (1) -
proxy
_ pass (1) -
proxy
_ pass= (1) -
proxy
_ user (2) -
proxy
_ user= (1) -
remote
_ user (1) - reopen (1)
- require (1)
- rights (1)
-
ruby 1
. 8 . 4 feature (1) - rubygems (1)
-
rubygems
/ user _ interaction (1) - say (1)
-
set
_ passwd (3) - setacl (1)
- setpriority (1)
-
source
_ location (1) - start (10)
- su (1)
-
sub
_ ext (1) -
terminate
_ interaction (1) -
to
_ a (1) -
to
_ s (1) - ui (2)
- ui= (2)
-
use
_ ui (2) - user= (2)
-
user
_ agent (1) -
user
_ cache _ file (2) -
user
_ dir (1) - userdb (2)
- userinfo (1)
- userinfo= (1)
- utime (1)
-
webrick
/ cgi (1) -
webrick
/ httpauth / userdb (1) -
win32
/ registry (1) - パターンマッチ (1)
検索結果
先頭5件
- WEBrick
:: HTTPAuth :: Htpasswd # each {|user , pass| . . . } -> Hash - URI
:: FTP . new(scheme , userinfo , host , port , registry , path , opaque , query , fragment , arg _ check = false) -> URI :: FTP - URI
:: Generic . new(scheme , userinfo , host , port , registry , path , opaque , query , fragment , parser = URI :: DEFAULT _ PARSER , arg _ check = false) -> URI :: Generic - URI
:: HTTP . new(scheme , userinfo , host , port , registry , path , opaque , query , fragment , arg _ check = false) -> URI :: HTTP - URI
:: LDAP . new(scheme , userinfo , host , port , registry , path , opaque , query , fragment , arg _ check = false) -> URI :: LDAP
-
WEBrick
:: HTTPAuth :: Htpasswd # each {|user , pass| . . . } -> Hash (304.0) -
ユーザ名とパスワードをブロックに与えて評価します。
ユーザ名とパスワードをブロックに与えて評価します。 -
URI
:: FTP . new(scheme , userinfo , host , port , registry , path , opaque , query , fragment , arg _ check = false) -> URI :: FTP (301.0) -
汎用的な構成要素から URI::FTP オブジェクトを生成します。build と異なり、デフォルトでは引数の正当性を検査しません。
汎用的な構成要素から URI::FTP オブジェクトを生成します。build
と異なり、デフォルトでは引数の正当性を検査しません。
例:
require 'uri'
p ftp = URI.parse("ftp://ftp.ruby-lang.org/pub/ruby/;type=d")
p ftp.typecode
#=> #<URI::FTP:0x2010029c URL:ftp://ftp.ruby-lang.org/pub/ruby/;type=d>
#=> "d"
@param scheme 構成要素を表す文字列を与えます。
@param userinfo... -
URI
:: Generic . new(scheme , userinfo , host , port , registry , path , opaque , query , fragment , parser = URI :: DEFAULT _ PARSER , arg _ check = false) -> URI :: Generic (301.0) -
各引数を成分とする URI::Generic オブジェクトを生成して返します。
各引数を成分とする URI::Generic オブジェクトを生成して返します。
@param scheme 構成要素 scheme を表す文字列を与えます。
@param userinfo 構成要素を表す文字列を与えます。
@param host 構成要素を表す文字列を与えます。
@param port 構成要素を表す文字列を与えます。
@param registry 構成要素を表す文字列を与えます。
@param path 構成要素を表す文字列を与えます。
@param opaque 構成要素を表す文字列を与えます。
@param query 構成要素を表す文字列を与えます... -
URI
:: HTTP . new(scheme , userinfo , host , port , registry , path , opaque , query , fragment , arg _ check = false) -> URI :: HTTP (301.0) -
汎用的な構成要素から URI::HTTP オブジェクトを生成します。build と異なり、デフォルトでは引数の正当性を検査しません。
汎用的な構成要素から URI::HTTP オブジェクトを生成します。build
と異なり、デフォルトでは引数の正当性を検査しません。
@param scheme 構成要素を表す文字列を与えます。
@param userinfo 構成要素を表す文字列を与えます。
@param host 構成要素を表す文字列を与えます。
@param port 構成要素を表す文字列を与えます。
@param registry nil を与えます。
@param path 構成要素を表す文字列を与えます。
@param opaque 構成要素を表す文字列を与えます。
@param query 構成... -
URI
:: LDAP . new(scheme , userinfo , host , port , registry , path , opaque , query , fragment , arg _ check = false) -> URI :: LDAP (301.0) -
汎用的な構成要素から URI::LDAP オブジェクトを生成します。 build と異なり、デフォルトでは引数の正当性を検査しません。
汎用的な構成要素から URI::LDAP オブジェクトを生成します。
build と異なり、デフォルトでは引数の正当性を検査しません。
@param scheme 構成要素を表す文字列を与えます。
@param userinfo 構成要素を表す文字列を与えます。
@param host 構成要素を表す文字列を与えます。
@param port 構成要素を表す文字列を与えます。
@param registry nil を与えます。
@param path 構成要素を表す文字列を与えます。
@param opaque 構成要素を表す文字列を与えます。
@param query 構... -
URI
:: MailTo . new(scheme , userinfo , host , port , registry , path , opaque , query , fragment , arg _ check = false) -> URI :: MailTo (301.0) -
汎用的な構成要素から URI::MailTo オブジェクトを生成します。 build と異なり、デフォルトでは引数の正当性を検査しません。
汎用的な構成要素から URI::MailTo オブジェクトを生成します。
build と異なり、デフォルトでは引数の正当性を検査しません。
@param scheme 構成要素を表す文字列を与えます。
@param userinfo 構成要素を表す文字列を与えます。
@param host 構成要素を表す文字列を与えます。
@param port 構成要素を表す文字列を与えます。
@param registry nil を与えます。
@param path 構成要素を表す文字列を与えます。
@param opaque 構成要素を表す文字列を与えます。
@param query... -
パターンマッチ (253.0)
-
パターンマッチ * patterns * variable_binding * variable_pinning * matching_non_primitive_objects * guard_clauses * current_feature_status * pattern_syntax * some_undefined_behavior_examples
...by]{
case [1, 1]
in a, b unless b == a*2
"matched"
else
"not matched"
end
#=> "matched"
//}
===[a:current_feature_status] 機能の現状
Ruby 3.1 の時点では、Find パターンは 「実験的機能」 扱いです。Find パターンの構文は将来的に変更の可能性がありま... -
Kernel
. # caller _ locations(range) -> [Thread :: Backtrace :: Location] | nil (217.0) -
現在のフレームを Thread::Backtrace::Location の配列で返します。引 数で指定した値が範囲外の場合は nil を返します。
現在のフレームを Thread::Backtrace::Location の配列で返します。引
数で指定した値が範囲外の場合は nil を返します。
@param start 開始フレームの位置を数値で指定します。
@param length 取得するフレームの個数を指定します。
@param range 取得したいフレームの範囲を示す Range オブジェクトを指定します。
//emlist[例][ruby]{
def test1(start, length)
locations = caller_locations(start, length)
p locations
... -
Kernel
. # caller _ locations(start = 1 , length = nil) -> [Thread :: Backtrace :: Location] | nil (217.0) -
現在のフレームを Thread::Backtrace::Location の配列で返します。引 数で指定した値が範囲外の場合は nil を返します。
現在のフレームを Thread::Backtrace::Location の配列で返します。引
数で指定した値が範囲外の場合は nil を返します。
@param start 開始フレームの位置を数値で指定します。
@param length 取得するフレームの個数を指定します。
@param range 取得したいフレームの範囲を示す Range オブジェクトを指定します。
//emlist[例][ruby]{
def test1(start, length)
locations = caller_locations(start, length)
p locations
... -
Pathname
# sub _ ext(replace) -> Pathname (181.0) -
拡張子を与えられた文字列で置き換えた Pathname オブジェクトを返します。
拡張子を与えられた文字列で置き換えた Pathname オブジェクトを返します。
自身が拡張子を持たない場合は、与えられた文字列を拡張子として付加します。
@param replace 拡張子を文字列で指定します。
//emlist[例][ruby]{
require "pathname"
Pathname('/usr/bin/shutdown').sub_ext('.rb') # => #<Pathname:/usr/bin/shutdown.rb>
Pathname('/home/user/test.txt').sub_ext('.pdf') # => #<Path... -
JSON
. create _ id -> String (73.0) -
json_create メソッドで使用するクラスを決定するために使用する値を返します。
json_create メソッドで使用するクラスを決定するために使用する値を返します。
デフォルトは "json_class" です。
//emlist[例][ruby]{
require "json"
class User
attr :id, :name
def initialize(id, name)
@id, @name = id, name
end
def self.json_create(object)
new(object['id'], object["name"])
end
def as_json(*)
{
... -
WEBrick
:: AccessLog :: AGENT _ LOG _ FORMAT -> String (67.0) -
Apache のアクセスログで一般的に使われる User-Agent の形式を表す文字列です。
Apache のアクセスログで一般的に使われる User-Agent の形式を表す文字列です。
@return 以下の文字列を返します。
//emlist{{
"%{User-Agent}i"
//}} -
Benchmark
. # benchmark(caption = "" , label _ width = nil , fmtstr = nil , *labels) {|rep| . . . } -> [Benchmark :: Tms] (55.0) -
Benchmark::Report オブジェクトを生成し、それを引数として与えられたブロックを実行します。
Benchmark::Report オブジェクトを生成し、それを引数として与えられたブロックを実行します。
基本的には以下のように使います。
ブロックが Benchmark::Tms オブジェクトの配列を返した場合は、
それらの数値も追加の行に表示されます。
@param caption レポートの一行目に表示する文字列を指定します。
@param label_width ラベルの幅を指定します。
@param fmtstr フォーマット文字列を指定します。
この引数を省略すると Benchmark::FORMAT が使用されます。... -
Benchmark
. # bm(label _ width = 0 , *labels) {|rep| . . . } -> [Benchmark :: Tms] (55.0) -
Benchmark.#benchmark メソッドの引数を簡略化したものです。
Benchmark.#benchmark メソッドの引数を簡略化したものです。
Benchmark.#benchmark メソッドと同様に働きます。
@param label_width ラベルの幅を指定します。
@param labels ブロックが Benchmark::Tms オブジェクトの配列を返す場合に指定します。
//emlist[][ruby]{
require 'benchmark'
n = 50000
Benchmark.bm do |x|
x.report { for i in 1..n; a = "1"; end }
x.report { n.t... -
Etc
. # getlogin -> String | nil (55.0) -
自分の login 名を返します。得られなかった場合は nil を返します。
自分の login 名を返します。得られなかった場合は nil を返します。
getlogin は su(1) などでログイン時のユーザとは異なるユーザになっている場合、
現在ではなくログイン時のユーザを返します。
このメソッドが失敗した場合は Etc.#getpwuid に
フォールバックするとよいでしょう。
たとえば、環境変数 USER などもあわせて、以下のようにフォールバックできます。
//emlist[][ruby]{
require "etc"
login_user = ENV['USER'] || ENV['LOGNAME'] || Etc.getlogin || Et... -
NEWS for Ruby 2
. 6 . 0 (55.0) -
NEWS for Ruby 2.6.0 このドキュメントは前回リリース以降のバグ修正を除くユーザーに影響のある機能の変更のリストです。
...りました。
誤解を招く名称だったため。 14688
* NKF
* nkf v2.1.5 に更新されました。
* Psych
* Psych 3.1.0 に更新されました。
* RDoc
* 約2倍高速化されました。
* ファイル生成に SOURCE_DATE_EPOCH を使うようにな......* シンタックスエラー出力を修正しました。
* 多数のパース中のバグを修正しました。
* REXML
* REXML 3.1.9 に更新されました。
https://github.com/ruby/rexml/blob/master/NEWS.md を参照してください。
* いくつかの XPath... -
Net
:: HTTPHeader # []=(key , val) (55.0) -
key ヘッダフィールドに文字列 val をセットします。
key ヘッダフィールドに文字列 val をセットします。
key に元々設定されていた値は破棄されます。
key は大文字小文字を区別しません。
val に nil を与えるとそのフィールドを削除します。
@param key ヘッダフィール名を文字列で与えます。
@param val keyで指定したフィールドにセットする文字列を与えます。
//emlist[例][ruby]{
require 'net/http'
uri = URI.parse('http://www.example.com/index.html')
req = Net::HTTP::Get.new(uri.re... -
OpenURI
. open _ uri(name , mode = & # 39;r& # 39; , perm = nil , options = {}) -> StringIO (55.0) -
URI である文字列 name のリソースを取得して StringIO オブジェクト として返します。
URI である文字列 name のリソースを取得して StringIO オブジェクト
として返します。
ブロックを与えた場合は StringIO オブジェクトを引数としてブロックを
評価します。ブロックの終了時に StringIO は close されます。nil を返します。
require 'open-uri'
sio = OpenURI.open_uri('http://www.example.com')
p sio.last_modified
puts sio.read
OpenURI.open_uri('http://www.example.com'){|... -
OpenURI
. open _ uri(name , mode = & # 39;r& # 39; , perm = nil , options = {}) {|sio| . . . } -> nil (55.0) -
URI である文字列 name のリソースを取得して StringIO オブジェクト として返します。
URI である文字列 name のリソースを取得して StringIO オブジェクト
として返します。
ブロックを与えた場合は StringIO オブジェクトを引数としてブロックを
評価します。ブロックの終了時に StringIO は close されます。nil を返します。
require 'open-uri'
sio = OpenURI.open_uri('http://www.example.com')
p sio.last_modified
puts sio.read
OpenURI.open_uri('http://www.example.com'){|... -
Benchmark
:: Tms # cutime -> Float (49.0) -
子プロセスの User CPU time
子プロセスの User CPU time -
Benchmark
:: Tms # utime -> Float (49.0) -
User CPU time
User CPU time -
Socket
:: Constants :: IFF _ MONITOR (49.0) -
user-requested monitor mode
user-requested monitor mode -
Socket
:: Constants :: IFF _ PPROMISC (49.0) -
user-requested promisc mode
user-requested promisc mode -
Socket
:: Constants :: IPPROTO _ UDP -> Integer (49.0) -
User Datagram Protocol。 BasicSocket#getsockopt, BasicSocket#setsockopt の level 引数に使用します。
User Datagram Protocol。
BasicSocket#getsockopt, BasicSocket#setsockopt の
level 引数に使用します。
また、Socket.open の protocol 引数に渡す利用法もあります。
@see netinet/in.h(header)
udp(4freebsd), udp(7linux) -
Socket
:: Constants :: SCM _ UCRED -> Integer (49.0) -
@todo User credentials。
@todo
User credentials。 -
Socket
:: Constants :: SO _ PEERNAME -> Integer (49.0) -
@todo Name of the connecting user。
@todo
Name of the connecting user。 -
Socket
:: Constants :: SO _ RECVUCRED -> Integer (49.0) -
@todo Receive user credentials with datagram。
@todo
Receive user credentials with datagram。 -
Socket
:: IFF _ MONITOR (49.0) -
user-requested monitor mode
user-requested monitor mode -
Socket
:: IFF _ PPROMISC (49.0) -
user-requested promisc mode
user-requested promisc mode -
Socket
:: IPPROTO _ UDP -> Integer (49.0) -
User Datagram Protocol。 BasicSocket#getsockopt, BasicSocket#setsockopt の level 引数に使用します。
User Datagram Protocol。
BasicSocket#getsockopt, BasicSocket#setsockopt の
level 引数に使用します。
また、Socket.open の protocol 引数に渡す利用法もあります。
@see netinet/in.h(header)
udp(4freebsd), udp(7linux) -
Socket
:: SCM _ UCRED -> Integer (49.0) -
@todo User credentials。
@todo
User credentials。 -
Socket
:: SO _ PEERNAME -> Integer (49.0) -
@todo Name of the connecting user。
@todo
Name of the connecting user。 -
Socket
:: SO _ RECVUCRED -> Integer (49.0) -
@todo Receive user credentials with datagram。
@todo
Receive user credentials with datagram。 -
Benchmark
:: FORMAT -> String (37.0) -
Benchmark.#benchmark の第三引数のデフォルト値。
Benchmark.#benchmark の第三引数のデフォルト値。
: %u
user CPU time で置き換えられます。Benchmark::Tms#utime
: %y
system CPU time で置き換えられます(Mnemonic: y of "s*y*stem")。Benchmark::Tms#stime
: %U
子プロセスの user CPU time で置き換えられます。Benchmark::Tms#cutime
: %Y
子プロセスの system CPU time で置き換えられます。Benchmark::Tms#cstime
: %t
t... -
Benchmark
:: Tms # format(fmtstr = nil , *args) -> String (37.0) -
self を指定されたフォーマットで整形して返します。
self を指定されたフォーマットで整形して返します。
このメソッドは Kernel.#format のようにオブジェクトを整形しますが、
以下の拡張を使用することができます。
: %u
user CPU time で置き換えられます。Benchmark::Tms#utime
: %y
system CPU time で置き換えられます(Mnemonic: y of "s*y*stem")。Benchmark::Tms#stime
: %U
子プロセスの user CPU time で置き換えられます。Benchmark::Tms#cutime
: %Y
子プロセスの s... -
Benchmark
:: Tms # to _ a -> Array (37.0) -
6 要素の配列を返します。
6 要素の配列を返します。
要素は以下の順番で配列に格納されています。
* ラベル
* user CPU time
* system CPU time,
* 子プロセスの user CPU time
* 子プロセスの system CPU time,
* 実経過時間 -
Benchmark
:: Tms . new(utime = 0 . 0 , stime = 0 . 0 , cutime = 0 . 0 , cstime = 0 . 0 , real = 0 . 0 , label = nil) -> Benchmark :: Tms (37.0) -
新しい Benchmark::Tms オブジェクトを生成して返します。
新しい Benchmark::Tms オブジェクトを生成して返します。
@param utime User CPU time
@param stime System CPU time
@param cutime 子プロセスの User CPU time
@param cstime 子プロセスの System CPU time
@param real 実経過時間
@param label ラベル -
Benchmark
:: Tms :: FORMAT -> String (37.0) -
Benchmark.#benchmark の第三引数のデフォルト値。
Benchmark.#benchmark の第三引数のデフォルト値。
: %u
user CPU time で置き換えられます。Benchmark::Tms#utime
: %y
system CPU time で置き換えられます(Mnemonic: y of "s*y*stem")。Benchmark::Tms#stime
: %U
子プロセスの user CPU time で置き換えられます。Benchmark::Tms#cutime
: %Y
子プロセスの system CPU time で置き換えられます。Benchmark::Tms#cstime
: %t
t... -
Gem
:: RemoteFetcher # get _ proxy _ from _ env -> URI | nil (37.0) -
環境変数にセットされている HTTP proxy の情報を取得して返します。
環境変数にセットされている HTTP proxy の情報を取得して返します。
ここでチェックしている環境変数は以下の通りです。
* http_proxy
* http_proxy_user
* http_proxy_pass
* HTTP_PROXY
* HTTP_PROXY_USER
* HTTP_PROXY_PASS -
Logger
# debug(progname = nil) -> true (37.0) -
ログレベルが DEBUG のメッセージを出力します。
ログレベルが DEBUG のメッセージを出力します。
現在の Logger のログレベルが DEBUG よりも高い場合、メッセージは出力されません。
ブロックを与えなかった場合は、progname をメッセージとしてログを出力します。
ブロックを与えた場合は、ブロックを評価した結果をメッセージとして
ログを出力します。
引数とブロックを同時に与えた場合は、progname をプログラム名、ブロックを評価した
結果をメッセージとしてログを出力します。
@param progname ブロックを与えない場合は、メッセージとして文字列または例外オブジェクトを指定します。
... -
Logger
# debug(progname = nil) { . . . } -> true (37.0) -
ログレベルが DEBUG のメッセージを出力します。
ログレベルが DEBUG のメッセージを出力します。
現在の Logger のログレベルが DEBUG よりも高い場合、メッセージは出力されません。
ブロックを与えなかった場合は、progname をメッセージとしてログを出力します。
ブロックを与えた場合は、ブロックを評価した結果をメッセージとして
ログを出力します。
引数とブロックを同時に与えた場合は、progname をプログラム名、ブロックを評価した
結果をメッセージとしてログを出力します。
@param progname ブロックを与えない場合は、メッセージとして文字列または例外オブジェクトを指定します。
... -
OptionParser
# on(long , pat = / . * / , desc = "") {|v| . . . } -> self (37.0) -
オプションを取り扱うためのブロックを自身に登録します。 ブロックはコマンドラインのパース時に、オプションが指定されていれば呼ばれます。
オプションを取り扱うためのブロックを自身に登録します。
ブロックはコマンドラインのパース時に、オプションが指定されていれば呼ばれます。
pat にはオプションの引数に許すパターンを表す正規表現で与えます。
コマンドに与えられた引数がパターンにマッチしない場合、
例外 OptionParser::InvalidArgument が parse 実行時に投げられます。
opts.on("--username VALUE", /[a-zA-Z0-9_]+/){|name| ...}
# ruby command --username=ruby_user
# ruby command... -
OptionParser
# on(short , long , pat = / . * / , desc = "") {|v| . . . } -> self (37.0) -
オプションを取り扱うためのブロックを自身に登録します。 ブロックはコマンドラインのパース時に、オプションが指定されていれば呼ばれます。
オプションを取り扱うためのブロックを自身に登録します。
ブロックはコマンドラインのパース時に、オプションが指定されていれば呼ばれます。
pat にはオプションの引数に許すパターンを表す正規表現で与えます。
コマンドに与えられた引数がパターンにマッチしない場合、
例外 OptionParser::InvalidArgument が parse 実行時に投げられます。
opts.on("--username VALUE", /[a-zA-Z0-9_]+/){|name| ...}
# ruby command --username=ruby_user
# ruby command... -
OptionParser
# on(short , pat = / . * / , desc = "") {|v| . . . } -> self (37.0) -
オプションを取り扱うためのブロックを自身に登録します。 ブロックはコマンドラインのパース時に、オプションが指定されていれば呼ばれます。
オプションを取り扱うためのブロックを自身に登録します。
ブロックはコマンドラインのパース時に、オプションが指定されていれば呼ばれます。
pat にはオプションの引数に許すパターンを表す正規表現で与えます。
コマンドに与えられた引数がパターンにマッチしない場合、
例外 OptionParser::InvalidArgument が parse 実行時に投げられます。
opts.on("--username VALUE", /[a-zA-Z0-9_]+/){|name| ...}
# ruby command --username=ruby_user
# ruby command... -
String
# crypt(salt) -> String (37.0) -
self と salt から暗号化された文字列を生成して返します。 salt には英数字、ドット (「.」)、スラッシュ (「/」) から構成される、 2 バイト以上の文字列を指定します。
self と salt から暗号化された文字列を生成して返します。
salt には英数字、ドット (「.」)、スラッシュ (「/」) から構成される、
2 バイト以上の文字列を指定します。
暗号化された文字列から暗号化前の文字列 (self) を求めることは一般に困難で、
self を知っている者のみが同じ暗号化された文字列を生成できます。
このことから self を知っているかどうかの認証に使うことが出来ます。
salt には、以下の様になるべくランダムな文字列を選ぶべきです。
他にも 29297 などがあります。
注意:
* Ruby 2.6 から非推奨になったため、引き続き... -
cgi (37.0)
-
CGI プログラムの支援ライブラリです。
CGI プログラムの支援ライブラリです。
CGI プロトコルの詳細については以下の文書を参照してください。
* https://tools.ietf.org/html/draft-coar-cgi-v11-03
* 3875: The Common Gateway Interface (CGI) Version 1.1
* https://www.w3.org/CGI/
=== 使用例
==== フォームフィールドの値を得る
//emlist[][ruby]{
require "cgi"
cgi = CGI.new
values = cgi['field_name'] ... -
net
/ imap (37.0) -
このライブラリは Internet Message Access Protocol (IMAP) の クライアントライブラリです。2060 を元に 実装されています。
このライブラリは Internet Message Access Protocol (IMAP) の
クライアントライブラリです。2060 を元に
実装されています。
=== IMAP の概要
IMAPを利用するには、まずサーバに接続し、
Net::IMAP#authenticate もしくは
Net::IMAP#login で認証します。
IMAP ではメールボックスという概念が重要です。
メールボックスは階層的な名前を持ちます。
各メールボックスはメールを保持することができます。
メールボックスの実装はサーバソフトウェアによって異なります。
Unixシステムでは、ディレクトリ階層上の
... -
ruby 1
. 8 . 4 feature (37.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]: 追加され... -
Benchmark
. # bmbm(width = 0) {|job| . . . } -> [Benchmark :: Tms] (19.0) -
Benchmark::Job オブジェクトを生成して、それを引数として与えられたブロックを 実行します。
Benchmark::Job オブジェクトを生成して、それを引数として与えられたブロックを
実行します。
ベンチマークの結果は GC の影響によって歪められてしまうことがあります。
このメソッドは与えられたブロックを二度実行する事によってこの影響を最小化します。
一回目は実行環境を安定化するためにリハーサルとして実行します。二回目は本番として
実行します。
二回目のブロック実行の前に GC.start を実行しますが、この実行時間は計測には
含まれません。しかし、実際にはこのメソッドを使用しても、GC などの影響を分離する
ことは保証されません。
@param width ラベルの幅を... -
Benchmark
. # measure(label = "") { . . . } -> Benchmark :: Tms (19.0) -
与えられたブロックを実行して、経過した時間を Process.#times で計り、 Benchmark::Tms オブジェクトを生成して返します。
与えられたブロックを実行して、経過した時間を Process.#times で計り、
Benchmark::Tms オブジェクトを生成して返します。
Benchmark::Tms オブジェクトには to_s が定義されているので、
基本的には以下のように使います。
//emlist[][ruby]{
require 'benchmark'
puts Benchmark::CAPTION
puts Benchmark.measure { "a"*1_000_000 }
#=>
#
# user system total real
# 1.1666... -
File
. expand _ path(path , default _ dir = & # 39; . & # 39;) -> String (19.0) -
path を絶対パスに展開した文字列を返します。 path が相対パスであれば default_dir を基準にします。
path を絶対パスに展開した文字列を返します。
path が相対パスであれば default_dir を基準にします。
先頭の ~ はホームディレクトリ(環境変数 HOME が使われます)に、
~USER はそのユーザのホームディレクトリに展開されます。
//emlist[例][ruby]{
p Dir.getwd #=> "/home/matz/work/foo"
p ENV["HOME"] #=> "/home/matz"
p File.expand_path("..") #=> "/h... -
File
. path(filename) -> String (19.0) -
指定されたファイル名を文字列で返します。filename が文字列でない場合は、to_path メソッドを呼びます。
指定されたファイル名を文字列で返します。filename が文字列でない場合は、to_path メソッドを呼びます。
@param filename ファイル名を表す文字列か to_path メソッドが定義されたオブジェクトを指定します。
//emlist[例][ruby]{
require 'pathname'
class MyPath
def initialize(path)
@path = path
end
def to_path
File.absolute_path(@path)
end
end
File.path("/dev/null") ... -
Gem
:: DependencyInstaller . new(options = {}) -> Gem :: DependencyInstaller (19.0) -
自身を初期化します。
自身を初期化します。
オプションとして以下のものを利用できます。
: :cache_dir
*.gem ファイルを保存するディレクトリを指定します。
: :domain
:local (カレントディレクトリのみ検索します), :remote (Gem.sources を検索します),
:both (:local, :remote の両方を検索します) のいずれかを指定可能です。
: :env_shebang
Gem::Installer.new を参照してください。
: :force
バージョンチェックとセキュリティポリシーのチェックを行わずにインストールを実行します... -
Gem
:: Installer . new(gem , options = {}) -> Gem :: Installer (19.0) -
@todo 書いてないオプションがいっぱいある
@todo 書いてないオプションがいっぱいある
与えられた引数で自身を初期化します。
@param gem インストール対象の Gem のパスを指定します。
@param options インストーラが使用するオプションをハッシュで指定します。
使用できるキーは以下の通りです。
: :env_shebang
コマンドのラッパーで shebang line に /usr/bin/env を使用します。
: :force
署名された Gem のみをインストールするというポリシー以外、
全てのバージョンチェックとセキュリティポリシーのチェックを行わない... -
Kernel
. # load(file , priv = false) -> true (19.0) -
Ruby プログラム file をロードして実行します。再ロード可能です。
Ruby プログラム file をロードして実行します。再ロード可能です。
file が絶対パスのときは file からロードします。
file が相対パスのときは組み込み変数 $:
に示されるパスとカレントディレクトリを順番に探し、最初に見付かったファイルを
ロードします。このとき、$: の要素文字列の先頭文字が
`~' (チルダ) だと、環境変数 HOME の値に展開されます。
また `~USER' はそのユーザのホームディレクトリに展開されます。
ロードに成功した場合は true を返します。
@param file ファイル名の文字列です。
@param priv 真のとき、ロ... -
Kernel
. # require(feature) -> bool (19.0) -
Ruby ライブラリ feature をロードします。拡張子補完を行い、 同じファイルの複数回ロードはしません。
Ruby ライブラリ feature をロードします。拡張子補完を行い、
同じファイルの複数回ロードはしません。
feature が絶対パスのときは feature からロードします。
feature が相対パスのときは組み込み変数 $:
に示されるパスを順番に探し、最初に見付かったファイルを
ロードします。このとき、$: の要素文字列の先頭文字が
`~' (チルダ) だと、環境変数 HOME の値に展開されます。
また `~USER' はそのユーザのホームディレクトリに展開されます。
Ruby ライブラリとは Ruby スクリプト (*.rb) か拡張ライブラリ
(*.so,*.o,*... -
Marshal フォーマット (19.0)
-
Marshal フォーマット フォーマットバージョン 4.8 を元に記述しています。
...'f' | 数値列の長さ(Fixnum形式) | "%.16g" の文字列 |
//}
//emlist[][ruby]{
p Marshal.dump(Math::PI).unpack("x2 a c a*")
# => ["f", 22, "3.141592653589793"]
p Marshal.dump(0.0/0).unpack("x2 a c a*") # => ["f", 8, "nan"]
p Marshal.dump(1.0/0).unpack("x2 a c a*") # => ["f", 8, "inf"]
p... -
Module
# attr(*name) -> [Symbol] (19.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] (19.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] (19.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] (19.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 _ reader(*name) -> [Symbol] (19.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
# attr _ writer(*name) -> [Symbol] (19.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 つ... -
NEWS for Ruby 2
. 0 . 0 (19.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
. 5 . 0 (19.0) -
NEWS for Ruby 2.5.0 このドキュメントは前回リリース以降のバグ修正を除くユーザーに影響のある機能の変更のリストです。
NEWS for Ruby 2.5.0
このドキュメントは前回リリース以降のバグ修正を除くユーザーに影響のある機能の変更のリストです。
それぞれのエントリーは参照情報があるため短いです。
十分な情報と共に書かれた全ての変更のリストは ChangeLog ファイルか bugs.ruby-lang.org の issue を参照してください。
== 2.4.0 以降の変更
=== 言語仕様の変更
* トップレベルの定数参照を削除しました 11547
* do/end ブロック内部で rescue/else/ensure を書けるようになりました 12906
* 文字列の式展... -
Net
:: HTTP # proxy _ pass -> String|nil (19.0) -
プロクシ経由で接続し、さらにプロクシのユーザ認証を する HTTP オブジェクトなら認証のパスワードを を返します。
プロクシ経由で接続し、さらにプロクシのユーザ認証を
する HTTP オブジェクトなら認証のパスワードを
を返します。
そうでないなら nil を返します。
@see Net::HTTP#proxy_pass=, Net::HTTP#proxy_user, Net::HTTP.new -
Net
:: HTTP # proxy _ pass=(pass) (19.0) -
プロクシのユーザ認証のパスワードを設定します。
プロクシのユーザ認証のパスワードを設定します。
Net::HTTP#start で接続する前に設定する必要があります。
@param pass パスワード文字列
@see Net::HTTP#proxy_pass, Net::HTTP#proxy_user, Net::HTTP.new -
Net
:: HTTPHeader # [](key) -> String|nil (19.0) -
key ヘッダフィールドを返します。
key ヘッダフィールドを返します。
たとえばキー 'content-length' に対しては '2048'
のような文字列が得られます。キーが存在しなければ nil を返します。
//emlist[例][ruby]{
require 'net/http'
uri = URI.parse('http://www.example.com/index.html')
req = Net::HTTP::Get.new(uri.request_uri)
req['user-agent'] # => Ruby
//}
一種類のヘッダフィールドが一つのヘッダの中に複数存在する
場合にはそれを全て... -
Net
:: HTTPHeader # basic _ auth(account , password) -> [String] (19.0) -
Authorization: ヘッダを BASIC 認証用にセットします。
Authorization: ヘッダを BASIC 認証用にセットします。
@param account アカウント名を文字列で与えます。
@param password パスワードを文字列で与えます。
//emlist[例][ruby]{
require 'net/http'
uri = URI.parse('http://www.example.com/index.html')
req = Net::HTTP::Get.new(uri.request_uri)
req.basic_auth("user", "pass") # => ["Basic dXNlcjpwYXNz"]
//}... -
Net
:: HTTPHeader # each {|name , val| . . . . } -> () (19.0) -
保持しているヘッダ名とその値をそれぞれ ブロックに渡して呼びだします。
保持しているヘッダ名とその値をそれぞれ
ブロックに渡して呼びだします。
ヘッダ名は小文字で統一されます。
val は ", " で連結した文字列がブロックに渡されます。
//emlist[例][ruby]{
require 'net/http'
uri = URI.parse('http://www.example.com/index.html')
req = Net::HTTP::Get.new(uri.request_uri)
req.each_header { |key,value| puts "#{key} = #{value}" }
# => accept-encoding... -
Net
:: HTTPHeader # each _ capitalized _ name {|name| . . . . } -> () (19.0) -
保持しているヘッダ名を正規化 ('x-my-header' -> 'X-My-Header') して、ブロックに渡します。
保持しているヘッダ名を正規化
('x-my-header' -> 'X-My-Header')
して、ブロックに渡します。
//emlist[例][ruby]{
require 'net/http'
uri = URI.parse('http://www.example.com/index.html')
req = Net::HTTP::Get.new(uri.request_uri)
req.each_capitalized_name { |key| puts key }
# => Accept-Encoding
# => Accept
# => User-Agent
//} -
Net
:: HTTPHeader # each _ header {|name , val| . . . . } -> () (19.0) -
保持しているヘッダ名とその値をそれぞれ ブロックに渡して呼びだします。
保持しているヘッダ名とその値をそれぞれ
ブロックに渡して呼びだします。
ヘッダ名は小文字で統一されます。
val は ", " で連結した文字列がブロックに渡されます。
//emlist[例][ruby]{
require 'net/http'
uri = URI.parse('http://www.example.com/index.html')
req = Net::HTTP::Get.new(uri.request_uri)
req.each_header { |key,value| puts "#{key} = #{value}" }
# => accept-encoding... -
Net
:: HTTPHeader # each _ key {|name| . . . } -> () (19.0) -
保持しているヘッダ名をブロックに渡して呼びだします。
保持しているヘッダ名をブロックに渡して呼びだします。
ヘッダ名は小文字で統一されます。
//emlist[例][ruby]{
require 'net/http'
uri = URI.parse('http://www.example.com/index.html')
req = Net::HTTP::Get.new(uri.request_uri)
req.each_name { |name| puts name }
# => accept-encoding
# => accept
# => user-agent
//} -
Net
:: HTTPHeader # each _ name {|name| . . . } -> () (19.0) -
保持しているヘッダ名をブロックに渡して呼びだします。
保持しているヘッダ名をブロックに渡して呼びだします。
ヘッダ名は小文字で統一されます。
//emlist[例][ruby]{
require 'net/http'
uri = URI.parse('http://www.example.com/index.html')
req = Net::HTTP::Get.new(uri.request_uri)
req.each_name { |name| puts name }
# => accept-encoding
# => accept
# => user-agent
//} -
Net
:: HTTPHeader # fetch(key) -> String (19.0) -
key ヘッダフィールドを返します。
key ヘッダフィールドを返します。
たとえばキー 'content-length' に対しては '2048'
のような文字列が得られます。キーが存在しなければ nil を返します。
該当するキーが登録されてい
ない時には、引数 default が与えられていればその値を、ブロッ
クが与えられていればそのブロックを評価した値を返します。
一種類のヘッダフィールドが一つのヘッダの中に複数存在する
場合にはそれを全て ", " で連結した文字列を返します。
key は大文字小文字を区別しません。
@param key ヘッダフィール名を文字列で与えます。
@param default 該... -
Net
:: HTTPHeader # fetch(key) {|hash| . . . . } -> String (19.0) -
key ヘッダフィールドを返します。
key ヘッダフィールドを返します。
たとえばキー 'content-length' に対しては '2048'
のような文字列が得られます。キーが存在しなければ nil を返します。
該当するキーが登録されてい
ない時には、引数 default が与えられていればその値を、ブロッ
クが与えられていればそのブロックを評価した値を返します。
一種類のヘッダフィールドが一つのヘッダの中に複数存在する
場合にはそれを全て ", " で連結した文字列を返します。
key は大文字小文字を区別しません。
@param key ヘッダフィール名を文字列で与えます。
@param default 該... -
Net
:: HTTPHeader # fetch(key , default) -> String (19.0) -
key ヘッダフィールドを返します。
key ヘッダフィールドを返します。
たとえばキー 'content-length' に対しては '2048'
のような文字列が得られます。キーが存在しなければ nil を返します。
該当するキーが登録されてい
ない時には、引数 default が与えられていればその値を、ブロッ
クが与えられていればそのブロックを評価した値を返します。
一種類のヘッダフィールドが一つのヘッダの中に複数存在する
場合にはそれを全て ", " で連結した文字列を返します。
key は大文字小文字を区別しません。
@param key ヘッダフィール名を文字列で与えます。
@param default 該... -
Net
:: IMAP :: MailboxACLItem # rights -> String (19.0) -
アクセス権限を文字列で返します。
アクセス権限を文字列で返します。
Net::IMAP::MailboxACLItem#user で得られるユーザが
持っている権限が返されます。
この文字列の意味については 2086 を参照してください。 -
Process
. # getpriority(which , who) -> Integer (19.0) -
which に従いプロセス、プロセスグループ、ユーザのいずれかの現在のプライオリティを整数で返します。
which に従いプロセス、プロセスグループ、ユーザのいずれかの現在のプライオリティを整数で返します。
@param which プライオリティの種類を次の定数で指定します。 Process::PRIO_PROCESS,
Process::PRIO_PGRP, Process::PRIO_USER。
@param who which の値にしたがってプロセス ID、プロセスグループ ID、ユーザ ID のいずれかを整数で指定します。
@raise Errno::EXXX プライオリティの取得に失敗した場合に発生します。
@raise NotImplement... -
Process
. # setpriority(which , who , prio) -> 0 (19.0) -
プロセス、プロセスグループ、 ユーザのいずれかの現在のプライオリティを設定します 。プライオリティの設定に成功した場合は 0 を返します。
プロセス、プロセスグループ、
ユーザのいずれかの現在のプライオリティを設定します
。プライオリティの設定に成功した場合は 0 を返します。
@param which プライオリティを設定する対象の種類を以下の定数のいずれかで指定します。
* Process::PRIO_PROCESS
* Process::PRIO_PGRP
* Process::PRIO_USER
@param who which の値にしたがってプロセス ID、プロセスグループ ID、ユーザ ID のいずれかを整数で指定します。
@param prio プライオリティを -20 から 20 までの整数で設... -
Process
:: UID . # from _ name(name) -> Integer (19.0) -
引数で指定した名前の実ユーザ ID を返します。
引数で指定した名前の実ユーザ ID を返します。
Process::UID.from_name("root") # => 0
Process::UID.from_name("nosuchuser") # => can't find user for nosuchuser (ArgumentError)
@param name ユーザ名を指定します。
@raise ArgumentError 引数で指定したユーザが存在しない場合に発生します。 -
Ruby用語集 (19.0)
-
Ruby用語集 A B C D E F G I J M N O R S Y
...メソッドの
いくつかは未定義にされている。
: リテラル
: literal
プログラム中に直接記述された値のこと。3.14 や "foo" や /\d+/ はリテラル
だが、1 + 2 はリテラルではない。
Math::PI も定数参照なのでリテラルではない。... -
URI
:: Generic # password=(s) (19.0) -
自身の password を設定します。
自身の password を設定します。
自身に user が設定されていない場合には例外が発生します。
@param s 自身の password を表す文字列を指定します。
@raise URI::InvalidComponentError 不正な引数 s に対して発生します。
@raise URI::InvalidURIError userinfo と registry を同時に設定した場合に発生します。 -
UnboundMethod
# source _ location -> [String , Integer] | nil (19.0) -
ソースコードのファイル名と行番号を配列で返します。
ソースコードのファイル名と行番号を配列で返します。
その手続オブジェクトが ruby で定義されていない(つまりネイティブ
である)場合は nil を返します。
//emlist[例][ruby]{
require 'time'
Time.instance_method(:zone).source_location # => nil
Time.instance_method(:httpdate).source_location # => ["/Users/user/.rbenv/versions/2.4.3/lib/ruby/2.4.0/time.rb", 654]
/... -
WEBrick
:: AccessLog (19.0) -
WEBrick::HTTPServer のアクセスログの形式を処理するために内部で使われるモジュールです。
WEBrick::HTTPServer のアクセスログの形式を処理するために内部で使われるモジュールです。
アクセスログの形式は Apache の mod_log_config の形式に準拠しますが、HTTP ステータスコードを
指定することは出来ません。最後のステータスを表す %>s は %s と同じように解釈されます。
* http://httpd.apache.org/docs/mod/mod_log_config.html#formats
"%h %l %u %t \"%r\" %s %b"
"%{User-Agent}i"
指定できる形式は以下のとおりです。
: %a... -
WEBrick
:: AccessLog :: COMBINED _ LOG _ FORMAT -> String (19.0) -
Apache のアクセスログで一般的に使われる形式を表す文字列です。
Apache のアクセスログで一般的に使われる形式を表す文字列です。
@return 以下の文字列を返します。
//emlist{{
"%h %l %u %t \"%r\" %s %b \"%{Referer}i\" \"%{User-agent}i\""
//}} -
Win32
:: Registry # name (19.0) -
@todo
@todo
キーのフルパスを 'HKEY_CURRENT_USER\SOFTWARE\foo\bar'
のような形で返します。 -
Win32
:: Registry # to _ s (19.0) -
@todo
@todo
キーのフルパスを 'HKEY_CURRENT_USER\SOFTWARE\foo\bar'
のような形で返します。 -
net
/ smtp (19.0) -
メールを送信するためのプロトコル SMTP (Simple Mail Transfer Protocol) を扱うライブラリです。
メールを送信するためのプロトコル SMTP (Simple Mail Transfer Protocol)
を扱うライブラリです。
ヘッダなどメールのデータを扱うことはできません。
SMTP の実装は 2821 に基いています。
=== 使用例
==== とにかくメールを送る
SMTP を使ってメールを送るにはまず SMTP.start でセッションを開きます。
第一引数がサーバのアドレスで第二引数がポート番号です。
ブロックを使うと File.open と同じように終端処理を自動的にやってくれる
のでおすすめです。
require 'net/smtp'
Net::SMTP.... -
open-uri (19.0)
-
http/ftp に簡単にアクセスするためのクラスです。
http/ftp に簡単にアクセスするためのクラスです。
=== 使用例
http/ftp の URL を、普通のファイルのように開けます。
require 'open-uri'
URI.open("http://www.ruby-lang.org/") {|f|
f.each_line {|line| p line}
}
開いたファイルオブジェクトは StringIO もしくは Tempfile で
すが OpenURI::Meta モジュールで拡張されていて、メタ情報を獲得する
メソッドが使えます。
require 'open-uri'
URI.ope... -
rubygems (19.0)
-
RubyGems を扱うためのクラスやモジュールが定義されているライブラリです。
RubyGems を扱うためのクラスやモジュールが定義されているライブラリです。
===[a:gem_command] gem コマンドの使い方
$ gem help
RubyGems は Ruby のための高機能なパッケージ管理ツールです。
これはより多くの情報へのポインタを含んでいる基本的なヘルプメッセージです。
使用方法:
gem -h/--help
gem -v/--version
gem command [arguments...] [options...]
例:
... -
webrick
/ cgi (19.0) -
一般の CGI 環境で webrick ライブラリのサーブレットと同じように CGI スクリプトを書くための ライブラリです。サーバが WEBrick でなくても使うことが出来ます。
一般の CGI 環境で webrick ライブラリのサーブレットと同じように CGI スクリプトを書くための
ライブラリです。サーバが WEBrick でなくても使うことが出来ます。
=== 使い方
WEBrick のサーブレットを作成するのと同じように、WEBrick::CGI のサブクラスでメソッド
do_GET や do_POST を定義することによって CGI スクリプトを書きます。
スクリプトの最後で WEBrick::CGI#start メソッドを呼ぶ必要があります。
WEBrick::CGI#start メソッドは service メソッドを呼び出し、service メソッ... -
win32
/ registry (19.0) -
win32/registry は Win32 プラットフォームでレジストリをアクセスするための ライブラリです。Win32 API の呼び出しに Win32API を使います。
win32/registry は Win32 プラットフォームでレジストリをアクセスするための
ライブラリです。Win32 API の呼び出しに Win32API を使います。
//emlist{
require 'win32/registry'
Win32::Registry::HKEY_CURRENT_USER.open('SOFTWARE\foo') do |reg|
value = reg['foo'] # 値の読み込み
value = reg['foo', Win32::Registry::REG_SZ] ... -
OptionParser
# on(long , *rest) {|v| . . . } -> self (7.0) -
オプションを取り扱うためのブロックを自身に登録します。 ブロックはコマンドラインのパース時に、オプションが指定されていれば呼ばれます。
オプションを取り扱うためのブロックを自身に登録します。
ブロックはコマンドラインのパース時に、オプションが指定されていれば呼ばれます。
コマンドに与えられた引数が配列やハッシュに含まれない場合、例外
OptionParser::InvalidArgument が OptionParser#parse 実行時
に発生します。
@param short ショートオプションを表す文字列を指定します。
@param long ロングオプションを表す文字列を指定します。
@param rest 可能な引数を列挙した配列やハッシュを与えます。文字列を与えた場合は、
サマリ... -
OptionParser
# on(long , desc = "") {|v| . . . } -> self (7.0) -
オプションを取り扱うためのブロックを自身に登録します。 ブロックはコマンドラインのパース時に、オプションが指定されていれば呼ばれます。
オプションを取り扱うためのブロックを自身に登録します。
ブロックはコマンドラインのパース時に、オプションが指定されていれば呼ばれます。
ショートオプションとロングオプションを同時に登録することもできます。
opts.on("-r", "--require LIBRARY"){|lib| ...}
これは以下と同値です。
opts.on("-r LIBRARY"){|lib| ...}
opts.on("--require LIBRARY"){|lib| ...}
複数の異なるオプションに同じブロックを一度に登録することもできます。
opt.on('-v', '-vv')... -
OptionParser
# on(long , klass = String , desc = "") {|v| . . . } -> self (7.0) -
オプションを取り扱うためのブロックを自身に登録します。 ブロックはコマンドラインのパース時に、オプションが指定されていれば呼ばれます。
オプションを取り扱うためのブロックを自身に登録します。
ブロックはコマンドラインのパース時に、オプションが指定されていれば呼ばれます。
klass にはクラスを与えます。どのようなクラスを受け付けるかは、
以下の「デフォルトで利用可能な引数クラス」を参照して下さい。
OptionParser.accept や OptionParser#accept によって、受け付け
るクラスを増やすことができます。登録されていないクラスが指定された
場合、例外 ArgumentError を投げます。
また、登録されたクラスであっても引数が変換できないものである場合、例外
OptionParser::I... -
OptionParser
# on(short , *rest) {|v| . . . } -> self (7.0) -
オプションを取り扱うためのブロックを自身に登録します。 ブロックはコマンドラインのパース時に、オプションが指定されていれば呼ばれます。
オプションを取り扱うためのブロックを自身に登録します。
ブロックはコマンドラインのパース時に、オプションが指定されていれば呼ばれます。
コマンドに与えられた引数が配列やハッシュに含まれない場合、例外
OptionParser::InvalidArgument が OptionParser#parse 実行時
に発生します。
@param short ショートオプションを表す文字列を指定します。
@param long ロングオプションを表す文字列を指定します。
@param rest 可能な引数を列挙した配列やハッシュを与えます。文字列を与えた場合は、
サマリ... -
OptionParser
# on(short , desc = "") {|v| . . . } -> self (7.0) -
オプションを取り扱うためのブロックを自身に登録します。 ブロックはコマンドラインのパース時に、オプションが指定されていれば呼ばれます。
オプションを取り扱うためのブロックを自身に登録します。
ブロックはコマンドラインのパース時に、オプションが指定されていれば呼ばれます。
ショートオプションとロングオプションを同時に登録することもできます。
opts.on("-r", "--require LIBRARY"){|lib| ...}
これは以下と同値です。
opts.on("-r LIBRARY"){|lib| ...}
opts.on("--require LIBRARY"){|lib| ...}
複数の異なるオプションに同じブロックを一度に登録することもできます。
opt.on('-v', '-vv')... -
OptionParser
# on(short , klass = String , desc = "") {|v| . . . } -> self (7.0) -
オプションを取り扱うためのブロックを自身に登録します。 ブロックはコマンドラインのパース時に、オプションが指定されていれば呼ばれます。
オプションを取り扱うためのブロックを自身に登録します。
ブロックはコマンドラインのパース時に、オプションが指定されていれば呼ばれます。
klass にはクラスを与えます。どのようなクラスを受け付けるかは、
以下の「デフォルトで利用可能な引数クラス」を参照して下さい。
OptionParser.accept や OptionParser#accept によって、受け付け
るクラスを増やすことができます。登録されていないクラスが指定された
場合、例外 ArgumentError を投げます。
また、登録されたクラスであっても引数が変換できないものである場合、例外
OptionParser::I... -
OptionParser
# on(short , long , *rest) {|v| . . . } -> self (7.0) -
オプションを取り扱うためのブロックを自身に登録します。 ブロックはコマンドラインのパース時に、オプションが指定されていれば呼ばれます。
オプションを取り扱うためのブロックを自身に登録します。
ブロックはコマンドラインのパース時に、オプションが指定されていれば呼ばれます。
コマンドに与えられた引数が配列やハッシュに含まれない場合、例外
OptionParser::InvalidArgument が OptionParser#parse 実行時
に発生します。
@param short ショートオプションを表す文字列を指定します。
@param long ロングオプションを表す文字列を指定します。
@param rest 可能な引数を列挙した配列やハッシュを与えます。文字列を与えた場合は、
サマリ...