ライブラリ
- English (1)
- ビルトイン (127)
- benchmark (2)
- bigdecimal (5)
-
bigdecimal
/ util (1) - csv (4)
- date (3)
- digest (3)
- erb (1)
- fiddle (14)
-
fiddle
/ import (1) - ipaddr (3)
-
irb
/ context (5) -
irb
/ inspector (1) - json (1)
- matrix (2)
- monitor (1)
- observer (1)
- openssl (40)
- optparse (4)
- ostruct (4)
- pathname (70)
-
racc
/ parser (1) - rake (10)
- readline (1)
- resolv (3)
- rexml (1)
-
rexml
/ document (33) -
rubygems
/ package / tar _ header (1) -
rubygems
/ platform (1) -
rubygems
/ requirement (1) -
rubygems
/ version (2) - scanf (2)
- set (4)
-
shell
/ command-processor (1) -
shell
/ filter (2) - socket (4)
- stringio (2)
- uri (10)
-
webrick
/ httprequest (1) -
webrick
/ httpresponse (7) -
webrick
/ httputils (1) -
webrick
/ httpversion (1) -
webrick
/ log (6) -
win32
/ registry (2) - win32ole (12)
- zlib (2)
クラス
-
ARGF
. class (3) - Addrinfo (2)
- Array (7)
- BasicObject (1)
-
Benchmark
:: Tms (1) - BigDecimal (6)
-
CGI
:: Cookie (1) -
CSV
:: Row (2) -
CSV
:: Table (2) - Complex (1)
- Date (1)
- DateTime (2)
-
Digest
:: Base (2) - ERB (1)
- Encoding (2)
-
Enumerator
:: Lazy (2) - Exception (2)
- FalseClass (2)
-
Fiddle
:: Pointer (12) - File (1)
- Float (4)
-
Gem
:: Package :: TarHeader (1) -
Gem
:: Platform (1) -
Gem
:: Requirement (1) -
Gem
:: Version (2) - Hash (10)
- IO (3)
- IPAddr (3)
-
IRB
:: Context (5) -
IRB
:: Inspector (1) - Integer (2)
- MatchData (1)
- Matrix (1)
- Method (2)
- Module (3)
- NameError (1)
- NilClass (1)
- Object (8)
-
OpenSSL
:: BN (4) -
OpenSSL
:: Config (1) -
OpenSSL
:: HMAC (3) -
OpenSSL
:: Netscape :: SPKI (2) -
OpenSSL
:: PKCS7 (2) -
OpenSSL
:: PKey :: DH (3) -
OpenSSL
:: PKey :: DSA (6) -
OpenSSL
:: PKey :: RSA (6) -
OpenSSL
:: X509 :: CRL (2) -
OpenSSL
:: X509 :: Certificate (2) -
OpenSSL
:: X509 :: Extension (1) -
OpenSSL
:: X509 :: Name (5) -
OpenSSL
:: X509 :: Request (2) - OpenStruct (4)
- OptionParser (2)
-
OptionParser
:: ParseError (2) - Pathname (70)
- Proc (2)
-
Process
:: Status (1) -
REXML
:: Attribute (2) -
REXML
:: CData (3) -
REXML
:: Child (2) -
REXML
:: Comment (2) -
REXML
:: Declaration (1) -
REXML
:: DocType (1) -
REXML
:: Element (6) -
REXML
:: Elements (5) -
REXML
:: Entity (2) -
REXML
:: ExternalEntity (1) -
REXML
:: NotationDecl (1) -
REXML
:: ParseException (1) -
REXML
:: Text (4) -
Racc
:: Parser (1) -
Rake
:: EarlyTime (1) -
Rake
:: FileList (1) -
Rake
:: InvocationChain (3) -
Rake
:: InvocationChain :: EmptyInvocationChain (1) -
Rake
:: Task (1) -
Rake
:: TaskArguments (2) - Range (3)
- Rational (2)
- Regexp (2)
-
Resolv
:: DNS :: Name (1) -
Resolv
:: IPv4 (1) -
Resolv
:: IPv6 (1) -
Scanf
:: FormatSpecifier (1) -
Scanf
:: FormatString (1) - Set (2)
-
Shell
:: CommandProcessor (1) -
Shell
:: Filter (2) -
Socket
:: Option (2) - String (9)
- StringIO (2)
- Struct (2)
- Symbol (25)
- Thread (4)
-
Thread
:: Backtrace :: Location (2) - Time (1)
- TrueClass (1)
-
URI
:: FTP (2) -
URI
:: Generic (6) -
URI
:: LDAP (2) - UnboundMethod (3)
- UncaughtThrowError (1)
- Vector (1)
-
WEBrick
:: BasicLog (6) -
WEBrick
:: Cookie (1) -
WEBrick
:: HTTPRequest (1) -
WEBrick
:: HTTPResponse (7) -
WEBrick
:: HTTPUtils :: FormData (1) -
WEBrick
:: HTTPVersion (1) -
WIN32OLE
_ EVENT (1) -
WIN32OLE
_ METHOD (2) -
WIN32OLE
_ PARAM (2) -
WIN32OLE
_ TYPE (3) -
WIN32OLE
_ TYPELIB (2) -
WIN32OLE
_ VARIABLE (2) -
Win32
:: Registry (2) -
Zlib
:: GzipWriter (2)
モジュール
- Benchmark (1)
- Enumerable (2)
-
Fiddle
:: Importer (1) -
JSON
:: Generator :: GeneratorMethods :: Object (1) - Kernel (8)
-
OpenSSL
:: Buffering (1) -
REXML
:: Node (1)
オブジェクト
- ENV (1)
-
Readline
:: HISTORY (1) - main (2)
キーワード
-
$ ERROR _ INFO (1) - % (2)
- +@ (1)
- -@ (1)
-
1
. 6 . 8から1 . 8 . 0への変更点(まとめ) (1) - << (5)
- =~ (1)
- Base (1)
- BlockCaller (1)
- COMPAT (1)
- Closure (1)
- ExternalEntity (1)
- InvocationChain (1)
- Location (1)
- MULTILINE (1)
- MonitorMixin (1)
-
NEWS for Ruby 2
. 0 . 0 (1) -
NEWS for Ruby 2
. 5 . 0 (1) - NotationDecl (1)
- Numeric (1)
- ONELINE (1)
- Observable (1)
- RFC2253 (1)
- String (1)
- Symbol (1)
- [] (7)
- []= (4)
-
_ _ to _ s _ _ (1) - add (1)
-
add
_ delegate _ command _ to _ shell (1) -
add
_ element (1) -
add
_ namespace (2) -
add
_ trace _ func (1) -
all
_ symbols (1) - append (1)
- atime (1)
-
avalue
_ to _ svalue (1) - basename (1)
- bigdecimal (1)
-
bigdecimal
/ math (1) - bind (1)
- binread (1)
- binwrite (1)
- birthtime (1)
- blockdev? (1)
- body= (1)
- build (4)
- capitalize (1)
- chardev? (1)
- chmod (1)
- chown (1)
- chunked= (1)
-
content
_ length (1) -
content
_ length= (1) - ctime (1)
- data (1)
- debug (1)
-
def
_ inspector (1) -
define
_ singleton _ method (2) - delete (1)
-
delete
_ all (1) -
delete
_ element (1) -
delete
_ namespace (1) - directory? (1)
- dirname (1)
- downcase (1)
-
each
_ entry (1) -
each
_ line (2) - empty? (1)
- entities (1)
- error (1)
- executable? (1)
-
executable
_ real? (1) - exist? (1)
- export (5)
- extname (1)
- fatal (1)
- file? (1)
- find (2)
- fnmatch (1)
- fnmatch? (1)
- format (1)
- ftype (1)
- grep (1)
-
grep
_ v (1) - grpowned? (1)
- handler= (1)
- help (1)
- hex (1)
- hexdigest (2)
- hostname= (1)
-
http
_ version (1) - id2name (1)
- info (1)
- inspect (23)
- inspect? (1)
-
inspect
_ mode= (1) - intern (1)
- irb (1)
-
irb
/ completion (1) - join (1)
- lchmod (2)
- lchown (1)
- length (1)
- lstat (1)
-
make
_ link (1) -
make
_ symlink (1) - match (1)
- measure (1)
- merge! (1)
-
method
_ missing (1) - mkdir (1)
- mkpath (1)
- modulo (1)
- mtime (1)
-
mvalue
_ to _ svalue (1) - name (8)
- new (7)
- next (1)
-
next
_ float (1) -
next
_ sibling= (1) - normalize (1)
- normalize! (1)
- oct (1)
- open (2)
- opendir (2)
-
optparse
/ date (1) - owned? (1)
- owner (1)
- parse (1)
- pipe? (1)
-
prev
_ float (1) -
previous
_ sibling= (1) - print (2)
-
proc
_ to _ s (1) - profile (1)
- ptr (1)
- puts (1)
-
rb
_ any _ to _ s (1) -
rb
_ ary _ pop (1) -
rb
_ ary _ to _ s (1) -
rb
_ class _ path (1) -
rb
_ mod _ to _ s (1) - read (1)
- readable? (1)
-
readable
_ real? (1) - readlines (1)
- readlink (1)
- ref (1)
- remainder (1)
- rename (1)
- resolv (1)
- rmdir (1)
- rmtree (1)
- rss (1)
-
ruby 1
. 6 feature (1) -
set
_ trace _ func (2) - setgid? (1)
- setuid? (1)
- size (2)
- size? (1)
- slice (5)
- socket? (1)
- split (1)
- sprintf (1)
- sprintf フォーマット (1)
- src (1)
- stat (1)
- sticky? (1)
- string (1)
- strptime (1)
- succ (2)
- swapcase (1)
- symlink? (1)
- sysopen (1)
- syswrite (1)
- text= (1)
- then (2)
-
to
_ csv (2) -
to
_ digits (1) -
to
_ f (1) -
to
_ h (2) -
to
_ i (1) -
to
_ json (1) -
to
_ path (1) -
to
_ pem (10) -
to
_ proc (1) -
to
_ set (2) -
to
_ sockaddr (1) -
to
_ str (4) -
to
_ string (2) -
to
_ sym (2) -
token
_ to _ str (1) - tracer (1)
-
transform
_ keys (2) -
transform
_ keys! (2) -
transform
_ values (2) -
transform
_ values! (2) - truncate (1)
- uniq (2)
- uniq! (2)
- upcase (1)
- userinfo= (1)
- utime (1)
- value (2)
- value= (1)
- version (1)
- warn (2)
-
world
_ readable? (1) -
world
_ writable? (1) - writable? (1)
-
writable
_ real? (1) - write (6)
-
yield
_ self (2) - zero? (1)
- | (1)
- メソッド呼び出し(super・ブロック付き・yield) (1)
検索結果
先頭5件
-
Pathname
# owned? -> bool (49.0) -
FileTest.owned?(self.to_s) と同じです。
FileTest.owned?(self.to_s) と同じです。
@see FileTest.#owned? -
Pathname
# pipe? -> bool (49.0) -
FileTest.pipe?(self.to_s) と同じです。
FileTest.pipe?(self.to_s) と同じです。
@see FileTest.#pipe? -
Pathname
# read(*args) -> String | nil (49.0) -
IO.read(self.to_s, *args)と同じです。
IO.read(self.to_s, *args)と同じです。
@see IO.read -
Pathname
# readable? -> bool (49.0) -
FileTest.readable?(self.to_s) と同じです。
FileTest.readable?(self.to_s) と同じです。
@see FileTest.#readable? -
Pathname
# readable _ real? -> bool (49.0) -
FileTest.readable_real?(self.to_s) と同じです。
FileTest.readable_real?(self.to_s) と同じです。
@see FileTest.#readable_real? -
Pathname
# readlines(*args) -> [String] (49.0) -
IO.readlines(self.to_s, *args)と同じです。
IO.readlines(self.to_s, *args)と同じです。
@see IO.readlines -
Pathname
# readlink -> Pathname (49.0) -
Pathname.new(File.readlink(self.to_s)) と同じです。
Pathname.new(File.readlink(self.to_s)) と同じです。
@see File.readlink -
Pathname
# rename(to) -> 0 (49.0) -
File.rename(self.to_s, to) と同じです。
File.rename(self.to_s, to) と同じです。
@param to ファイル名を表す文字列を指定します。
@see File.rename -
Pathname
# rmdir -> 0 (49.0) -
Dir.rmdir(self.to_s) と同じです。
Dir.rmdir(self.to_s) と同じです。
@see Dir.rmdir -
Pathname
# rmtree -> nil (49.0) -
FileUtils.rm_r(self.to_s) と同じです。
FileUtils.rm_r(self.to_s) と同じです。
@see FileUtils.#rm_r -
Pathname
# setgid? -> bool (49.0) -
FileTest.setgid?(self.to_s) と同じです。
FileTest.setgid?(self.to_s) と同じです。
@see FileTest.#setgid? -
Pathname
# setuid? -> bool (49.0) -
FileTest.setuid?(self.to_s) と同じです。
FileTest.setuid?(self.to_s) と同じです。
@see FileTest.#setuid? -
Pathname
# size -> Integer (49.0) -
FileTest.size(self.to_s) と同じです。
FileTest.size(self.to_s) と同じです。
@see FileTest.#size -
Pathname
# size? -> bool (49.0) -
FileTest.size?(self.to_s) と同じです。
FileTest.size?(self.to_s) と同じです。
@see FileTest.#size? -
Pathname
# socket? -> bool (49.0) -
FileTest.socket?(self.to_s) と同じです。
FileTest.socket?(self.to_s) と同じです。
@see FileTest.#socket? -
Pathname
# split -> Array (49.0) -
File.split(self.to_s) と同じです。
File.split(self.to_s) と同じです。
//emlist[例][ruby]{
require "pathname"
pathname = Pathname("/path/to/sample")
pathname.split # => [#<Pathname:/path/to>, #<Pathname:sample>]
//}
@see File.split -
Pathname
# stat -> File :: Stat (49.0) -
File.stat(self.to_s) と同じです。
File.stat(self.to_s) と同じです。
@see File.stat -
Pathname
# sticky? -> bool (49.0) -
FileTest.sticky?(self.to_s) と同じです。
FileTest.sticky?(self.to_s) と同じです。
@see FileTest.#sticky? -
Pathname
# symlink? -> bool (49.0) -
FileTest.symlink?(self.to_s) と同じです。
FileTest.symlink?(self.to_s) と同じです。
@see FileTest.#symlink? -
Pathname
# sysopen(*args) -> Integer (49.0) -
IO.sysopen(self.to_s, *args)と同じです。
IO.sysopen(self.to_s, *args)と同じです。
@see IO.sysopen -
Pathname
# truncate(length) -> 0 (49.0) -
File.truncate(self.to_s, length) と同じです。
File.truncate(self.to_s, length) と同じです。
@param length 変更したいサイズを整数で与えます。
@see File.truncate -
Pathname
# utime(atime , mtime) -> Integer (49.0) -
File.utime(atime, mtime, self.to_s) と同じです。
File.utime(atime, mtime, self.to_s) と同じです。
@param atime 最終アクセス時刻を Time か、起算時からの経過秒数を数値で指定します。
@param mtime 更新時刻を Time か、起算時からの経過秒数を数値で指定します。
@see File.utime -
Pathname
# world _ readable? -> bool (49.0) -
FileTest.world_readable?(self.to_s) と同じです。
FileTest.world_readable?(self.to_s) と同じです。
@see FileTest.#world_readable? -
Pathname
# world _ writable? -> bool (49.0) -
FileTest.world_writable?(self.to_s) と同じです。
FileTest.world_writable?(self.to_s) と同じです。
@see FileTest.#world_writable? -
Pathname
# writable? -> bool (49.0) -
FileTest.writable?(self.to_s) と同じです。
FileTest.writable?(self.to_s) と同じです。
@see FileTest.#writable? -
Pathname
# writable _ real? -> bool (49.0) -
FileTest.writable_real?(self.to_s) と同じです。
FileTest.writable_real?(self.to_s) と同じです。
@see FileTest.#writable_real? -
Pathname
# zero? -> bool (49.0) -
FileTest.zero?(self.to_s) と同じです。
FileTest.zero?(self.to_s) と同じです。
@see FileTest.#zero?
, Pathname#empty? -
StringIO
# write(*obj) -> Integer (49.0) -
自身に obj を書き込みます。obj が文字列でなければ to_s による文字列化を試みます。 書き込まれた文字列の長さを返します。
自身に obj を書き込みます。obj が文字列でなければ to_s による文字列化を試みます。
書き込まれた文字列の長さを返します。
全ての出力メソッドは、最終的に「write」という名のメソッドを呼び出すので、
このメソッドを置き換えることで出力関数の挙動を変更することができます。
@param obj 書き込みたいオブジェクトを指定します。
@raise IOError 自身が書き込み可能でない時に発生します。
//emlist[例][ruby]{
require "stringio"
a = StringIO.new("hoge", 'r+')
a.write("aaa") ... -
Thread
:: Backtrace :: Location # inspect -> String (49.0) -
Thread::Backtrace::Location#to_s の結果を人間が読みやすいような文 字列に変換したオブジェクトを返します。
Thread::Backtrace::Location#to_s の結果を人間が読みやすいような文
字列に変換したオブジェクトを返します。
//emlist[例][ruby]{
# foo.rb
class Foo
attr_accessor :locations
def initialize(skip)
@locations = caller_locations(skip)
end
end
Foo.new(0..2).locations.map do |call|
puts call.inspect
end
# => "path/to/foo.rb:5:in ... -
Zlib
:: GzipWriter # <<(str) -> self (49.0) -
str を出力します。str が文字列でない場合は to_s を用いて 文字列に変換します。
str を出力します。str が文字列でない場合は to_s を用いて
文字列に変換します。
@param str 出力したいオブジェクトを与えます。
require 'zlib'
filename='hoge1.gz'
fw = File.open(filename, "w")
Zlib::GzipWriter.wrap(fw, Zlib::BEST_COMPRESSION){|gz|
gz << "hoge" << "fuga"
}
fr = File.open(filename)
Zlib::GzipReader.wrap(fr){|gz|
... -
Module
# inspect -> String (40.0) -
モジュールやクラスの名前を文字列で返します。
モジュールやクラスの名前を文字列で返します。
このメソッドが返す「モジュール / クラスの名前」とは、
より正確には「クラスパス」を指します。
クラスパスとは、ネストしているモジュールすべてを
「::」を使って表示した名前のことです。
クラスパスの例としては「CGI::Session」「Net::HTTP」が挙げられます。
@return 名前のないモジュール / クラスに対しては、name は nil を、それ以外はオブジェクト ID の文字列を返します。
//emlist[例][ruby]{
module A
module B
end
p B.name #=> "A... -
Module
# name -> String | nil (40.0) -
モジュールやクラスの名前を文字列で返します。
モジュールやクラスの名前を文字列で返します。
このメソッドが返す「モジュール / クラスの名前」とは、
より正確には「クラスパス」を指します。
クラスパスとは、ネストしているモジュールすべてを
「::」を使って表示した名前のことです。
クラスパスの例としては「CGI::Session」「Net::HTTP」が挙げられます。
@return 名前のないモジュール / クラスに対しては、name は nil を、それ以外はオブジェクト ID の文字列を返します。
//emlist[例][ruby]{
module A
module B
end
p B.name #=> "A... -
ERB
# src -> String (37.0) -
変換した Ruby スクリプトを取得します。
変換した Ruby スクリプトを取得します。
//emlist[例][ruby]{
require 'erb'
erb = ERB.new("test1<%= @arg1%>\ntest2<%= @arg2%>\n\n")
puts erb.src
# #coding:UTF-8
# _erbout = +''; _erbout.<< "test1".freeze; _erbout.<<(( @arg1).to_s); _erbout.<< "\ntest2".freeze
# ; _erbout.<<(( @arg2).to_s); _erbout.<< "\n\n".freeze
#... -
Enumerator
:: Lazy # grep(pattern) {|item| . . . } -> Enumerator :: Lazy (37.0) -
Enumerable#grep と同じですが、配列ではなくEnumerator::Lazy を返します。
Enumerable#grep と同じですが、配列ではなくEnumerator::Lazy を返します。
//emlist[例][ruby]{
(100..Float::INFINITY).lazy.map(&:to_s).grep(/\A(\d)\1+\z/)
# => #<Enumerator::Lazy: #<Enumerator::Lazy: #<Enumerator::Lazy: 100..Infinity>:map>:grep(/\A(\d)\1+\z/)>
(100..Float::INFINITY).lazy.map(&:to_s).grep(/\A(\d)\1+\z/).... -
Enumerator
:: Lazy # grep _ v(pattern) {|item| . . . } -> Enumerator :: Lazy (37.0) -
Enumerable#grep_v と同じですが、配列ではなくEnumerator::Lazy を返します。
Enumerable#grep_v と同じですが、配列ではなくEnumerator::Lazy を返します。
//emlist[例][ruby]{
(100..Float::INFINITY).lazy.map(&:to_s).grep_v(/(\d).*\1/)
# => #<Enumerator::Lazy: #<Enumerator::Lazy: #<Enumerator::Lazy: 100..Infinity>:map>:grep_v(/(\d).*\1/)>
(100..Float::INFINITY).lazy.map(&:to_s).grep_v(/(\d).*\1/).t... -
Fiddle
:: Importer # bind(signature , *opts) { . . . } -> Fiddle :: Function (37.0) -
Ruby のブロックを C の関数で wrap し、その関数をモジュールに インポートします。
Ruby のブロックを C の関数で wrap し、その関数をモジュールに
インポートします。
これでインポートされた関数はモジュール関数として定義されます。
また、Fiddle::Importer#[] で Fiddle::Function オブジェクトとして
取り出すことができます。
signature で関数の名前とシネグチャを指定します。例えば
"int compare(void*, void*)" のように指定します。
opts には :stdcall もしくは :cdecl を渡すことができ、
呼出規約を明示することができます。
@return インポートした関数を表す ... -
Fiddle
:: Pointer # +@ -> Fiddle :: Pointer (37.0) -
自身の指す値を Pointer にして返します。
自身の指す値を Pointer にして返します。
自身の指す値はポインタであると仮定します。
C 言語におけるポインタのポインタに対する間接参照 *p と同じです。
この返り値には、free 関数がセットされず、size は 0 とされます。
例:
require 'fiddle'
s = 'abc'
cptr = Fiddle::Pointer[s]
cref = cptr.ref
p cref.to_s(4).unpack('l*')[0] #=> 136121648
p cptr.to_i #=> 136121648
... -
Fiddle
:: Pointer # -@ -> Fiddle :: Pointer (37.0) -
自身を指す Pointer オブジェクトを返します。 C 言語におけるポインタへのアドレス演算子の適用 &p と同じです。
自身を指す Pointer オブジェクトを返します。
C 言語におけるポインタへのアドレス演算子の適用 &p と同じです。
この返り値には、free 関数がセットされず、size は 0 とされます。
例:
require 'fiddle'
s = 'abc'
cptr = Fiddle::Pointer[s]
cref = cptr.ref
p cref.to_s(4).unpack('l*')[0] #=> 136121648
p cptr.to_i #=> 136121648
p cref.ptr.to_s ... -
Fiddle
:: Pointer # ptr -> Fiddle :: Pointer (37.0) -
自身の指す値を Pointer にして返します。
自身の指す値を Pointer にして返します。
自身の指す値はポインタであると仮定します。
C 言語におけるポインタのポインタに対する間接参照 *p と同じです。
この返り値には、free 関数がセットされず、size は 0 とされます。
例:
require 'fiddle'
s = 'abc'
cptr = Fiddle::Pointer[s]
cref = cptr.ref
p cref.to_s(4).unpack('l*')[0] #=> 136121648
p cptr.to_i #=> 136121648
... -
Fiddle
:: Pointer # ref -> Fiddle :: Pointer (37.0) -
自身を指す Pointer オブジェクトを返します。 C 言語におけるポインタへのアドレス演算子の適用 &p と同じです。
自身を指す Pointer オブジェクトを返します。
C 言語におけるポインタへのアドレス演算子の適用 &p と同じです。
この返り値には、free 関数がセットされず、size は 0 とされます。
例:
require 'fiddle'
s = 'abc'
cptr = Fiddle::Pointer[s]
cref = cptr.ref
p cref.to_s(4).unpack('l*')[0] #=> 136121648
p cptr.to_i #=> 136121648
p cref.ptr.to_s ... -
File
. lchmod(mode , *filename) -> Integer (37.0) -
File.chmod と同様ですが、シンボリックリンクに関してリンクそのものの モードを変更します。
File.chmod と同様ですが、シンボリックリンクに関してリンクそのものの
モードを変更します。
@param filename ファイル名を表す文字列を指定します。
@param mode chmod(2) と同様に整数で指定します。
@raise NotImplementedError lchmod(2) を実装していないシステムでこのメソッドを呼び出すと発生します。
@raise Errno::EXXX モードの変更に失敗した場合に発生します。
//emlist[例][ruby]{
IO.write("testfile", "test")
File.symlink("te... -
Hash
# transform _ keys -> Enumerator (37.0) -
すべてのキーに対してブロックを呼び出した結果で置き換えたハッシュを返します。 値は変化しません。
すべてのキーに対してブロックを呼び出した結果で置き換えたハッシュを返します。
値は変化しません。
//emlist[例][ruby]{
h = { a: 1, b: 2, c: 3 }
h.transform_keys {|k| k.to_s } # => {"a"=>1, "b"=>2, "c"=>3}
h.transform_keys(&:to_s) # => {"a"=>1, "b"=>2, "c"=>3}
h.transform_keys.with_index {|k, i| "#{k}.#{i}" }
... -
Hash
# transform _ keys {|key| . . . } -> Hash (37.0) -
すべてのキーに対してブロックを呼び出した結果で置き換えたハッシュを返します。 値は変化しません。
すべてのキーに対してブロックを呼び出した結果で置き換えたハッシュを返します。
値は変化しません。
//emlist[例][ruby]{
h = { a: 1, b: 2, c: 3 }
h.transform_keys {|k| k.to_s } # => {"a"=>1, "b"=>2, "c"=>3}
h.transform_keys(&:to_s) # => {"a"=>1, "b"=>2, "c"=>3}
h.transform_keys.with_index {|k, i| "#{k}.#{i}" }
... -
IRB
:: Context # inspect _ mode=(opt) (37.0) -
実行結果の出力方式を opt に設定します。
実行結果の出力方式を opt に設定します。
@param opt 以下のいずれかを指定します。
: false, :to_s, :raw
出力結果を to_s したものを表示します。
: true, :p, :inspect
出力結果を inspect したものを表示します。
: :pp, :pretty_inspect
出力結果を pretty_inspect したものを表示します。
: :yaml, :YAML
出力結果を YAML 形式にしたものを表示します。
: :marshal, :Marshal, :MARSHAL, Marshal
出力結果を Marsh... -
MonitorMixin (37.0)
-
スレッドの同期機構としてのモニター機能を提供するモジュールです。
スレッドの同期機構としてのモニター機能を提供するモジュールです。
クラスに Module#include したり、オブジェクトに
Object#extend したりすることでそのクラス/オブジェクトに
モニタ機能を追加します。
=== 例
//emlist[消費者、生産者問題の例][ruby]{
require 'monitor'
buf = []
buf.extend(MonitorMixin) # 配列にモニタ機能を追加
empty_cond = buf.new_cond # 配列が空であるかないかを通知する条件変数
# consumer
Thread.start do
lo... -
NEWS for Ruby 2
. 5 . 0 (37.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
* 文字列の式展... -
Observable (37.0)
-
Observer パターンを提供するモジュールです。
Observer パターンを提供するモジュールです。
Mix-in により Observer パターンを提供します。
Observable モジュールを include したクラスは
Observable#changed メソッドにより更新フラグを立て、
Observable#notify_observers が呼び出されると
更新フラグが立っている場合はオブザーバに通知します
(オブザーバの update メソッドを呼び出す)。
Observable#notify_observers の引数は
そのままオブザーバの update メソッドに渡されます。
=== サンプルコード
re... -
OpenSSL
:: BN . new(str , base=10) -> OpenSSL :: BN (37.0) -
文字列を多倍長整数オブジェクト(OpenSSL::BN)を生成します。
文字列を多倍長整数オブジェクト(OpenSSL::BN)を生成します。
base で、変換方法(基数)を指定します。
デフォルトは 10 で、他に 16, 2, 0 を指定できます。
10 引数の文字列を 10進数とみなして、変換します。
16 引数の文字列を 16進数とみなして、変換します。
2 引数の文字列を big-endian の符号無し整数のバイナリ列とみなして、変換します。
0 引数の文字列を MPI形式の文字列(バイト列)とみなして、変換します。
(最初の4byteはbig-endianでデータ長を表わし、その後にそのデータ長のバイト... -
REXML
:: CData . new(text , respect _ whitespace = true , parent = nil) -> REXML :: CData (37.0) -
text をテキストとして持つ CData オブジェクトを生成します。
text をテキストとして持つ CData オブジェクトを生成します。
respect_whitespace に真を指定すると、text に含まれる空白文字は保存されます。
偽の場合は空白はまとめられます。
@param text テキスト文字列
@param respect_whitespace 空白を保存するかどうかを決める真偽値
@param parent 親ノード
//emlist[][ruby]{
require 'rexml/document'
doc = REXML::Document.new(<<EOS)
<root />
EOS
doc.root.add(REXML::... -
REXML
:: DocType # entities -> { String => REXML :: Entity } (37.0) -
DTD で宣言されている実体の集合を Hash で返します。
DTD で宣言されている実体の集合を Hash で返します。
返される Hash は実体参照名をキーとし、対応する REXML::Entity オブジェクト
を値とするハッシュテーブルです。
これには、XML のデフォルトの実体(gt, lt, quot, apos)も含まれています。
//emlist[][ruby]{
doctype = REXML::Document.new(<<EOS).doctype
<!DOCTYPE foo [
<!ENTITY bar "barbarbarbar">
]>
EOS
p doctype.entities # => { "gt" => #... -
REXML
:: Element # add _ namespace(prefix , uri) -> self (37.0) -
名前空間を要素に追加します。
名前空間を要素に追加します。
引数が2個の場合は prefix と uri を指定します。
引数が1個の場合はデフォルトの namespace の uri を指定します。
既に同じ prefix が存在する場合はそれが上書きされます。
@param prefix 名前空間の prefix
@param uri 名前空間の uri
//emlist[][ruby]{
require 'rexml/document'
a = REXML::Element.new("a")
a.add_namespace("xmlns:foo", "bar" )
a.add_namespace("foo",... -
REXML
:: Element # add _ namespace(uri) (37.0) -
名前空間を要素に追加します。
名前空間を要素に追加します。
引数が2個の場合は prefix と uri を指定します。
引数が1個の場合はデフォルトの namespace の uri を指定します。
既に同じ prefix が存在する場合はそれが上書きされます。
@param prefix 名前空間の prefix
@param uri 名前空間の uri
//emlist[][ruby]{
require 'rexml/document'
a = REXML::Element.new("a")
a.add_namespace("xmlns:foo", "bar" )
a.add_namespace("foo",... -
REXML
:: Element # delete _ namespace(namespace = "xmlns") -> self (37.0) -
名前空間を要素から削除します。
名前空間を要素から削除します。
削除可能な名前空間はそのノードで宣言されているもののみです。
上位の要素で宣言されているものは削除できません。
引数を省略した場合はデフォルトの名前空間を削除します。
@param namespace 削除する名前空間の prefix
//emlist[][ruby]{
require 'rexml/document'
doc = REXML::Document.new "<a xmlns:foo='bar' xmlns='twiddle'/>"
doc.root.delete_namespace
doc.to_s # => "<a xmlns:foo=... -
REXML
:: Elements # <<(element = nil) -> REXML :: Element (37.0) -
要素 element を追加します。
要素 element を追加します。
element には文字列もしくは REXML::Element オブジェクトを
指定します。文字列を指定した場合には REXML::Element.new(element)
で生成される要素を追加します。
element を省略した場合は、空の要素が追加されます。
追加された要素が返されます。
@param element 追加する要素
//emlist[][ruby]{
require 'rexml/document'
a = REXML::Element.new('a')
a.elements.add(REXML::Element.new... -
REXML
:: Elements # add(element = nil) -> REXML :: Element (37.0) -
要素 element を追加します。
要素 element を追加します。
element には文字列もしくは REXML::Element オブジェクトを
指定します。文字列を指定した場合には REXML::Element.new(element)
で生成される要素を追加します。
element を省略した場合は、空の要素が追加されます。
追加された要素が返されます。
@param element 追加する要素
//emlist[][ruby]{
require 'rexml/document'
a = REXML::Element.new('a')
a.elements.add(REXML::Element.new... -
REXML
:: Text # value -> String (37.0) -
テキストの内容を非正規化(すべての実体をアンエスケープ)された状態で返します。
テキストの内容を非正規化(すべての実体をアンエスケープ)された状態で返します。
このメソッドの返り値では raw モードや entity_filter は無視されます。
@see REXML::Text#raw, REXML::Text#to_s
//emlist[][ruby]{
require 'rexml/document'
t = REXML::Text.new("< & foobar", false, nil, false)
t.to_s # => "< & foobar"
t.value # => "< & foobar"
//} -
REXML
:: Text # value=(val) (37.0) -
テキストの内容を val に変更します。
テキストの内容を val に変更します。
val には非正規化された(エスケープされていない)文字列を渡さなければ
なりません。
//emlist[][ruby]{
require 'rexml/document'
e = REXML::Element.new("a")
e.add_text("foo")
e[0].value = "bar"
e.to_s # => "<a>bar</a>"
e[0].value = "<a>"
e.to_s # => "<a><a></a>"
//} -
Rake
:: InvocationChain . new(task _ name , tail) (37.0) -
与えられたタスク名と一つ前の Rake::InvocationChain を用いて自身を初期化します。
与えられたタスク名と一つ前の Rake::InvocationChain を用いて自身を初期化します。
@param task_name タスク名を指定します。
@param tail 一つ前の Rake::InvocationChain を指定します。
//emlist[][ruby]{
# Rakefile での記載例とする
task default: :test_rake_app
task :test_rake_app do
tail = Rake::InvocationChain.new("task_a", Rake::InvocationChain::EMPTY)
... -
Range
. new(first , last , exclude _ end = false) -> Range (37.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(... -
Shell
:: Filter # |(filter) -> object (37.0) -
パイプ結合を filter に対して行います。
パイプ結合を filter に対して行います。
@param filter Shell::Filter オブジェクトを指定します。
@return filter を返します。
使用例
require 'shell'
Shell.def_system_command("tail")
Shell.def_system_command("head")
Shell.def_system_command("wc")
sh = Shell.new
sh.transact {
i = 1
while i <= (cat("/etc/passwd") | wc(... -
String
# intern -> Symbol (37.0) -
文字列に対応するシンボル値 Symbol を返します。
文字列に対応するシンボル値 Symbol を返します。
なお、このメソッドの逆にシンボルに対応する文字列を得るには
Symbol#to_s または Symbol#id2name を使います。
シンボル文字列にはヌルキャラクタ("\0")、空の文字列の使用も可能です。
//emlist[例][ruby]{
p "foo".intern # => :foo
p "foo".intern.to_s == "foo" # => true
//} -
Symbol
. all _ symbols -> [Symbol] (37.0) -
定義済みの全てのシンボルオブジェクトの配列を返します。
定義済みの全てのシンボルオブジェクトの配列を返します。
p Symbol.all_symbols #=> [:RUBY_PLATFORM, :RUBY_VERSION, ...]
リテラルで表記したシンボルのうち、コンパイル時に値が決まるものはその時に生成されます。
それ以外の式展開を含むリテラルや、メソッドで表記されたものは式の評価時に生成されます。
(何にも使われないシンボルは最適化により生成されないことがあります)
def number
'make_3'
end
p Symbol.all_symbols.select{|sym|sym.to_s.in... -
Thread
:: Backtrace :: Location (37.0) -
Ruby のフレームを表すクラスです。
Ruby のフレームを表すクラスです。
Kernel.#caller_locations から生成されます。
//emlist[例1][ruby]{
# caller_locations.rb
def a(skip)
caller_locations(skip)
end
def b(skip)
a(skip)
end
def c(skip)
b(skip)
end
c(0..2).map do |call|
puts call.to_s
end
//}
例1の実行結果:
caller_locations.rb:2:in `a'
caller_locations... -
URI
:: Generic # hostname=(s) (37.0) -
自身の hostname を設定します。
自身の hostname を設定します。
このメソッドは引数に IPv6 アドレスを設定した場合は
URI::Generic#host にブラケットを追加した文字列を設定しますがそれ
以外は同じ処理を行います。
require 'uri'
u = URI("http://foo/bar")
p u.to_s # => "http://foo/bar"
u.hostname = "::1"
p u.to_s # => "http://[::1]/bar"
@param s 自身の hostname を... -
URI
:: Generic # normalize -> URI :: Generic (37.0) -
URI オブジェクトを正規化して返します。ホスト名を小文字にし、パスと 構成要素がなければ '/' をセットします。
URI オブジェクトを正規化して返します。ホスト名を小文字にし、パスと
構成要素がなければ '/' をセットします。
例:
require 'uri'
u = URI.parse('http://Example.Com')
p u.to_s #=> "http://Example.Com"
p u.normalize.to_s #=> "http://example.com/" -
URI
:: Generic # normalize! -> String | nil (37.0) -
URI オブジェクトを正規化して返します。ホスト名を小文字にし、パスと 構成要素がなければ '/' をセットします。
URI オブジェクトを正規化して返します。ホスト名を小文字にし、パスと
構成要素がなければ '/' をセットします。
例:
require 'uri'
u = URI.parse('http://Example.Com')
p u.to_s #=> "http://Example.Com"
p u.normalize.to_s #=> "http://example.com/" -
WIN32OLE
_ TYPE # inspect -> String (37.0) -
selfを説明的な文字列で表現します。
selfを説明的な文字列で表現します。
@return "#<WIN32OLE_TYPE"とWIN32OLE_TYPE#to_sの結果を「:」で結合
し、「>」で閉じた文字列を返します。
x = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'Worksheet')
puts x.inspect #=> #<WIN32OLE_TYPE:Worksheet>
@see WIN32OLE_TYPE#to_s -
bigdecimal (37.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 では正確な値を得る事がで... -
resolv (37.0)
-
DNSによる名前解決を行うライブラリです。 Ruby で書かれているため thread-aware であり、並列に多くのホスト名を解決することができます。
DNSによる名前解決を行うライブラリです。 Ruby で書かれているため thread-aware であり、並列に多くのホスト名を解決することができます。
DNS モジュールを使うことで、さまざまなリソースを直接ルックアップできます。
なお、単にホスト名から IP アドレスを得たいだけであれば、
socket ライブラリの IPSocket.getaddress などが使用できます。
//emlist[例:][ruby]{
require "resolv"
Resolv.getaddress("www.ruby-lang.org")
Resolv.getname("210.251.121... -
メソッド呼び出し(super・ブロック付き・yield) (37.0)
-
メソッド呼び出し(super・ブロック付き・yield) * super * block * yield * block_arg * numbered_parameters * call_method
メソッド呼び出し(super・ブロック付き・yield)
* super
* block
* yield
* block_arg
* numbered_parameters
* call_method
//emlist[例][ruby]{
foo.bar()
foo.bar
bar()
print "hello world\n"
print
Class.new
Class::new
//}
文法:
[式 `.'] 識別子 [`(' [[`*'] 式] ... [`&' 式] `)']
[式 `::'] 識別子 [`(' ... -
Symbol
# [](nth) -> String | nil (31.0) -
nth 番目の文字を返します。
nth 番目の文字を返します。
(self.to_s[nth] と同じです。)
@param nth 文字の位置を表す整数を指定します。
:foo[0] # => "f"
:foo[1] # => "o"
:foo[2] # => "o" -
Symbol
# [](nth , len) -> String | nil (31.0) -
nth 番目から長さ len の部分文字列を新しく作って返します。
nth 番目から長さ len の部分文字列を新しく作って返します。
(self.to_s[nth, len] と同じです。)
@param nth 文字の位置を表す整数を指定します。
@param len 文字列の長さを指定します。
:foo[1, 2] # => "oo" -
Symbol
# [](range) -> String | nil (31.0) -
rangeで指定したインデックスの範囲に含まれる部分文字列を返します。
rangeで指定したインデックスの範囲に含まれる部分文字列を返します。
(self.to_s[range] と同じです。)
@param range 取得したい文字列の範囲を示す Range オブジェクトを指定します。
:foo[0..1] # => "fo"
@see String#[] , String#slice -
Symbol
# [](regexp , nth = 0) -> String | nil (31.0) -
正規表現 regexp の nth 番目の括弧にマッチする最初の部分文字列を返します。
正規表現 regexp の nth 番目の括弧にマッチする最初の部分文字列を返します。
(self.to_s[regexp, nth] と同じです。)
@param regexp 正規表現を指定します。
@param nth 取得したい正規表現レジスタのインデックスを指定します。
:foobar[/bar/] # => "bar"
:foobarbaz[/(ba.)(ba.)/, 0] # => "barbaz"
:foobarbaz[/(ba.)(ba.)/, 1] # => "bar"
:foobarbaz[/(ba.)(ba.)/, 2] # => "baz"
... -
Symbol
# [](substr) -> String | nil (31.0) -
self が substr を含む場合、一致した文字列を新しく作って返します。
self が substr を含む場合、一致した文字列を新しく作って返します。
(self.to_s[substr] と同じです。)
例:
:foobar.slice("foo") # => "foo"
:foobar.slice("baz") # => nil -
Symbol
# slice(nth) -> String | nil (31.0) -
nth 番目の文字を返します。
nth 番目の文字を返します。
(self.to_s[nth] と同じです。)
@param nth 文字の位置を表す整数を指定します。
:foo[0] # => "f"
:foo[1] # => "o"
:foo[2] # => "o" -
Symbol
# slice(nth , len) -> String | nil (31.0) -
nth 番目から長さ len の部分文字列を新しく作って返します。
nth 番目から長さ len の部分文字列を新しく作って返します。
(self.to_s[nth, len] と同じです。)
@param nth 文字の位置を表す整数を指定します。
@param len 文字列の長さを指定します。
:foo[1, 2] # => "oo" -
Symbol
# slice(range) -> String | nil (31.0) -
rangeで指定したインデックスの範囲に含まれる部分文字列を返します。
rangeで指定したインデックスの範囲に含まれる部分文字列を返します。
(self.to_s[range] と同じです。)
@param range 取得したい文字列の範囲を示す Range オブジェクトを指定します。
:foo[0..1] # => "fo"
@see String#[] , String#slice -
Symbol
# slice(regexp , nth = 0) -> String | nil (31.0) -
正規表現 regexp の nth 番目の括弧にマッチする最初の部分文字列を返します。
正規表現 regexp の nth 番目の括弧にマッチする最初の部分文字列を返します。
(self.to_s[regexp, nth] と同じです。)
@param regexp 正規表現を指定します。
@param nth 取得したい正規表現レジスタのインデックスを指定します。
:foobar[/bar/] # => "bar"
:foobarbaz[/(ba.)(ba.)/, 0] # => "barbaz"
:foobarbaz[/(ba.)(ba.)/, 1] # => "bar"
:foobarbaz[/(ba.)(ba.)/, 2] # => "baz"
... -
Symbol
# slice(substr) -> String | nil (31.0) -
self が substr を含む場合、一致した文字列を新しく作って返します。
self が substr を含む場合、一致した文字列を新しく作って返します。
(self.to_s[substr] と同じです。)
例:
:foobar.slice("foo") # => "foo"
:foobar.slice("baz") # => nil -
Array
# inspect -> String (22.0) -
自身の情報を人間に読みやすい文字列にして返します。
自身の情報を人間に読みやすい文字列にして返します。
//emlist[例][ruby]{
[1, 2, 3, 4].to_s # => "[1, 2, 3, 4]"
[1, 2, 3, 4].inspect # => "[1, 2, 3, 4]"
//} -
FalseClass
# inspect -> String (22.0) -
常に文字列 "false" を返します。
常に文字列 "false" を返します。
//emlist[例][ruby]{
false.to_s # => "false"
//} -
Fiddle
:: Pointer # []=(offset , len , v) (22.0) -
自身の指すアドレスに offset バイトを足したメモリ領域の先頭 len バイトに 文字列 v をコピーします。
自身の指すアドレスに offset バイトを足したメモリ領域の先頭 len バイトに
文字列 v をコピーします。
str のサイズが len より小さい場合は、残りの領域を 0 で埋めます。
コピー先の領域が len より大きいか検証しません。
@param offset 書き換えたいメモリ領域のオフセットを整数で与えます。
@param len 書き換えたいメモリ領域のサイズを整数で指定します。
@param v メモリ領域にセットしたいバイト列を文字列で指定します。
@raise Fiddle::DLError self の保持するポインタが NULL である場合に発生します... -
Fiddle
:: Pointer # []=(offset , n) (22.0) -
自身の指すアドレスに offset バイトを足したメモリ領域を指定された n に書き換えます。
自身の指すアドレスに offset バイトを足したメモリ領域を指定された n に書き換えます。
@param n 整数を指定します。
@raise Fiddle::DLError self の保持するポインタが NULL である場合に発生します
例:
require 'fiddle'
s = 'abc'
cptr = Fiddle::Pointer[s]
cptr[0] = 65
p cptr.to_s #=> "Bbc" -
Proc
# inspect -> String (22.0) -
self の文字列表現を返します。
self の文字列表現を返します。
可能なら self を生成したソースファイル名、行番号を含みます。
//emlist[例][ruby]{
p Proc.new {
true
}.to_s
# => "#<Proc:0x0x401a880c@-:3>"
//} -
Socket
:: Option # data -> String (22.0) -
オプションのデータ(内容)を文字列で返します。
オプションのデータ(内容)を文字列で返します。
内容が整数や真偽値、もしくは struct linger であることがわかっている場合には、
Socket::Option#int, Socket::Option#bool, Socket::Option#linger
を用いて
to_s は過去との互換性のために存在します。 -
Array
# join(sep = $ , ) -> String (19.0) -
配列の要素を文字列 sep を間に挟んで連結した文字列を返します。
配列の要素を文字列 sep を間に挟んで連結した文字列を返します。
文字列でない要素に対しては、to_str があれば to_str、なければ to_s した結果を連結します。
要素がまた配列であれば再帰的に (同じ sep を利用して)
join した文字列を連結します。
ただし、配列要素が自身を含むような無限にネストした配列に対しては、以下
のような結果になります。
//emlist[例][ruby]{
ary = [1,2,3]
ary.push ary
p ary # => [1, 2, 3, [...]]
p ary.join # => Argum... -
Array
# uniq -> Array (19.0) -
uniq は配列から重複した要素を取り除いた新しい配列を返します。 uniq! は削除を破壊的に行い、削除が行われた場合は self を、 そうでなければnil を返します。
uniq は配列から重複した要素を取り除いた新しい配列を返します。
uniq! は削除を破壊的に行い、削除が行われた場合は self を、
そうでなければnil を返します。
取り除かれた要素の部分は前に詰められます。
要素の重複判定は、Object#eql? により行われます。
//emlist[例][ruby]{
p [1, 1, 1].uniq # => [1]
p [1, 4, 1].uniq # => [1, 4]
p [1, 3, 2, 2, 3].uniq # => [1, 3, 2]
//}
ブロックが与えられた場合、ブロックが返した... -
Array
# uniq {|item| . . . } -> Array (19.0) -
uniq は配列から重複した要素を取り除いた新しい配列を返します。 uniq! は削除を破壊的に行い、削除が行われた場合は self を、 そうでなければnil を返します。
uniq は配列から重複した要素を取り除いた新しい配列を返します。
uniq! は削除を破壊的に行い、削除が行われた場合は self を、
そうでなければnil を返します。
取り除かれた要素の部分は前に詰められます。
要素の重複判定は、Object#eql? により行われます。
//emlist[例][ruby]{
p [1, 1, 1].uniq # => [1]
p [1, 4, 1].uniq # => [1, 4]
p [1, 3, 2, 2, 3].uniq # => [1, 3, 2]
//}
ブロックが与えられた場合、ブロックが返した... -
Array
# uniq! -> self | nil (19.0) -
uniq は配列から重複した要素を取り除いた新しい配列を返します。 uniq! は削除を破壊的に行い、削除が行われた場合は self を、 そうでなければnil を返します。
uniq は配列から重複した要素を取り除いた新しい配列を返します。
uniq! は削除を破壊的に行い、削除が行われた場合は self を、
そうでなければnil を返します。
取り除かれた要素の部分は前に詰められます。
要素の重複判定は、Object#eql? により行われます。
//emlist[例][ruby]{
p [1, 1, 1].uniq # => [1]
p [1, 4, 1].uniq # => [1, 4]
p [1, 3, 2, 2, 3].uniq # => [1, 3, 2]
//}
ブロックが与えられた場合、ブロックが返した... -
Array
# uniq! {|item| . . . } -> self | nil (19.0) -
uniq は配列から重複した要素を取り除いた新しい配列を返します。 uniq! は削除を破壊的に行い、削除が行われた場合は self を、 そうでなければnil を返します。
uniq は配列から重複した要素を取り除いた新しい配列を返します。
uniq! は削除を破壊的に行い、削除が行われた場合は self を、
そうでなければnil を返します。
取り除かれた要素の部分は前に詰められます。
要素の重複判定は、Object#eql? により行われます。
//emlist[例][ruby]{
p [1, 1, 1].uniq # => [1]
p [1, 4, 1].uniq # => [1, 4]
p [1, 3, 2, 2, 3].uniq # => [1, 3, 2]
//}
ブロックが与えられた場合、ブロックが返した... -
BasicObject
# method _ missing(name , *args) -> object (19.0) -
呼びだされたメソッドが定義されていなかった時、Rubyインタプリタがこのメソッド を呼び出します。
呼びだされたメソッドが定義されていなかった時、Rubyインタプリタがこのメソッド
を呼び出します。
呼び出しに失敗したメソッドの名前 (Symbol) が name に
その時の引数が第二引数以降に渡されます。
デフォルトではこのメソッドは例外 NoMethodError を発生させます。
@param name 未定義メソッドの名前(シンボル)です。
@param args 未定義メソッドに渡された引数です。
@return ユーザー定義の method_missing メソッドの返り値が未定義メソッドの返り値で
あるかのように見えます。
//emlist[例][ruby]{... -
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... -
BigDecimal
# %(n) -> BigDecimal (19.0) -
self を n で割った余りを返します。
self を n で割った余りを返します。
@param n self を割る数を指定します。
//emlist[][ruby]{
require 'bigdecimal'
x = BigDecimal((2**100).to_s)
( x % 3).to_i # => 1
(-x % 3).to_i # => 2
( x % -3).to_i # => -2
(-x % -3).to_i # => -1
//}
戻り値は n と同じ符号になります。これは BigDecimal#remainder とは
異なる点に注意してください。詳細は Numeric#%、
Numeric#re... -
BigDecimal
# modulo(n) -> BigDecimal (19.0) -
self を n で割った余りを返します。
self を n で割った余りを返します。
@param n self を割る数を指定します。
//emlist[][ruby]{
require 'bigdecimal'
x = BigDecimal((2**100).to_s)
( x % 3).to_i # => 1
(-x % 3).to_i # => 2
( x % -3).to_i # => -2
(-x % -3).to_i # => -1
//}
戻り値は n と同じ符号になります。これは BigDecimal#remainder とは
異なる点に注意してください。詳細は Numeric#%、
Numeric#re... -
BigDecimal
# remainder(n) -> BigDecimal (19.0) -
self を n で割った余りを返します。
self を n で割った余りを返します。
@param n self を割る数を指定します。
//emlist[][ruby]{
require 'bigdecimal'
x = BigDecimal((2**100).to_s)
x.remainder(3).to_i # => 1
(-x).remainder(3).to_i # => -1
x.remainder(-3).to_i # => 1
(-x).remainder(-3).to_i # => -1
//}
戻り値は self と同じ符号になります。これは BigDecimal#% とは異な
る点に注意し... -
BigDecimal
# to _ digits -> String (19.0) -
自身を "1234.567" のような十進数の形式にフォーマットした文字列に変換し ます。
自身を "1234.567" のような十進数の形式にフォーマットした文字列に変換し
ます。
@return 十進数の形式にフォーマットした文字列
注意:
このメソッドは非推奨です。BigDecimal#to_s("F") を使用してください。 -
DateTime
. parse(str = & # 39;-4712-01-01T00:00:00+00:00& # 39; , complete = true , start = Date :: ITALY) -> DateTime (19.0) -
与えられた日時表現を解析し、 その情報に基づいて DateTime オブジェクトを生成します。
与えられた日時表現を解析し、
その情報に基づいて DateTime オブジェクトを生成します。
年が "00" から "99" の範囲であれば、
年の下2桁表現であるとみなしこれを補います。
この振舞いを抑止したい場合は、ヒントとして、complete に false を与えます。
@param str 日時をあらわす文字列
@param complete 年を補完するか
@param start グレゴリオ暦をつかい始めた日をあらわすユリウス日
@raise ArgumentError 正しくない日時になる組み合わせである場合に発生します。
例:
require 'date'
... -
DateTime
. strptime(str = & # 39;-4712-01-01T00:00:00+00:00& # 39; , format = & # 39;%FT%T%z& # 39; , start = Date :: ITALY) -> DateTime (19.0) -
与えられた雛型で日時表現を解析し、 その情報に基づいて DateTime オブジェクトを生成します。
与えられた雛型で日時表現を解析し、
その情報に基づいて DateTime オブジェクトを生成します。
@param str 日時をあらわす文字列
@param format 書式
@param start グレゴリオ暦をつかい始めた日をあらわすユリウス日
@raise ArgumentError 正しくない日時になる組み合わせである場合に発生します。
例:
require 'date'
DateTime.strptime('2001-02-03T12:13:14Z').to_s
# => "2001-02-03T12:13:14+00:00"
@see Date.strp... -
Digest
:: Base (19.0) -
すべての Digest::XXX クラスの基底クラスです。
すべての Digest::XXX クラスの基底クラスです。
例えば、MD5 値を得るには以下のようにします。
require 'digest/md5'
p Digest::MD5.hexdigest('abc') #=> '900150983cd24fb0d6963f7d28e17f72'
p Digest::MD5.file('ruby-1.8.5.tar.gz').to_s #=> '3fbb02294a8ca33d4684055adba5ed6f'
すべての Digest::XXX クラスは以下の共通インタフェースを持ちます。