別のキーワード
種類
ライブラリ
- ビルトイン (315)
- base64 (1)
- bigdecimal (6)
- coverage (2)
- csv (19)
- digest (2)
- fiber (1)
- fileutils (4)
-
io
/ wait (2) -
irb
/ cmd / load (1) -
irb
/ context (2) - json (7)
-
json
/ add / range (1) - kconv (2)
- logger (5)
- matrix (4)
- mkmf (2)
-
net
/ http (5) - objspace (2)
- openssl (7)
- optparse (14)
- pathname (13)
- pp (2)
- prime (1)
- psych (2)
- pty (1)
- rake (15)
-
rake
/ packagetask (8) - readline (1)
- resolv (1)
-
rexml
/ document (8) - ripper (1)
- rubygems (1)
-
rubygems
/ custom _ require (1) -
rubygems
/ installer (1) -
rubygems
/ requirement (7) -
rubygems
/ version (3) - set (9)
- socket (1)
- stringio (1)
- strscan (11)
-
test
/ unit (1) - thread (9)
- uri (1)
-
webrick
/ ssl (2) - win32ole (5)
クラス
-
ARGF
. class (3) - Array (6)
- BasicObject (4)
- BasicSocket (1)
- BigDecimal (6)
- Binding (1)
- CSV (8)
-
CSV
:: Row (7) -
CSV
:: Table (4) - Class (2)
- Complex (2)
- Coverage (2)
-
Digest
:: Base (2) - Encoding (3)
-
Encoding
:: InvalidByteSequenceError (1) - Enumerator (4)
-
Enumerator
:: Lazy (2) - Exception (1)
- FalseClass (5)
- Fiber (1)
- File (7)
-
File
:: Stat (6) - Float (8)
-
Gem
:: Installer (1) -
Gem
:: Requirement (7) -
Gem
:: Version (2) - Hash (12)
- IO (9)
-
IRB
:: Context (2) -
IRB
:: ExtendCommand :: Require (1) - Integer (10)
-
JSON
:: State (4) - Logger (5)
- MatchData (2)
- Matrix (3)
- Method (2)
- Module (25)
- Mutex (5)
-
Net
:: HTTPGenericRequest (2) -
Net
:: HTTPResponse (1) - NilClass (3)
- Numeric (3)
- Object (24)
-
OpenSSL
:: ASN1 :: Boolean (2) -
OpenSSL
:: BN (2) - OptionParser (13)
- PP (2)
- Pathname (13)
- Proc (1)
-
REXML
:: CData (1) -
REXML
:: DocType (1) -
REXML
:: Element (1) -
REXML
:: Entity (1) -
REXML
:: Text (3) -
Rake
:: Application (3) -
Rake
:: FileList (3) -
Rake
:: FileTask (2) -
Rake
:: InvocationChain (1) -
Rake
:: PackageTask (8) - Random (2)
- Range (11)
- Rational (1)
- Regexp (8)
-
Resolv
:: DNS :: Name (1) - Ripper (1)
-
RubyVM
:: InstructionSequence (5) - Set (9)
- String (22)
- StringIO (1)
- StringScanner (10)
- Struct (2)
- Thread (6)
-
Thread
:: ConditionVariable (2) -
Thread
:: Queue (4) -
Thread
:: SizedQueue (3) - Time (29)
- TracePoint (5)
- TrueClass (3)
-
URI
:: FTP (1) - UnboundMethod (2)
- Vector (1)
-
WEBrick
:: GenericServer (1) -
WIN32OLE
_ EVENT (2) -
WIN32OLE
_ TYPE (1)
モジュール
- Base64 (1)
- Comparable (6)
- Enumerable (11)
- FileTest (12)
- FileUtils (4)
- GC (7)
-
GC
:: Profiler (1) - JSON (1)
-
JSON
:: Generator :: GeneratorMethods :: FalseClass (1) - Kconv (1)
- Kernel (24)
-
Net
:: HTTPHeader (2) - ObjectSpace (7)
-
OpenSSL
:: ASN1 (2) -
OptionParser
:: Arguable (1) - PTY (1)
- Psych (2)
- Rake (2)
-
Rake
:: Cloneable (1) - RakeFileUtils (3)
- Readline (1)
- Signal (2)
-
Test
:: Unit (1) -
WEBrick
:: Config (1)
オブジェクト
- ENV (2)
キーワード
- ! (1)
- !~ (1)
-
$ -v (1) -
$ -w (1) -
$ = (1) -
$ VERBOSE (1) - & (3)
-
1
. 6 . 8から1 . 8 . 0への変更点(まとめ) (1) - < (4)
- <= (4)
- == (25)
- === (9)
- =~ (1)
- > (4)
- >= (4)
- ASN1 (1)
- Boolean (2)
- ENV (1)
- Marshal フォーマット (1)
-
NEWS for Ruby 2
. 0 . 0 (1) -
NEWS for Ruby 2
. 1 . 0 (1) - NIL (1)
- NotImplementedError (1)
- OPS (1)
- Range (1)
- Ruby プログラムの実行 (1)
- Rubyで使われる記号の意味(正規表現の複雑な記号は除く) (1)
- Rubyの起動 (1)
- Ruby用語集 (1)
- SSL (1)
- Stat (1)
- String (1)
- StringScanner (1)
- Symbol (1)
- TRUE (1)
- TracePoint (1)
- Version (1)
- WIN32OLE (1)
-
WIN32OLE
_ EVENT (1) - XMLDecl (1)
- [] (6)
- []= (1)
- ^ (3)
-
_ _ id _ _ (1) -
abort
_ on _ exception (2) -
abort
_ on _ exception= (2) - absolute? (1)
-
add
_ loader (1) - alive? (1)
- all? (2)
- allocate (1)
-
allow
_ nan? (1) - any? (2)
- application (1)
- application= (1)
-
ascii
_ compatible? (1) - atime (1)
- attr (3)
- autoclose? (1)
-
beginning
_ of _ line? (1) - between? (1)
- bigdecimal (1)
- binmode (1)
-
bit
_ set? (1) -
block
_ given? (1) -
body
_ permitted? (1) - bol? (1)
- broadcast (1)
- bsearch (4)
- casefold? (1)
- check (1)
-
check
_ circular? (1) - chunk (3)
- chunked? (1)
-
class
_ variable _ defined? (1) -
class
_ variables (1) - cleanpath (1)
- clone (2)
- closed? (3)
- cmp (1)
-
compare
_ by _ identity (1) -
compare
_ by _ identity? (1) -
compare
_ file (1) - compile (2)
-
compile
_ file (1) -
compile
_ option (1) -
compile
_ option= (1) -
const
_ defined? (1) -
const
_ get (1) -
const
_ source _ location (1) - constants (1)
- cover? (1)
-
create
_ id= (1) - debug? (1)
-
default
_ event _ sources (1) - delete (2)
-
deprecate
_ constant (1) - deq (2)
- directory? (1)
- disable (3)
- disjoint? (1)
-
do
_ not _ reverse _ lookup (1) - dst? (1)
- dummy? (1)
- dup (1)
- each (4)
-
each
_ child (2) -
each
_ object (4) -
egrep
_ cpp (2) - elements (1)
- empty? (6)
- enable (3)
-
end
_ with? (1) - eof (1)
- eof? (1)
- eos? (1)
- eql? (16)
- equal? (3)
- error? (1)
- even? (1)
- exact? (1)
-
exclude
_ end? (1) -
excluded
_ from _ list? (1) -
executable
_ real? (1) - execute (1)
- exit (1)
- exit! (1)
- fatal? (1)
- fcntl (1)
- field? (1)
-
field
_ row? (1) - finite? (1)
-
fixed
_ encoding? (1) - flock (1)
- fnmatch (2)
- fnmatch? (1)
-
force
_ quotes? (1) - freeze (1)
- friday? (1)
- frozen? (1)
-
garbage
_ collect (2) - gem (1)
- getgm (1)
- getlocal (2)
- getopts (1)
- getutc (1)
- gm (2)
- gmt? (1)
- gmtime (1)
- grpowned? (2)
- handler= (1)
-
has
_ elements? (1) -
has
_ key? (1) -
has
_ value? (1) - header? (1)
-
header
_ row? (2) - identical? (2)
- include? (7)
-
incomplete
_ input? (1) - info? (1)
-
initialize
_ copy (1) - inspect (1)
-
instance
_ methods (1) -
instance
_ of? (1) -
instance
_ variable _ defined? (1) - integer? (2)
- irb (1)
-
is
_ a? (2) - isatty (1)
- isdst (1)
- iseuc (1)
- isjis (1)
- iterator? (1)
-
json
/ add / core (1) -
json
_ creatable? (1) - key? (3)
-
kind
_ of? (2) - lambda? (1)
-
latest
_ gc _ info (2) - load (3)
- local (2)
-
local
_ variable _ defined? (1) - localtime (2)
- locked? (1)
- lstat (2)
- main (1)
-
marshal
_ dump (1) - matched? (1)
- matches? (1)
- member? (5)
-
memsize
_ of _ all (1) -
method
_ defined? (1) - methods (1)
- mktime (2)
- mode (2)
- monday? (1)
- mountpoint? (1)
-
need
_ tar (1) -
need
_ tar= (1) -
need
_ tar _ bz2 (1) -
need
_ tar _ bz2= (1) -
need
_ tar _ gz (1) -
need
_ tar _ gz= (1) -
need
_ zip (1) -
need
_ zip= (1) - needed? (1)
- new (13)
- none? (2)
-
nowrite
_ flag (1) -
nowrite
_ flag= (1) - odd? (1)
- on (12)
- one? (2)
- optparse (1)
- owned? (3)
-
peek
_ result (1) - pop (2)
- pp (1)
- prerelease? (2)
- prime (1)
- prime? (1)
-
prime
_ fasttest? (1) -
private
_ class _ method (2) -
private
_ instance _ methods (1) -
private
_ method _ defined? (1) -
proper
_ subset? (1) -
proper
_ superset? (1) -
protected
_ method _ defined? (1) -
public
_ method _ defined? (1) - rake (1)
-
raw
_ data (1) -
reachable
_ objects _ from (1) - read (1)
- readable? (1)
- readline (1)
- readlines (1)
- real? (2)
- regular? (1)
- relative? (1)
-
remove
_ entry (1) - replicate (1)
-
request
_ body _ permitted? (1) - require (2)
-
respond
_ to? (1) -
respond
_ to _ missing? (1) -
response
_ body _ permitted? (1) - rest? (1)
- result (1)
-
return
_ headers? (1) - root? (1)
- rows (1)
- rss (1)
-
ruby 1
. 6 feature (1) -
ruby 1
. 8 . 2 feature (1) -
ruby 1
. 8 . 3 feature (1) -
ruby 1
. 8 . 4 feature (1) -
ruby 1
. 9 feature (1) - rubygems (1)
-
safe
_ load (1) -
satisfied
_ by? (1) - saturday? (1)
-
scan
_ full (1) -
search
_ full (1) - setgid? (1)
- setuid? (1)
-
setup
_ argv (1) -
sharing
_ detection (1) -
sharing
_ detection= (1) - shift (2)
- signal (1)
-
singleton
_ class (1) -
singleton
_ class? (1) -
singleton
_ methods (1) -
skip
_ blanks? (1) - sleep (1)
- slice (6)
- socket? (1)
- spawn (4)
- specific? (1)
- start (1)
-
start
_ with? (1) - sticky? (1)
- stop? (1)
- store (1)
- stress= (1)
- string (1)
-
subdomain
_ of? (1) - subset? (1)
- sunday? (1)
- superset? (1)
- symlink? (2)
- sync (1)
- synchronize (1)
- system (4)
- taint (1)
- tainted? (1)
- test (2)
- thursday? (1)
-
to
_ a (1) -
to
_ csv (1) -
to
_ h (1) -
to
_ hash (1) -
to
_ json (2) -
to
_ s (3) - trap (2)
-
try
_ lock (1) - tty? (1)
-
tty
_ output= (1) - tuesday? (1)
-
unconverted
_ fields? (1) -
undef
_ method (1) - unlink (2)
- untaint (1)
- upto (1)
-
urlsafe
_ encode64 (1) -
use
_ readline (1) -
use
_ readline? (1) - utc (3)
- utc? (1)
-
valid
_ encoding? (1) - value (1)
- value? (1)
-
verbose
_ flag= (1) - wait (1)
-
wait
_ readable (1) - warn? (1)
- warning (1)
- wednesday? (1)
- writable? (1)
- write (1)
-
write
_ headers? (1) - zero? (5)
- | (3)
- ~ (1)
- クラス/メソッドの定義 (1)
- セキュリティモデル (1)
- パターンマッチ (1)
- メソッド呼び出し(super・ブロック付き・yield) (1)
- 制御構造 (1)
- 変数と定数 (1)
- 多言語化 (1)
- 字句構造 (1)
- 正規表現 (1)
- 演算子式 (1)
検索結果
-
rubygems (78181.0)
-
RubyGems を扱うためのクラスやモジュールが定義されているライブラリです。
RubyGems を扱うためのクラスやモジュールが定義されているライブラリです。
===[a:gem_command] gem コマンドの使い方
$ gem help
RubyGems は Ruby のための高機能なパッケージ管理ツールです。
これはより多くの情報へのポインタを含んでいる基本的なヘルプメッセージです。
使用方法:
gem -h/--help
gem -v/--version
gem command [arguments...] [options...]
例:
... -
Object
:: FALSE -> FalseClass (54724.0) -
非推奨です。代表的な偽の値。false と同じ。
非推奨です。代表的な偽の値。false と同じ。
この定数は過去との互換性のために提供されています。擬似変数 false を使ってください。
Ruby では false と nil が偽として扱われます。
偽でない値(false でも nil でもない値) は全て真とみなされます。 -
Rubyの起動 (18748.0)
-
Rubyの起動 * cmd_option * shebang
Rubyの起動
* cmd_option
* shebang
Rubyインタプリタの起動は以下の書式のコマンドラインにより行います。
ruby [ option ...] [ -- ] [ programfile ] [ argument ...]
ここで、option は後述のcmd_option
のいずれかを指定します。-- は、オプション列の終りを明示するため
に使用できます。programfile は、Ruby スクリプトを記述したファイ
ルです。これを省略したり`-' を指定した場合には標準入力を Ruby ス
クリプトとみなします。
programfile が... -
ruby 1
. 6 feature (15682.0) -
ruby 1.6 feature ruby version 1.6 は安定版です。この版での変更はバグ修正がメイン になります。
ruby 1.6 feature
ruby version 1.6 は安定版です。この版での変更はバグ修正がメイン
になります。
((<stable-snapshot|URL:ftp://ftp.netlab.co.jp/pub/lang/ruby/stable-snapshot.tar.gz>)) は、日々更新される安定版の最新ソースです。
== 1.6.8 (2002-12-24) -> stable-snapshot
: 2003-01-22: errno
EAGAIN と EWOULDBLOCK が同じ値のシステムで、EWOULDBLOCK がなくなっ
ていま... -
ruby 1
. 8 . 4 feature (13516.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]: 追加され... -
Ruby用語集 (11638.0)
-
Ruby用語集 A B C D E F G I J M N O R S Y
Ruby用語集
A B C D E F G I J M N O R S Y
a ka sa ta na ha ma ya ra wa
=== 記号・数字
: %記法
: % notation
「%」記号で始まる多種多様なリテラル記法の総称。
参照:d:spec/literal#percent
: 0 オリジン
: zero-based
番号が 0 から始まること。
例えば、
Array や Vector、Matrix などの要素の番号、
String における文字の位置、
といったものは 0 オリジンである。
: 1 オリジン
: one-based
... -
ruby 1
. 9 feature (11632.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 ファイルのフォーマット変更
* ... -
ruby 1
. 8 . 3 feature (11104.0) -
ruby 1.8.3 feature *((<ruby 1.8 feature>)) *((<ruby 1.8.2 feature>))
ruby 1.8.3 feature
*((<ruby 1.8 feature>))
*((<ruby 1.8.2 feature>))
ruby 1.8.2 から ruby 1.8.3 までの変更点です。
掲載方針
*バグ修正の影響も含めて動作が変わるものを収録する。
*単にバグを直しただけのものは収録しない。
*ライブラリへの単なる定数の追加は収録しない。
以下は各変更点に付けるべきタグです。
記号について(特に重要なものは大文字(主観))
* カテゴリ
* [ruby]: ruby インタプリタの変更
* [api]: 拡張ライブラリ API
* [lib]: ... -
ruby 1
. 8 . 2 feature (11014.0) -
ruby 1.8.2 feature ruby 1.8.2 での ruby 1.8.1 からの変更点です。
ruby 1.8.2 feature
ruby 1.8.2 での ruby 1.8.1 からの変更点です。
掲載方針
*バグ修正の影響も含めて動作が変わるものを収録する。
*単にバグを直しただけのものは収録しない。
*ライブラリへの単なる定数の追加は収録しない。
以下は各変更点に付けるべきタグです。
*カテゴリ
* [ruby]: ruby インタプリタの変更
* [api]: 拡張ライブラリ API
* [lib]: ライブラリ
*レベル
* [bug]: バグ修正
* [new]: 追加されたクラス/メソッドなど
* [compat]: 変更されたクラス/... -
FalseClass
# &(other) -> false (9784.0) -
常に false を返します。
常に false を返します。
@param other 論理積を行なう式です。
& は再定義可能な演算子に分類されていますので、通常は false & other の形で使われます。
//emlist[例][ruby]{
p false & true #=> false
p false & false #=> false
p false & nil #=> false
p false & (1 == 1) #=> false
p false & (1 + 1) #=> false
p false.&(true) #=> false
p false.&... -
NEWS for Ruby 2
. 1 . 0 (9568.0) -
NEWS for Ruby 2.1.0 このドキュメントは前回リリース以降のバグ修正を除くユーザーに影響のある機能の変更のリストです。
...NEWS for Ruby 2.1.0
このドキュメントは前回リリース以降のバグ修正を除くユーザーに影響のある機能の変更のリストです。
それぞれのエントリーは参照情報があるため短いです。
十分な情報と共に書かれた全ての変更のリス... -
RubyVM
:: InstructionSequence . compile(source , file = nil , path = nil , line = 1 , options = nil) -> RubyVM :: InstructionSequence (9385.0) -
引数 source で指定した Ruby のソースコードを元にコンパイル済みの RubyVM::InstructionSequence オブジェクトを作成して返します。
引数 source で指定した Ruby のソースコードを元にコンパイル済みの
RubyVM::InstructionSequence オブジェクトを作成して返します。
@param source Ruby のソースコードを文字列で指定します。
@param file ファイル名を文字列で指定します。
@param path 引数 file の絶対パスファイル名を文字列で指定します。
@param line 引数 source の 1 行目の行番号を指定します。
@param options コンパイル時のオプションを true、false、Hash オブ
... -
RubyVM
:: InstructionSequence . new(source , file = nil , path = nil , line = 1 , options = nil) -> RubyVM :: InstructionSequence (9385.0) -
引数 source で指定した Ruby のソースコードを元にコンパイル済みの RubyVM::InstructionSequence オブジェクトを作成して返します。
引数 source で指定した Ruby のソースコードを元にコンパイル済みの
RubyVM::InstructionSequence オブジェクトを作成して返します。
@param source Ruby のソースコードを文字列で指定します。
@param file ファイル名を文字列で指定します。
@param path 引数 file の絶対パスファイル名を文字列で指定します。
@param line 引数 source の 1 行目の行番号を指定します。
@param options コンパイル時のオプションを true、false、Hash オブ
... -
FalseClass
# ^(other) -> bool (9373.0) -
other が真なら true を, 偽なら false を返します。
other が真なら true を, 偽なら false を返します。
@param other 排他的論理和を行なう式です。
^ は再定義可能な演算子に分類されていますので、通常は false ^ other の形で使われます。
//emlist[例][ruby]{
p false ^ true #=> true
p false ^ false #=> false
p false ^ nil #=> false
p false ^ (1 == 1) #=> true
p false ^ (1 + 1) #=> true
p false.^(true) ... -
FalseClass
# |(other) -> bool (9373.0) -
other が真なら true を, 偽なら false を返します。
other が真なら true を, 偽なら false を返します。
@param other 論理和を行なう式です。
| は再定義可能な演算子に分類されていますので、通常は false | other の形で使われます。
//emlist[例][ruby]{
p false | true #=> true
p false | false #=> false
p false | nil #=> false
p false | (1 == 1) #=> true
p false | (1 + 1) #=> true
p false.|(true) #=... -
RubyVM
:: InstructionSequence . compile _ file(file , options = nil) -> RubyVM :: InstructionSequence (9367.0) -
引数 file で指定した Ruby のソースコードを元にコンパイル済みの RubyVM::InstructionSequence オブジェクトを作成して返します。
引数 file で指定した Ruby のソースコードを元にコンパイル済みの
RubyVM::InstructionSequence オブジェクトを作成して返します。
RubyVM::InstructionSequence.compile とは異なり、file、path などの
メタデータは自動的に取得します。
@param file ファイル名を文字列で指定します。
@param options コンパイル時のオプションを true、false、Hash オブ
ジェクトのいずれかで指定します。詳細は
RubyVM::Instr... -
Rubyで使われる記号の意味(正規表現の複雑な記号は除く) (9280.0)
-
Rubyで使われる記号の意味(正規表現の複雑な記号は除く) ex q num per and or plus minus ast slash hat sq period comma langl rangl eq tilde dollar at under lbrarbra lbra2rbra2 lbra3rbra3 dq colon ac backslash semicolon
Rubyで使われる記号の意味(正規表現の複雑な記号は除く)
ex q num per and or
plus minus ast slash hat sq
period comma langl rangl eq tilde
dollar at under lbrarbra
lbra2rbra2 lbra3rbra3 dq colon ac
backslash semicolon
===[a:ex] !
: !true
not 演算子。d:spec/operator#notを参照。
: 3 != 5
「等しくない」比較演算子。d:spec/operator#notを参... -
NEWS for Ruby 2
. 0 . 0 (9262.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... -
Ruby プログラムの実行 (9202.0)
-
Ruby プログラムの実行 === Ruby プログラム
Ruby プログラムの実行
=== Ruby プログラム
Ruby プログラムの実行は文の連なりの評価です。なんらかの形であたえられたプログラムテキストをコンパイルし、BEGIN 文があればそれを評価し、トップレベルの式の連なりを評価し、END ブロックがあれば最後にそれを評価して終了します (終了処理の詳細については spec/terminate を参照のこと)。
=== 文
==== if
if 文は、まず条件式を評価し、その値が真ならば対応する本体を評価します。
偽ならば elsif 節の条件式を順番に評価し、その値が始めて真になった節の
本体を評価します。それらがすべて偽なら... -
RubyVM
:: InstructionSequence . compile _ option -> Hash (9109.0) -
命令シーケンスのコンパイル時のデフォルトの最適化オプションを Hash で返 します。
命令シーケンスのコンパイル時のデフォルトの最適化オプションを Hash で返
します。
//emlist[例][ruby]{
require "pp"
pp RubyVM::InstructionSequence.compile_option
# => {:inline_const_cache=>true,
# :peephole_optimization=>true,
# :tailcall_optimization=>false,
# :specialized_instruction=>true,
# :operands_unification=>true,
# :instructi... -
FalseClass
# inspect -> String (9103.0) -
常に文字列 "false" を返します。
常に文字列 "false" を返します。
//emlist[例][ruby]{
false.to_s # => "false"
//} -
FalseClass
# to _ s -> String (9103.0) -
常に文字列 "false" を返します。
常に文字列 "false" を返します。
//emlist[例][ruby]{
false.to_s # => "false"
//} -
JSON
:: Generator :: GeneratorMethods :: FalseClass # to _ json(state _ or _ hash = nil) -> String (9073.0) -
自身から生成した JSON 形式の文字列を返します。
自身から生成した JSON 形式の文字列を返します。
"false" という文字列を返します。
@param state_or_hash 生成する JSON 形式の文字列をカスタマイズするため
に JSON::State のインスタンスか、
JSON::State.new の引数と同じ Hash を
指定します。
//emlist[例][ruby]{
require "json"
false.to_json # => "false"
//} -
RubyVM
:: InstructionSequence . compile _ option=(options) (9055.0) -
命令シーケンスのコンパイル時のデフォルトの最適化オプションを引数 options で指定します。
命令シーケンスのコンパイル時のデフォルトの最適化オプションを引数
options で指定します。
@param options コンパイル時の最適化オプションを true、false、nil、
Hash のいずれかで指定します。true を指定した場合は
全てのオプションを有効にします。false を指定した場合は全
てのオプションを無効にします。nil を指定した場合はいずれ
のオプションも変更しません。また、Hash を指定した
場合は以... -
1
. 6 . 8から1 . 8 . 0への変更点(まとめ) (4411.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への変更点(まとめ)/変更されたクラス/メソッド(互換性のない変更)>))... -
制御構造 (1009.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... -
optparse (901.0)
-
コマンドラインのオプションを取り扱うためのライブラリです。
コマンドラインのオプションを取り扱うためのライブラリです。
=== チュートリアル
optparse を使う場合、基本的には
(1) OptionParser オブジェクト opt を生成する。
(2) オプションを取り扱うブロックを opt に登録する。
(3) opt.parse(ARGV) でコマンドラインを実際に parse する。
というような流れになります。
* optiondef
* optionarg
* longoption
* help
* subcmd
* argv
* hyphen_start_file
====[a:optiondef]... -
Marshal フォーマット (865.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 されません... -
正規表現 (829.0)
-
正規表現 * metachar * expansion * char * anychar * string * str * quantifier * capture * grouping * subexp * selector * anchor * cond * option * encoding * comment * free_format_mode * absenceop * list * specialvar * references
正規表現
* metachar
* expansion
* char
* anychar
* string
* str
* quantifier
* capture
* grouping
* subexp
* selector
* anchor
* cond
* option
* encoding
* comment
* free_format_mode
* absenceop
* list
* specialvar
* references
正規表現(regular expression)は文字列のパタ... -
クラス/メソッドの定義 (811.0)
-
クラス/メソッドの定義 * クラス/メソッドの定義: * class * singleton_class * module * method * operator * nest_method * eval_method * singleton_method * class_method * limit * 定義に関する操作: * alias * undef * defined
クラス/メソッドの定義
* クラス/メソッドの定義:
* class
* singleton_class
* module
* method
* operator
* nest_method
* eval_method
* singleton_method
* class_method
* limit
* 定義に関する操作:
* alias
* undef
* defined
===[a:class] クラス定義
//emlist[例][ruby]{
class Foo < S... -
演算子式 (811.0)
-
演算子式 * assign * selfassign * multiassign * range * range_cond * and * or * not * cond
演算子式
* assign
* selfassign
* multiassign
* range
* range_cond
* and
* or
* not
* cond
//emlist[例][ruby]{
1+2*3/4
//}
プログラミングの利便のために一部のメソッド呼び出しと制御構造は演算子形
式をとります。Rubyには以下にあげる演算子があります。
高い ::
[]
+(単項) ! ~
**
... -
パターンマッチ (739.0)
-
パターンマッチ * patterns * variable_binding * variable_pinning * matching_non_primitive_objects * guard_clauses * current_feature_status * pattern_syntax * some_undefined_behavior_examples
パターンマッチ
* patterns
* variable_binding
* variable_pinning
* matching_non_primitive_objects
* guard_clauses
* current_feature_status
* pattern_syntax
* some_undefined_behavior_examples
パターンマッチは、構造化された値に対して、構造をチェックし、マッチした部分をローカル変数に束縛するという、深いマッチを可能にする実験的な機能です。(『束縛』は、パターンマッチの輸入元である関数型言語... -
irb (673.0)
-
irb は Interactive Ruby の略です。 irb を使うと、Ruby の式を標準入力から簡単に入力・実行することができます。
irb は Interactive Ruby の略です。
irb を使うと、Ruby の式を標準入力から簡単に入力・実行することができます。
=== irb の使い方
Ruby さえ知っていれば irb を使うのは簡単です。
irb コマンドを実行すると、以下のようなプロンプトが表れます。
$ irb
irb(main):001:0>
あとは Ruby の式を入力するだけで、その式が実行され、結果が表示されます。
irb(main):001:0> 1+2
3
irb(main):002:0> class Foo
irb(main):003:1> def f... -
REXML
:: DocType # write(output , indent = 0 , transitive = false , ie _ hack = false) -> () (625.0) -
output に DTD を出力します。
output に DTD を出力します。
このメソッドは deprecated です。REXML::Formatter で
出力してください。
@param output 出力先の IO オブジェクト
@param indent インデントの深さ。指定しないでください。
@param transitive 無視されます。指定しないでください。
@param ie_hack 無視されます。指定しないでください。
//emlist[][ruby]{
require 'rexml/document'
doctype = REXML::Document.new(<<EOS).doctype
<... -
多言語化 (571.0)
-
多言語化 Ruby は US-ASCII はもちろん、US-ASCII 以外の文字エンコーディングもサポートしています。 文字列の内部表現のエンコーディングは固定されておらず、 プログラマは目的に応じて使用するエンコーディングを選ぶことができます。
多言語化
Ruby は US-ASCII はもちろん、US-ASCII 以外の文字エンコーディングもサポートしています。
文字列の内部表現のエンコーディングは固定されておらず、
プログラマは目的に応じて使用するエンコーディングを選ぶことができます。
同じプロセスの中で異なるエンコーディングの文字列が同時に存在することができます。
全ての String や Regexp などのオブジェクトは自身のエンコーディング情報を保持しています。
これにより各オブジェクト内の文字を適切に取り扱うことができます。
後述のマジックコメントでスクリプトエンコーディングを指定すると、
Ruby スクリプトに非... -
REXML
:: Text . new(arg , respect _ whitespace = false , parent = nil , raw = nil , entity _ filter = nil , illegal = REXML :: Text :: NEEDS _ A _ SECOND _ CHECK) (556.0) -
テキストノードオブジェクトを生成します。
テキストノードオブジェクトを生成します。
arg でノードの内容を指定します。
文字列の場合はそれが内容として使われます。
REXML::Text オブジェクトの場合はその内容が複製されます。
respect_whitespace に真を指定すると、arg に含まれる空白文字は保存されます。
偽の場合は空白はまとめられます。
raw は true, false, nil のいずれかを指定し、生成されるテキストノードが
raw モードであるかどうかを決めます。
true の場合、そのノードは raw モードであると解釈され、
テキストにはエスケープされていないXMLマークアップは
含まれ... -
bigdecimal (523.0)
-
bigdecimal は浮動小数点数演算ライブラリです。 任意の精度で 10 進表現された浮動小数点数を扱えます。
bigdecimal は浮動小数点数演算ライブラリです。
任意の精度で 10 進表現された浮動小数点数を扱えます。
//emlist[][ruby]{
require 'bigdecimal'
a = BigDecimal("0.123456789123456789")
b = BigDecimal("123456.78912345678", 40)
print a + b # => 0.123456912580245903456789e6
//}
一般的な 10 進数の計算でも有用です。2 進数の浮動小数点演算には微小な誤
差があるのに対し、BigDecimal では正確な値を得る事がで... -
変数と定数 (487.0)
-
変数と定数 * local * instance * class * class_var_scope * global * pseudo * const * prio
変数と定数
* local
* instance
* class
* class_var_scope
* global
* pseudo
* const
* prio
Ruby の変数と定数の種別は変数名の最初の一文字によって、
ローカル変数、
インスタンス変数、
クラス変数、
グローバル変数、
定数
のいずれかに区別されます。
通常の変数の二文字目以降は英数字または
_ですが、組み込み変数の一部には
「`$'+1文字の記号」という変数があります(builtinを参照)。変数名
の長さにはメモリのサイズ以外の制限はありません。
===[a:local] ロ... -
Object
# respond _ to?(name , include _ all = false) -> bool (484.0) -
オブジェクトがメソッド name を持つとき真を返します。
オブジェクトがメソッド name を持つとき真を返します。
オブジェクトが メソッド name を持つというのは、
オブジェクトが メソッド name に応答できることをいいます。
Windows での Process.fork や GNU/Linux での File.lchmod の
ような NotImplementedError が発生する場合は false を返します。
※ NotImplementedError が発生する場合に false を返すのは
Rubyの組み込みライブラリや標準ライブラリなど、C言語で実装されているメソッドのみです。
Rubyで実装されたメソッドで N... -
NilClass
# &(other) -> false (460.0) -
常に false を返します。
常に false を返します。
@param other 論理積を行なう式です
//emlist[例][ruby]{
nil & true # => false
nil & false # => false
nil & nil # => false
nil & "a" # => false
//} -
Kernel
. # exit!(status = false) -> () (454.0) -
Rubyプログラムの実行を即座に終了します。 status として整数が与えられた場合、その値を Ruby コマンドの終了ステータスとします。 デフォルトの終了ステータスは 1 です。
Rubyプログラムの実行を即座に終了します。
status として整数が与えられた場合、その値を Ruby コマンドの終了ステータスとします。
デフォルトの終了ステータスは 1 です。
status が true の場合 0、 false の場合 1 を引数に指定したとみなされます。この値はCレベルの定数
EXIT_SUCCESS、EXIT_FAILURE の値なので、正確には環境依存です。
exit! は exit とは違って、例外処理などは一切行ないませ
ん。 Kernel.#fork の後、子プロセスを終了させる時などに用
いられます。
@param status 終了ステータス... -
Complex
# real? -> false (406.0) -
常に false を返します。
常に false を返します。
//emlist[例][ruby]{
(2+3i).real? # => false
(2+0i).real? # => false
//}
@see Numeric#real? -
Psych
. safe _ load(yaml , whitelist _ classes = [] , whitelist _ symbols = [] , aliases = false , filename = nil) -> object (406.0) -
安全に YAML フォーマットの文書を読み込み Ruby のオブジェクトを生成して返します。
安全に YAML フォーマットの文書を読み込み Ruby のオブジェクトを生成して返します。
デフォルトでは以下のクラスのオブジェクトしか変換しません。
* TrueClass
* FalseClass
* NilClass
* Numeric
* String
* Array
* Hash
再帰的なデータ構造はデフォルトでは許可されていません。
任意のクラスを許可するには whitelist_classes を指定すると、
そのクラスが追加されます。例えば Date クラスを許可するには
以下のように書いてください:
//emlist[][ruby]{
Psych.s... -
File
# flock(operation) -> 0 | false (394.0) -
ファイルをロックします。
ファイルをロックします。
ロックを取得するまでブロックされます。
ロックの取得に成功した場合は 0 を返します。
File::LOCK_NB (ノンブロッキング) を指定すると、本来ならブロックされる場合に
ブロックされずに false を返すようになります。
@param operation ロックに対する操作の種類を示す定数を指定します。
どのような定数が利用可能かは以下を参照して下さい。
@raise IOError 自身が close されている場合に発生します。
@raise Errno::EXXX operation に不正な整数を与えた... -
File
:: Stat # symlink? -> false (388.0) -
シンボリックリンクである時に真を返します。 ただし、File::Statは自動的にシンボリックリンクをたどっていくので 常にfalseを返します。
シンボリックリンクである時に真を返します。
ただし、File::Statは自動的にシンボリックリンクをたどっていくので
常にfalseを返します。
//emlist[][ruby]{
require 'fileutils'
outfile = $0 + ".ln"
FileUtils.ln_s($0, outfile)
p File::Stat.new(outfile).symlink? #=> false
p File.lstat(outfile).symlink? #=> true
p FileTest.symlink?(outfile) #=> true
//}
... -
Psych
. load(yaml , filename = nil , fallback = false) -> object (388.0) -
YAML ドキュメントを Ruby のデータ構造(オブジェクト)に変換します。
YAML ドキュメントを Ruby のデータ構造(オブジェクト)に変換します。
入力に複数のドキュメントが含まれている場合は、先頭のものを変換して
返します。
filename はパース中に発生した例外のメッセージに用います。
@param yaml YAML ドキュメント(文字列 or IO オブジェクト)
@param filename Psych::SyntaxError 発生時にファイル名として表示する文字列。
@param fallback 引数 yaml に空のYAMLを指定した場合の戻り値を指定します。デフォルトは false です。
@raise Psych::Syn... -
Kernel
. # spawn(env , program , *args , options={}) -> Integer (382.0) -
引数を外部コマンドとして実行しますが、生成した 子プロセスの終了を待ち合わせません。生成した子プロセスのプロセスIDを返します。
引数を外部コマンドとして実行しますが、生成した
子プロセスの終了を待ち合わせません。生成した子プロセスのプロセスIDを返します。
env に Hash を渡すことで、exec(2) で子プロセス内で
ファイルを実行する前に環境変数を変更することができます。
Hash のキーは環境変数名文字列、Hash の値に設定する値とします。
nil とすることで環境変数が削除(unsetenv(3))されます。
//emlist[例][ruby]{
# FOO を BAR にして BAZ を削除する
pid = spawn({"FOO"=>"BAR", "BAZ"=>nil}, command)
//... -
Kernel
. # spawn(program , *args) -> Integer (382.0) -
引数を外部コマンドとして実行しますが、生成した 子プロセスの終了を待ち合わせません。生成した子プロセスのプロセスIDを返します。
引数を外部コマンドとして実行しますが、生成した
子プロセスの終了を待ち合わせません。生成した子プロセスのプロセスIDを返します。
env に Hash を渡すことで、exec(2) で子プロセス内で
ファイルを実行する前に環境変数を変更することができます。
Hash のキーは環境変数名文字列、Hash の値に設定する値とします。
nil とすることで環境変数が削除(unsetenv(3))されます。
//emlist[例][ruby]{
# FOO を BAR にして BAZ を削除する
pid = spawn({"FOO"=>"BAR", "BAZ"=>nil}, command)
//... -
メソッド呼び出し(super・ブロック付き・yield) (379.0)
-
メソッド呼び出し(super・ブロック付き・yield) * super * block * yield * block_arg * numbered_parameters * it * call_method
メソッド呼び出し(super・ブロック付き・yield)
* super
* block
* yield
* block_arg
* numbered_parameters
* it
* call_method
//emlist[例][ruby]{
foo.bar()
foo.bar
bar()
print "hello world\n"
print
Class.new
Class::new
//}
文法:
[式 `.'] 識別子 [`(' [[`*'] 式] ... [`&' 式] `)']
[式 `::'] 識別... -
Range
. new(first , last , exclude _ end = false) -> Range (376.0) -
first から last までの範囲オブジェクトを生成して返しま す。
first から last までの範囲オブジェクトを生成して返しま
す。
exclude_end が真ならば終端を含まない範囲オブジェクトを生
成します。exclude_end 省略時には終端を含みます。
@param first 最初のオブジェクト
@param last 最後のオブジェクト
@param exclude_end 真をセットした場合終端を含まない範囲オブジェクトを生成します
@raise ArgumentError first <=> last が nil の場合に発生します
//emlist[例: 整数の範囲オブジェクトの場合][ruby]{
Range.new(... -
URI
:: FTP . new(scheme , userinfo , host , port , registry , path , opaque , query , fragment , arg _ check = false) -> URI :: FTP (376.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... -
Kernel
. # load(file , priv = false) -> true (370.0) -
Ruby プログラム file をロードして実行します。再ロード可能です。
Ruby プログラム file をロードして実行します。再ロード可能です。
file が絶対パスのときは file からロードします。
file が相対パスのときは組み込み変数 $:
に示されるパスとカレントディレクトリを順番に探し、最初に見付かったファイルを
ロードします。このとき、$: の要素文字列の先頭文字が
`~' (チルダ) だと、環境変数 HOME の値に展開されます。
また `~USER' はそのユーザのホームディレクトリに展開されます。
ロードに成功した場合は true を返します。
@param file ファイル名の文字列です。
@param priv 真のとき、ロ... -
CSV
:: Row . new(headers , fields , header _ row = false) -> CSV :: Row (358.0) -
自身を初期化します。
自身を初期化します。
一方の配列が他方の配列よりも短い場合、不足しているところは nil になります。
@param headers ヘッダの配列を指定します。
@param fields フィールドの配列を指定します。
@param header_row ヘッダ行である場合は真を指定します。そうでない場合は偽を指定します。
デフォルトは偽です。
//emlist[例 header_row = true のケース][ruby]{
require "csv"
header = CSV::Row.new(["header1", "header2"]... -
Module
# attr(name , false) -> nil (358.0) -
インスタンス変数読み取りのためのインスタンスメソッド name を定義します。
インスタンス変数読み取りのためのインスタンスメソッド name を定義します。
このメソッドで定義されるアクセスメソッドの定義は次の通りです。
//emlist[例][ruby]{
def name
@name
end
//}
第 2 引数 が true で指定された場合には、属性の書き込み用メソッド name= も同時に定義されます。
その定義は次の通りです。
//emlist[例][ruby]{
def name=(val)
@name = val
end
//}
第 2 引数 に true か false を指定する方法は非推奨です。
@param name St... -
Thread
:: Queue # deq(non _ block = false) -> object (346.0) -
キューからひとつ値を取り出します。キューが空の時、呼出元のスレッドは停止します。
キューからひとつ値を取り出します。キューが空の時、呼出元のスレッドは停止します。
@param non_block true を与えると、キューが空の時に例外 ThreadError が発生します。
//emlist[例][ruby]{
require 'thread'
q = Queue.new
th1 = Thread.start do
while resource = q.pop
puts resource
end
end
[:resource1, :resource2, :resource3, nil].each { |r|
q.push(r)
}
t... -
Thread
:: Queue # pop(non _ block = false) -> object (346.0) -
キューからひとつ値を取り出します。キューが空の時、呼出元のスレッドは停止します。
キューからひとつ値を取り出します。キューが空の時、呼出元のスレッドは停止します。
@param non_block true を与えると、キューが空の時に例外 ThreadError が発生します。
//emlist[例][ruby]{
require 'thread'
q = Queue.new
th1 = Thread.start do
while resource = q.pop
puts resource
end
end
[:resource1, :resource2, :resource3, nil].each { |r|
q.push(r)
}
t... -
Thread
:: Queue # shift(non _ block = false) -> object (346.0) -
キューからひとつ値を取り出します。キューが空の時、呼出元のスレッドは停止します。
キューからひとつ値を取り出します。キューが空の時、呼出元のスレッドは停止します。
@param non_block true を与えると、キューが空の時に例外 ThreadError が発生します。
//emlist[例][ruby]{
require 'thread'
q = Queue.new
th1 = Thread.start do
while resource = q.pop
puts resource
end
end
[:resource1, :resource2, :resource3, nil].each { |r|
q.push(r)
}
t... -
Thread
:: SizedQueue # deq(non _ block = false) -> object (346.0) -
キューからひとつ値を取り出します。 キューに push しようと待っているスレッドがあれば、実行を再開させます。
キューからひとつ値を取り出します。
キューに push しようと待っているスレッドがあれば、実行を再開させます。
@param non_block true を与えると、キューが空の時に例外 ThreadError が発生します。
//emlist[例][ruby]{
require 'thread'
q = SizedQueue.new(4)
th1 = Thread.start do
while resource = q.pop
puts resource
end
end
[:resource1, :resource2, :resource3, nil].eac... -
Thread
:: SizedQueue # pop(non _ block = false) -> object (346.0) -
キューからひとつ値を取り出します。 キューに push しようと待っているスレッドがあれば、実行を再開させます。
キューからひとつ値を取り出します。
キューに push しようと待っているスレッドがあれば、実行を再開させます。
@param non_block true を与えると、キューが空の時に例外 ThreadError が発生します。
//emlist[例][ruby]{
require 'thread'
q = SizedQueue.new(4)
th1 = Thread.start do
while resource = q.pop
puts resource
end
end
[:resource1, :resource2, :resource3, nil].eac... -
Thread
:: SizedQueue # shift(non _ block = false) -> object (346.0) -
キューからひとつ値を取り出します。 キューに push しようと待っているスレッドがあれば、実行を再開させます。
キューからひとつ値を取り出します。
キューに push しようと待っているスレッドがあれば、実行を再開させます。
@param non_block true を与えると、キューが空の時に例外 ThreadError が発生します。
//emlist[例][ruby]{
require 'thread'
q = SizedQueue.new(4)
th1 = Thread.start do
while resource = q.pop
puts resource
end
end
[:resource1, :resource2, :resource3, nil].eac... -
FileUtils
. # remove _ entry(path , force = false) -> () (340.0) -
ファイル path を削除します。path がディレクトリなら再帰的に削除します。
ファイル path を削除します。path がディレクトリなら再帰的に削除します。
このメソッドにはローカル脆弱性が存在します。
詳しくは FileUtils.#remove_entry_secure の項を参照してください。
@param path 削除するパス。
@param force 真のときは削除中に発生した StandardError を無視します。
//emlist[][ruby]{
require 'fileutils'
FileUtils.remove_entry '/tmp/ruby.tmp.08883'
//}
@see FileUtils.#remove_e... -
String
# upto(max , exclusive = false) {|s| . . . } -> self (340.0) -
self から始めて max まで 「次の文字列」を順番にブロックに与えて繰り返します。 「次」の定義については String#succ を参照してください。
self から始めて max まで
「次の文字列」を順番にブロックに与えて繰り返します。
「次」の定義については String#succ を参照してください。
たとえば以下のコードは a, b, c, ... z, aa, ... az, ..., za を
出力します。
//emlist[][ruby]{
("a" .. "za").each do |str|
puts str
end
'a'.upto('za') do |str|
puts str
end
//}
@param max 繰り返しをやめる文字列
@param exclusive max を含むかどうか... -
StringScanner
. new(str , dup = false) -> StringScanner (340.0) -
新しい StringScanner オブジェクトを生成します。
新しい StringScanner オブジェクトを生成します。
@param str スキャン対象の文字列を指定します。
@param dup dup は単に無視します。
引数の文字列は複製も freeze もされず、そのまま使います。
//emlist[例][ruby]{
require 'strscan'
s = StringScanner.new('This is an example string')
s.eos? #=> false
p s.scan(/\w+/) #=> "This"
p s.scan(/\w+/) #... -
PTY
. check(pid , raise = false) -> Process :: Status | nil (322.0) -
pid で指定された子プロセスの状態をチェックし、変化があれば変化したステータスを 返します。実行中、あるいは変化なしであれば nil を返します。
pid で指定された子プロセスの状態をチェックし、変化があれば変化したステータスを
返します。実行中、あるいは変化なしであれば nil を返します。
状態が変化した後、その状態を取得することは一回しかできない(くりかえし check を
呼んだら nil が返ってくる)ので注意してください。
状態が変化して、終了したか停止した場合、第二引数が偽であれば、
対応する Process::Status オブジェクトを返します。
@param pid チェックしたい子プロセスの PID を指定します。
@param raise 真を指定すると、子プロセスが終了または停止していた場合、
... -
Pathname
# cleanpath(consider _ symlink = false) -> Pathname (322.0) -
余計な "."、".." や "/" を取り除いた新しい Pathname オブジェクトを返します。
余計な "."、".." や "/" を取り除いた新しい Pathname オブジェクトを返します。
cleanpath は、実際にファイルシステムを参照することなく、文字列操作
だけで処理を行います。
@param consider_symlink 真ならパス要素にシンボリックリンクがあった場合
にも問題ないように .. を残します。
//emlist[例][ruby]{
require "pathname"
path = Pathname.new("//.././../")
path # => #<Pa... -
Readline
. # readline(prompt = "" , add _ hist = false) -> String | nil (322.0) -
prompt を出力し、ユーザからのキー入力を待ちます。 エンターキーの押下などでユーザが文字列を入力し終えると、 入力した文字列を返します。 このとき、add_hist が true であれば、入力した文字列を入力履歴に追加します。 何も入力していない状態で EOF(UNIX では ^D) を入力するなどで、 ユーザからの入力がない場合は nil を返します。
prompt を出力し、ユーザからのキー入力を待ちます。
エンターキーの押下などでユーザが文字列を入力し終えると、
入力した文字列を返します。
このとき、add_hist が true であれば、入力した文字列を入力履歴に追加します。
何も入力していない状態で EOF(UNIX では ^D) を入力するなどで、
ユーザからの入力がない場合は nil を返します。
本メソッドはスレッドに対応しています。
入力待ち状態のときはスレッドコンテキストの切替えが発生します。
入力時には行内編集が可能で、vi モードと Emacs モードが用意されています。
デフォルトは Emacs モードです。
... -
File
. fnmatch(pattern , path , flags = 0) -> bool (283.0) -
ファイル名のパターンマッチ fnmatch(3) を行います。 path が pattern にマッチすれば真を返します。そうでない場合には false を返します。
ファイル名のパターンマッチ fnmatch(3) を行います。
path が pattern にマッチすれば真を返します。そうでない場合には false を返します。
@param pattern パターンを文字列で指定します。ワイルドカードとして `*',
`**`, `?', `[]', `{}' が使用できます。
//emlist[例][ruby]{
%w(foo foobar bar).each {|f|
p File.fnmatch("foo*", f)
}
# => true
# true
# false
//}
@param p... -
File
. fnmatch?(pattern , path , flags = 0) -> bool (283.0) -
ファイル名のパターンマッチ fnmatch(3) を行います。 path が pattern にマッチすれば真を返します。そうでない場合には false を返します。
ファイル名のパターンマッチ fnmatch(3) を行います。
path が pattern にマッチすれば真を返します。そうでない場合には false を返します。
@param pattern パターンを文字列で指定します。ワイルドカードとして `*',
`**`, `?', `[]', `{}' が使用できます。
//emlist[例][ruby]{
%w(foo foobar bar).each {|f|
p File.fnmatch("foo*", f)
}
# => true
# true
# false
//}
@param p... -
Rake
. application=(app) (271.0) -
現在の Rake アプリケーションをセットします。
現在の Rake アプリケーションをセットします。
@param app Rake::Application のインスタンスを指定します。
//emlist[][ruby]{
# Rakefile での記載例とする
require 'pp'
task default: :test_rake_app
task :test_rake_app do
app = Rake::Application.new
app.tty_output = true
Rake.application = app
pp Rake.application
end
# => #<Rake::App... -
Rake
:: Application # options -> OpenStruct (271.0) -
コマンドラインで与えられたアプリケーションのオプションを返します。
コマンドラインで与えられたアプリケーションのオプションを返します。
//emlist[][ruby]{
# Rakefile での記載例とする
task default: :test_rake_app
task :test_rake_app do
Rake.application.options # => #<OpenStruct always_multitask=false, backtrace=false, build_all=false, dryrun=false, ignore_deprecate=false, ignore_system=false, job_stats=... -
StringScanner (271.0)
-
StringScanner は文字列スキャナクラスです。 簡単に高速なスキャナを記述できます。
StringScanner は文字列スキャナクラスです。
簡単に高速なスキャナを記述できます。
//emlist[例][ruby]{
require 'strscan'
s = StringScanner.new('This is an example string')
s.eos? #=> false
p s.scan(/\w+/) #=> "This"
p s.scan(/\w+/) #=> nil
p s.scan(/\s+/) #=> " "
p s.scan(/\s+/) #=> nil
p s.scan(/\w+/) #=> "is"... -
StringScanner
# scan _ full(regexp , s , f) -> object (235.0) -
スキャンポインタの位置から regexp と文字列のマッチを試します。
スキャンポインタの位置から regexp と文字列のマッチを試します。
マッチに成功すると、s と f の値によって以下のように動作します。
* s が true ならばスキャンポインタを進めます。
* s が false ならばスキャンポインタを進めません。
* f が true ならばマッチした部分文字列を返します。
* f が false ならばマッチした部分文字列の長さを返します。
マッチに失敗すると s や f に関係なく nil を返します。
このメソッドは s と f の組み合わせにより、
他のメソッドと同等の動作になります。
*... -
セキュリティモデル (229.0)
-
セキュリティモデル RubyにはCGI等のプログラミングを安全に行うことを助ける為に、セキュリティ 機構が備わっています。
セキュリティモデル
RubyにはCGI等のプログラミングを安全に行うことを助ける為に、セキュリティ
機構が備わっています。
Rubyのセキュリティモデルは「オブジェクトの汚染」と「セーフレベル」という
仕組みによってなりたっています。
=== オブジェクトの汚染
Rubyではオブジェクトは「汚染されている」とみなされることがあります。この
しくみは大きく分けて二つの使われ方をします。
ひとつ目は、信用できない入力をもとに作られたオブジェクトを「汚染されてい
る」とみなし、「危険な操作」の引数として使えないようにすることです。悪意
あるデータによって、プログラムが意図しない動作をする事... -
TrueClass
# ^(other) -> bool (211.0) -
other が真なら false を, 偽なら true を返します。
other が真なら false を, 偽なら true を返します。
@param other 排他的論理和を行なう式です。
^ は再定義可能な演算子に分類されていますので、通常は true ^ other のように使われます。
//emlist[例][ruby]{
p true ^ true #=> false
p true ^ false #=> true
p true ^ nil #=> true
p true ^ (1 == 1) #=> false
p true ^ (1 + 1) #=> false
p true.^(true) #=> ... -
Proc
# lambda? -> bool (199.0) -
手続きオブジェクトの引数の取扱が厳密であるならば true を返します。
手続きオブジェクトの引数の取扱が厳密であるならば true を返します。
引数の取扱の厳密さの意味は以下の例を参考にしてください。
//emlist[例][ruby]{
# lambda で生成した Proc オブジェクトでは true
lambda{}.lambda? # => true
# proc で生成した Proc オブジェクトでは false
proc{}.lambda? # => false
# Proc.new で生成した Proc オブジェクトでは false
Proc.new{}.lambda? # => false
# 以下、lambda?が偽である場合
#... -
BasicObject
# ! -> bool (181.0) -
オブジェクトを真偽値として評価し、その論理否定を返します。
オブジェクトを真偽値として評価し、その論理否定を返します。
このメソッドは self が nil または false であれば真を、そうでない場合は偽を返します。
主に論理式の評価に伴って副作用を引き起こすことを目的に
再定義するものと想定されています。
このメソッドを再定義しても Ruby の制御式において nil や false 以外が偽として
扱われることはありません。
@return オブジェクトが偽であれば真、そうでない場合は偽
//emlist[例][ruby]{
class NegationRecorder < BasicObject
def initialize
... -
Enumerable
# chunk {|elt| . . . } -> Enumerator (181.0) -
要素を前から順にブロックで評価し、その結果によって 要素をチャンクに分けた(グループ化した)要素を持つ Enumerator を返します。
要素を前から順にブロックで評価し、その結果によって
要素をチャンクに分けた(グループ化した)要素を持つ
Enumerator を返します。
ブロックの評価値が同じ値が続くものを一つのチャンクとして
取り扱います。すなわち、ブロックの評価値が一つ前と
異なる所でチャンクが区切られます。
返り値の Enumerator は各チャンクのブロック評価値と
各チャンクの要素を持つ配列のペアを各要素とします。
そのため、eachだと以下のようになります。
//emlist[][ruby]{
enum.chunk {|elt| key }.each {|key, ary| do_something ... -
StringScanner
# search _ full(regexp , s , f) -> object (181.0) -
regexp で指定された正規表現とマッチするまで文字列をスキャンします。
regexp で指定された正規表現とマッチするまで文字列をスキャンします。
マッチに成功すると、s と f の値によって以下のように動作します。
* s が true ならばスキャンポインタを進めます。
* s が false ならばスキャンポインタを進めません。
* f が true ならばスキャン開始位置からマッチした部分の末尾までの部分文字列を返します。
* f が false ならばスキャン開始位置からマッチした部分の末尾までの部分文字列の長さを返します。
マッチに失敗すると s や f に関係なく nil を返します。
このメソッドは s と ... -
WIN32OLE
_ TYPE # default _ event _ sources -> [WIN32OLE _ TYPE] (181.0) -
型が持つソースインターフェイスを取得します。
型が持つソースインターフェイスを取得します。
default_event_sourcesメソッドは、selfがCoClass(コンポーネントクラス)
の場合、そのクラスがサポートするデフォルトのソースインターフェイス(イ
ベントの通知元となるインターフェイス)を返します。
@return デフォルトのソースインターフェイスをWIN32OLE_TYPEの配列と
して返します。返すのは配列ですが、デフォルトのソースインターフェ
イスは最大でも1インターフェイスです。ソースインターフェイスを持
たない場合は空配列を返します。
tobj = ... -
TrueClass
# &(other) -> bool (175.0) -
other が真なら true を, 偽なら false を返します。
other が真なら true を, 偽なら false を返します。
@param other 論理積を行なう式です。
& は再定義可能な演算子に分類されていますので、通常は true & other のように使われます。
//emlist[例][ruby]{
p true & true #=> true
p true & false #=> false
p true & nil #=> false
p true & (1 == 1) #=> true
p true & (1 + 1) #=> true
p true.&(true) #=> true... -
WIN32OLE (175.0)
-
OLEオートメーションサーバをRubyで操作するためのクラスです。
OLEオートメーションサーバをRubyで操作するためのクラスです。
Windowsの多くのアプリケーションやライブラリは、COMと呼ばれるAPI群を利用
して他のプログラムから操作できます。WIN32OLEがサポートしているのは、
COMのAPIのうち、特にインタープリタ用のインターフェイスであるOLEオートメー
ション(IDispatchインターフェイス)とそれに付随するリフレクション用のイ
ンターフェイスです。
これらのインターフェイスをサポートしている代表的なWindowsアプリケーショ
ンに、Office、IE、iTunes、Illustratorがあります。また、WMI、WshS... -
String (163.0)
-
文字列のクラスです。 ヌル文字を含む任意のバイト列を扱うことができます。 文字列の長さにはメモリ容量以外の制限はありません。
文字列のクラスです。
ヌル文字を含む任意のバイト列を扱うことができます。
文字列の長さにはメモリ容量以外の制限はありません。
文字列は通常、文字列リテラルを使って生成します。
以下に文字列リテラルの例をいくつか示します。
//emlist[文字列リテラルの例][ruby]{
'str\\ing' # シングルクオート文字列 (エスケープシーケンスがほぼ無効)
"string\n" # ダブルクオート文字列 (エスケープシーケンスがすべて有効)
%q(str\\ing) # 「%q」文字列 (エスケープシーケンスがほぼ無効、デリミタが変えられる)
%Q(string\n) # 「%Q... -
Enumerable
# any? -> bool (157.0) -
すべての要素が偽である場合に false を返します。 真である要素があれば、ただちに true を返します。
すべての要素が偽である場合に false を返します。
真である要素があれば、ただちに true を返します。
ブロックを伴う場合は、各要素に対してブロックを評価し、すべての結果
が偽である場合に false を返します。ブロックが真を返した時点
で、ただちに true を返します。
自身に要素が存在しない場合は false を返します。
//emlist[例][ruby]{
require 'set'
p Set[1, 2, 3].any? {|v| v > 3 } # => false
p Set[1, 2, 3].any? {|v| v > 1 } ... -
Enumerable
# any? {|item| . . . } -> bool (157.0) -
すべての要素が偽である場合に false を返します。 真である要素があれば、ただちに true を返します。
すべての要素が偽である場合に false を返します。
真である要素があれば、ただちに true を返します。
ブロックを伴う場合は、各要素に対してブロックを評価し、すべての結果
が偽である場合に false を返します。ブロックが真を返した時点
で、ただちに true を返します。
自身に要素が存在しない場合は false を返します。
//emlist[例][ruby]{
require 'set'
p Set[1, 2, 3].any? {|v| v > 3 } # => false
p Set[1, 2, 3].any? {|v| v > 1 } ... -
MatchData
# ==(other) -> bool (157.0) -
self と other のマッチ対象になった文字列、元になった正規表現オブジェク ト、マッチした位置が等しければ true を返します。そうでない場合には false を返します。
self と other のマッチ対象になった文字列、元になった正規表現オブジェク
ト、マッチした位置が等しければ true を返します。そうでない場合には
false を返します。
@param other 比較対象のオブジェクトを指定します。
//emlist[文字列][ruby]{
s = "abc"
m1 = s.match("a")
m2 = s.match("b")
m1 == m2 # => false
m2 = s.match("a")
m1 == m2 # => true
//}
//emlist[正規表現][ruby]{
r = /abc/
m1 = r.mat... -
MatchData
# eql?(other) -> bool (157.0) -
self と other のマッチ対象になった文字列、元になった正規表現オブジェク ト、マッチした位置が等しければ true を返します。そうでない場合には false を返します。
self と other のマッチ対象になった文字列、元になった正規表現オブジェク
ト、マッチした位置が等しければ true を返します。そうでない場合には
false を返します。
@param other 比較対象のオブジェクトを指定します。
//emlist[文字列][ruby]{
s = "abc"
m1 = s.match("a")
m2 = s.match("b")
m1 == m2 # => false
m2 = s.match("a")
m1 == m2 # => true
//}
//emlist[正規表現][ruby]{
r = /abc/
m1 = r.mat... -
Kernel
. # exit(status = true) -> () (151.0) -
Rubyプログラムの実行を終了します。status として整 数が与えられた場合、その値を Ruby コマンドの終了ステータスとします。 デフォルトの終了ステータスは 0(正常終了)です。
Rubyプログラムの実行を終了します。status として整
数が与えられた場合、その値を Ruby コマンドの終了ステータスとします。
デフォルトの終了ステータスは 0(正常終了)です。
status が true の場合 0、 false の場合 1 を引数に指定したとみなされます。この値はCレベルの定数
EXIT_SUCCESS、EXIT_FAILURE の値なので、正確には環境依存です。
exit は例外 SystemExit を発生させ
ることによってプログラムの実行を終了させますので、
必要に応じて begin 節で捕捉することができます。
@param status 終了... -
Object
# taint -> self (151.0) -
このメソッドは Ruby 2.7 から deprecated で、Ruby 3.2 で削除予定です。
このメソッドは Ruby 2.7 から deprecated で、Ruby 3.2 で削除予定です。
オブジェクトの「汚染マーク」をセットします。
環境変数(ENVで得られる文字列)など一部のオブジェクトは最初から汚染されています。
オブジェクトの汚染に関してはspec/safelevelを参照してください。
//emlist[][ruby]{
$SAFE = 1
some = "puts '@&%&(#!'"
p some.tainted? #=> false
eval(some) #=> @&%&(#!
some.taint
p some.tainted? #=> true
e... -
Object
# clone(freeze: nil) -> object (145.0) -
オブジェクトの複製を作成して返します。
オブジェクトの複製を作成して返します。
dup はオブジェクトの内容, taint 情報をコピーし、
clone はそれに加えて freeze, 特異メソッドなどの情報も含めた完全な複製を作成します。
clone や dup は浅い(shallow)コピーであることに注意してください。後述。
TrueClass, FalseClass, NilClass, Symbol, そして Numeric クラスのインスタンスなど一部のオブジェクトは複製ではなくインスタンス自身を返します。
@param freeze true を指定すると freeze されたコピーを返します。
... -
Object
# dup -> object (145.0) -
オブジェクトの複製を作成して返します。
オブジェクトの複製を作成して返します。
dup はオブジェクトの内容, taint 情報をコピーし、
clone はそれに加えて freeze, 特異メソッドなどの情報も含めた完全な複製を作成します。
clone や dup は浅い(shallow)コピーであることに注意してください。後述。
TrueClass, FalseClass, NilClass, Symbol, そして Numeric クラスのインスタンスなど一部のオブジェクトは複製ではなくインスタンス自身を返します。
@param freeze true を指定すると freeze されたコピーを返します。
... -
Object
# methods(include _ inherited = true) -> [Symbol] (145.0) -
そのオブジェクトに対して呼び出せるメソッド名の一覧を返します。 このメソッドは public メソッドおよび protected メソッドの名前を返します。
そのオブジェクトに対して呼び出せるメソッド名の一覧を返します。
このメソッドは public メソッドおよび protected メソッドの名前を返します。
ただし特別に、引数が偽の時は Object#singleton_methods(false) と同じになっています。
@param include_inherited 引数が偽の時は Object#singleton_methods(false) と同じになります。
//emlist[例1][ruby]{
class Parent
private; def private_parent() end
protecte... -
Range
# cover?(obj) -> bool (145.0) -
obj が範囲内に含まれている時に true を返します。
obj が範囲内に含まれている時に true を返します。
Range#include? と異なり <=> メソッドによる演算により範囲内かどうかを判定します。
Range#include? は原則として離散値を扱い、
Range#cover? は連続値を扱います。
(数値については、例外として Range#include? も連続的に扱います。)
Range#exclude_end?がfalseなら「begin <= obj <= end」を、
trueなら「begin <= obj < end」を意味します。
@param obj 比較対象のオブジェクトを指定します。
//eml... -
TracePoint
# enable -> bool (145.0) -
self のトレースを有効にします。
self のトレースを有効にします。
実行前の TracePoint#enabled? を返します。(トレースが既に有効であっ
た場合は true を返します。そうでなければ false を返します)
//emlist[例][ruby]{
trace.enabled? # => false
trace.enable # => false (実行前の状態)
# トレースが有効
trace.enabled? # => true
trace.enable # => true (実行前の状態)
# 引き続きトレースが有効
//}
ブロックが与えられた場合、ブロック内でのみ... -
TracePoint
# enable { . . . } -> object (145.0) -
self のトレースを有効にします。
self のトレースを有効にします。
実行前の TracePoint#enabled? を返します。(トレースが既に有効であっ
た場合は true を返します。そうでなければ false を返します)
//emlist[例][ruby]{
trace.enabled? # => false
trace.enable # => false (実行前の状態)
# トレースが有効
trace.enabled? # => true
trace.enable # => true (実行前の状態)
# 引き続きトレースが有効
//}
ブロックが与えられた場合、ブロック内でのみ... -
rake (145.0)
-
Rake というコマンドラインツールを扱うライブラリです。
Rake というコマンドラインツールを扱うライブラリです。
=== Rake とは
Rake は Make によく似た機能を持つ Ruby で書かれたシンプルなビルドツールです。
Rake は以下のような特徴を持っています。
* Rakefile (Rake における Makefile) は標準的な Ruby の文法で書くことができます。
XML ファイルを編集する必要はありませんし、Makefile の風変わりな文法 (タブだっけ?スペースだっけ?) に頭を悩ませる必要もありません。
* ユーザは必須条件をタスクに指定できます。
* Rake は暗黙のタスクを合成... -
Kernel
. # require(feature) -> bool (139.0) -
Ruby ライブラリ feature をロードします。拡張子補完を行い、 同じファイルの複数回ロードはしません。
Ruby ライブラリ feature をロードします。拡張子補完を行い、
同じファイルの複数回ロードはしません。
feature が絶対パスのときは feature からロードします。
feature が相対パスのときは組み込み変数 $:
に示されるパスを順番に探し、最初に見付かったファイルを
ロードします。このとき、$: の要素文字列の先頭文字が
`~' (チルダ) だと、環境変数 HOME の値に展開されます。
また `~USER' はそのユーザのホームディレクトリに展開されます。
Ruby ライブラリとは Ruby スクリプト (*.rb) か拡張ライブラリ
(*.so,*.o,*... -
Module
# private _ method _ defined?(name , inherit=true) -> bool (139.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... -
String
# eql?(other) -> bool (139.0) -
文字列の内容が文字列 other の内容と等しいときに true を返します。 等しくなければ false を返します。
文字列の内容が文字列 other の内容と等しいときに true を返します。
等しくなければ false を返します。
このメソッドは文字列の内容を比較します。
同一のオブジェクトかどうかを比較するわけではありません。
つまり、"string".eql?(str) という式を実行した場合には、
str が "string" という内容の文字列でありさえすれば常に true を返します。
同一のオブジェクトであるかどうかを判定したいときは
Object#equal? を使ってください。
アルファベットの大文字小文字を無視して比較したい場合は、String#upcase,
String#d... -
json
/ add / core (133.0) -
Ruby のコアクラスに JSON 形式の文字列に変換するメソッドや JSON 形式の文字列から Ruby のオブジェクトに変換するメソッドを定義します。
Ruby のコアクラスに JSON 形式の文字列に変換するメソッドや
JSON 形式の文字列から Ruby のオブジェクトに変換するメソッドを定義します。
json/add/core サブライブラリを require すると、例えば Range オブ
ジェクトを JSON 形式の文字列にしたり、Range オブジェクトに戻す事
ができます。
//emlist[例][ruby]{
require 'json/add/core'
(1..10).to_json # => "{\"json_class\":\"Range\",\"a\":[1,10,false]}"
JSO... -
OptionParser
# on(long , klass = String , desc = "") {|v| . . . } -> self (130.0) -
オプションを取り扱うためのブロックを自身に登録します。 ブロックはコマンドラインのパース時に、オプションが指定されていれば呼ばれます。
オプションを取り扱うためのブロックを自身に登録します。
ブロックはコマンドラインのパース時に、オプションが指定されていれば呼ばれます。
klass にはクラスを与えます。どのようなクラスを受け付けるかは、
以下の「デフォルトで利用可能な引数クラス」を参照して下さい。
OptionParser.accept や OptionParser#accept によって、受け付け
るクラスを増やすことができます。登録されていないクラスが指定された
場合、例外 ArgumentError を投げます。
また、登録されたクラスであっても引数が変換できないものである場合、例外
OptionParser::I...