ライブラリ
- ビルトイン (48)
- abbrev (1)
- bigdecimal (26)
-
bigdecimal
/ util (4) - csv (66)
- date (1)
- digest (2)
- erb (7)
- etc (1)
- fiddle (1)
-
fiddle
/ import (3) -
irb
/ cmd / load (1) - json (21)
-
json
/ add / bigdecimal (1) -
json
/ add / complex (1) -
json
/ add / rational (1) - kconv (1)
- logger (32)
- matrix (60)
- mkmf (3)
-
net
/ http (28) - open-uri (2)
- openssl (23)
- optparse (43)
- ostruct (2)
- pathname (33)
- prime (7)
- rake (2)
-
rake
/ loaders / makefile (1) -
rake
/ packagetask (10) - resolv (1)
-
rexml
/ document (66) -
rexml
/ streamlistener (1) - rubygems (1)
-
rubygems
/ custom _ require (1) -
rubygems
/ requirement (8) -
rubygems
/ specification (3) - set (33)
- socket (5)
- stringio (20)
- strscan (30)
- tsort (6)
- uri (3)
- win32ole (1)
- zlib (2)
クラス
- Addrinfo (3)
- Array (3)
- BasicSocket (2)
- BigDecimal (27)
- CSV (21)
-
CSV
:: FieldInfo (3) -
CSV
:: Row (14) -
CSV
:: Table (28) - Class (1)
- Complex (1)
- Date (1)
-
Digest
:: Base (2) - Dir (1)
- ERB (7)
- Exception (2)
-
Fiddle
:: Pointer (1) -
File
:: Stat (3) - Float (2)
-
Gem
:: Requirement (8) -
Gem
:: Specification (3) - IO (3)
-
IRB
:: ExtendCommand :: Require (1) - Integer (2)
-
JSON
:: State (8) - Logger (31)
-
Logger
:: Formatter (1) - Matrix (40)
-
Matrix
:: LUPDecomposition (1) - Method (1)
- Module (1)
-
Net
:: HTTP (3) -
Net
:: HTTPGenericRequest (2) -
Net
:: HTTPResponse (4) - NilClass (1)
- Object (2)
-
OpenSSL
:: BN (22) - OpenStruct (2)
- OptionParser (36)
- Pathname (33)
- Prime (3)
-
Prime
:: EratosthenesGenerator (1) -
Prime
:: PseudoPrimeGenerator (2) -
REXML
:: Attribute (3) -
REXML
:: Attributes (13) -
REXML
:: CData (2) -
REXML
:: Child (2) -
REXML
:: DocType (6) -
REXML
:: Document (3) -
REXML
:: Element (23) -
REXML
:: Elements (9) -
REXML
:: Instruction (2) -
REXML
:: Text (3) -
Rake
:: Application (1) -
Rake
:: DefaultLoader (1) -
Rake
:: MakefileLoader (1) -
Rake
:: PackageTask (10) - Random (3)
- Range (3)
- Rational (2)
-
Resolv
:: DNS :: Name (1) -
RubyVM
:: InstructionSequence (1) - Set (31)
- String (3)
- StringIO (20)
- StringScanner (30)
-
Thread
:: Queue (3) -
Thread
:: SizedQueue (3) - Time (2)
-
URI
:: MailTo (3) - UnboundMethod (1)
- Vector (19)
-
WIN32OLE
_ TYPE (1) -
Zlib
:: GzipWriter (2)
モジュール
- Enumerable (18)
-
Fiddle
:: Importer (3) -
JSON
:: Generator :: GeneratorMethods :: Array (1) -
JSON
:: Generator :: GeneratorMethods :: FalseClass (1) -
JSON
:: Generator :: GeneratorMethods :: Float (1) -
JSON
:: Generator :: GeneratorMethods :: Hash (1) -
JSON
:: Generator :: GeneratorMethods :: Integer (1) -
JSON
:: Generator :: GeneratorMethods :: NilClass (1) -
JSON
:: Generator :: GeneratorMethods :: Object (1) -
JSON
:: Generator :: GeneratorMethods :: String (1) -
JSON
:: Generator :: GeneratorMethods :: TrueClass (1) - Kernel (8)
-
Net
:: HTTPHeader (19) -
OpenURI
:: Meta (2) -
OptionParser
:: Arguable (7) -
REXML
:: StreamListener (1) - TSort (6)
キーワード
- % (1)
- << (7)
- <=> (4)
- == (8)
- === (5)
- =~ (1)
- >> (1)
- JSON (1)
- [] (8)
- []= (8)
-
_ dump (1) - abbrev (1)
- abs (1)
- absolute? (1)
- accept (1)
- add (4)
- add? (1)
-
add
_ attribute (2) -
add
_ attributes (1) -
add
_ dependency (1) -
add
_ development _ dependency (1) -
add
_ element (1) -
add
_ loader (1) -
add
_ namespace (2) -
add
_ row (1) -
add
_ runtime _ dependency (1) - all? (3)
-
allow
_ nan? (1) -
angle
_ with (1) - antisymmetric? (1)
- any? (3)
-
array
_ nl (1) -
array
_ nl= (1) -
as
_ list (1) - ascend (1)
- attribute (1)
-
attribute
_ of (1) -
attributes
_ of (1) - autoload (1)
-
backtrace
_ locations (1) -
beginning
_ of _ line? (1) - bind (1)
- binread (1)
-
bit
_ set? (1) - body (1)
- bol? (1)
-
by
_ col (1) -
by
_ col! (1) -
by
_ col _ or _ row (1) -
by
_ col _ or _ row! (1) -
by
_ row (1) -
by
_ row! (1) - bytes (1)
- canonname (1)
- ceil (3)
- charset (1)
- check (1)
-
check
_ circular? (1) -
check
_ until (1) - children (1)
- chunked? (1)
- classify (1)
- cleanpath (1)
- clear (2)
-
clear
_ bit! (1) - clone (1)
- close (2)
- closed? (1)
- cmp (1)
- coerce (2)
-
cofactor
_ expansion (1) -
col
_ sep (1) - collect (4)
- collect! (5)
- collect2 (2)
- column (2)
-
column
_ vectors (1) - concat (1)
- configure (1)
- content (1)
-
content
_ length (1) -
content
_ length= (1) -
content
_ range (1) -
content
_ type (1) - convert (2)
- cover? (2)
-
create
_ makefile (1) - crypt (1)
-
datetime
_ format (1) -
datetime
_ format= (2) - debug? (1)
-
def
_ class (1) -
def
_ method (1) -
def
_ module (1) -
default
_ argv (1) -
default
_ argv= (1) -
default
_ event _ sources (1) - delete (7)
- delete? (1)
-
delete
_ all (2) -
delete
_ attribute (1) -
delete
_ element (1) -
delete
_ if (4) -
delete
_ namespace (1) - deq (2)
- descend (1)
- disjoint? (1)
- divmod (1)
-
do
_ not _ reverse _ lookup (1) - dup (1)
- each (14)
-
each
_ attribute (1) -
each
_ byte (1) -
each
_ capitalized _ name (1) -
each
_ child (2) -
each
_ element _ with _ attribute (1) -
each
_ element _ with _ text (1) -
each
_ entry (1) -
each
_ filename (1) -
each
_ header (1) -
each
_ line (4) -
each
_ strongly _ connected _ component (2) -
each
_ strongly _ connected _ component _ from (2) -
each
_ value (1) -
each
_ with _ index (5) - eigen (1)
- eigensystem (1)
- element (1)
-
elements
_ to _ f (1) -
elements
_ to _ i (1) -
elements
_ to _ r (1) - empty? (4)
- encoding (1)
- entity (1)
- entitydecl (1)
- entries (1)
- eos? (1)
- eql? (2)
- error (2)
- error? (1)
- exact? (1)
- execute (1)
- exist? (1)
-
external
_ id (1) -
family
_ addrinfo (2) - fatal (2)
- fatal? (1)
- fcntl (1)
- fetch (1)
- field (1)
- field? (1)
-
field
_ row? (1) -
field
_ size _ limit (1) - filename (1)
- filename= (1)
-
find
_ index (3) - finish (1)
-
first
_ lineno (1) - flatten (1)
- flatten! (1)
- floor (3)
- flush (1)
- fnmatch (1)
-
force
_ quotes? (1) - formatter (1)
- formatter= (1)
- gem (1)
-
get
_ attribute (1) -
get
_ attribute _ ns (1) -
get
_ byte (1) -
get
_ fields (1) -
get
_ text (1) - getbyte (2)
- getc (1)
- getch (1)
- getopts (1)
- gets (1)
- glob (2)
-
has
_ elements? (1) -
have
_ framework (2) - head (1)
- header (1)
- header? (1)
-
header
_ convert (2) -
header
_ row? (2) - headers (3)
- help (1)
- include? (2)
- index (4)
- info (2)
- info? (1)
- inspect (2)
- iseuc (1)
- j (1)
- jj (1)
-
json
_ creatable? (1) - key? (1)
-
laplace
_ expansion (1) -
last
_ modified (1) - length (3)
- level (1)
- level= (1)
- line (1)
- lineno (1)
- lines (2)
- load (3)
-
local
_ address (1) -
local
_ host= (1) -
local
_ port= (1) - log (2)
- lshift! (1)
- lup (1)
-
lup
_ decomposition (1) - magnitude (1)
-
main
_ type (1) - map (4)
- map! (5)
-
mask
_ bits! (1) - match? (1)
- matched (1)
- matched? (1)
-
matched
_ size (1) - member? (1)
- merge (2)
- minor (2)
-
mod
_ add (1) -
mod
_ exp (1) -
mod
_ inverse (1) -
mod
_ mul (1) -
mod
_ sub (1) - mode (1)
- modulo (1)
- mountpoint? (1)
- namespace (2)
- namespaces (2)
-
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) - negative? (1)
-
next
_ element (1) -
next
_ sibling= (1) - none? (4)
- nonzero? (1)
- norm (1)
- normalize (1)
-
num
_ bits (1) -
num
_ bytes (1) -
object
_ nl (1) -
object
_ nl= (1) - on (12)
-
on
_ head (1) -
on
_ tail (1) - one? (3)
- order (4)
- order! (4)
- pack (2)
-
package
_ files (1) -
package
_ files= (1) - parse (2)
- parse! (2)
- pathconf (1)
- permute (2)
- permute! (2)
- pop (2)
-
post
_ match (1) -
pre
_ match (1) - prefix (1)
- prefixes (2)
- prerelease? (1)
-
pretty
_ print (1) -
previous
_ sibling= (1) - prime? (1)
-
prime
_ division (1) -
prime
_ fasttest? (1) - print (2)
- printf (1)
- progname (1)
- progname= (1)
-
proper
_ subset? (1) -
proper
_ superset? (1) - public (1)
- push (1)
- puts (2)
- r (1)
- rand (3)
- range (1)
-
range
_ length (1) - read (2)
-
read
_ body (1) - readline (2)
- readlines (2)
- real (1)
- real? (1)
- realdirpath (1)
- realpath (2)
- regular? (1)
- reject (1)
- reject! (1)
- relative? (1)
-
relative
_ path _ from (1) - release (1)
- remainder (1)
- replace (1)
-
request
_ body _ permitted? (1) - reset (1)
-
response
_ body _ permitted? (1) - rest? (1)
- result (1)
-
return
_ headers? (1) - rewind (1)
- root (1)
- root? (1)
-
root
_ node (1) - round (3)
- row (2)
- rshift! (1)
- run (1)
-
satisfied
_ by? (1) - scan (1)
-
scan
_ full (1) -
scan
_ until (1) -
search
_ full (1) -
set
_ bit! (1) -
sev
_ threshold (1) -
sev
_ threshold= (1) - shift (2)
- sign (1)
- size (4)
- size? (1)
-
skew
_ symmetric? (1) - skip (1)
-
skip
_ blanks? (1) -
skip
_ until (1) - solve (1)
-
source
_ location (2) - specific? (1)
- split (2)
-
stand
_ alone? (1) -
strongly
_ connected _ components (1) - struct (1)
- sub (1)
-
sub
_ ext (1) -
sub
_ type (1) -
subdomain
_ of? (1) - subset? (1)
- subtract (1)
- summarize (2)
- superset? (1)
- symlink? (1)
- system (1)
- target (1)
- terminate (1)
- text (1)
- text= (1)
-
to
_ a (4) -
to
_ bn (1) -
to
_ csv (1) -
to
_ d (4) -
to
_ h (2) -
to
_ json (12) -
to
_ mailtext (1) -
to
_ rfc822text (1) -
to
_ s (7) -
to
_ set (2) -
to
_ string (1) -
to
_ value (1) - tr (1)
- trace (1)
- truncate (3)
-
tsort
_ each (1) - ucmp (1)
-
unconverted
_ fields? (1) - ungetc (1)
- union (1)
- unknown (2)
- unlink (1)
- unpack (1)
- unscan (1)
- value (3)
- value= (1)
-
values
_ at (1) - version (1)
- warn (2)
- warn? (1)
-
with
_ index (1) - write (1)
-
write
_ headers? (1) - xpath (1)
-
yield
_ self (2) - zero? (1)
検索結果
先頭5件
-
Kernel
# require(path) -> bool (63739.0) -
RubyGems を require すると、Kernel#require が Gem を 要求されたときにロードするように置き換えます。
RubyGems を require すると、Kernel#require が Gem を
要求されたときにロードするように置き換えます。
再定義された Kernel#require を呼び出すと以下の事を行います。
Ruby のロードパスに存在するライブラリを指定した場合はそのままロードします。
そうではなく、インストールされた Gem ファイルの中から見つかった場合は、
その Gem をロードパスに登録します。
@param path ロードしたいライブラリの名前を指定します。
@return 既にロードされているライブラリを再度ロードしようとした場合は false を返します。
... -
REXML
:: Element # delete _ element(element) -> REXML :: Element (28240.0) -
子要素を削除します。
子要素を削除します。
element で削除する要素を指定できます。整数、文字列、REXML::Element
オブジェクトのいずれかが指定できます。
REXML::Element を指定すると、その要素が削除されます。
整数を指定すると、element 番目の要素を削除します(1-originで指定します)。
文字列を指定すると、XPath としてマッチする要素を削除します。
複数の要素がマッチする場合はそのうち1つが削除されます。
@param element 削除する要素
@see REXML::Elements#delete
//emlist[][ruby]{
require... -
URI
:: MailTo # to _ mailtext -> String (27430.0) -
URI オブジェクトからメールテキスト文字列を生成します。
URI オブジェクトからメールテキスト文字列を生成します。
例:
require 'uri'
p mailto = URI.parse("mailto:ruby-list@ruby-lang.org?subject=subscribe&cc=myaddr")
print mailto.to_mailtext
=> #<URI::MailTo:0x20104a0e URL:mailto:ruby-list@ruby-lang.org?subject=subscribe&cc=myaddr>
To: ruby-list@ruby-lang.org
Sub... -
CSV
:: Table # delete _ if {|column _ name , values| . . . } -> self (27376.0) -
ブロックを評価した結果が真である行か列を削除します。
ブロックを評価した結果が真である行か列を削除します。
デフォルトのミックスモードかロウモードでは、行単位で繰り返します。カラ
ムモードでは、ブロックに列名と対応する値の配列を与え、列単位で繰り返し
ます。
//emlist[例 ロウモード][ruby]{
require "csv"
row1 = CSV::Row.new(["header1", "header2"], ["row1_1", "valid"])
row2 = CSV::Row.new(["header1", "header2"], ["row2_1", "invalid"])
row3 = CSV::Row.new(["... -
CSV
:: Table # delete _ if {|row| . . . } -> self (27376.0) -
ブロックを評価した結果が真である行か列を削除します。
ブロックを評価した結果が真である行か列を削除します。
デフォルトのミックスモードかロウモードでは、行単位で繰り返します。カラ
ムモードでは、ブロックに列名と対応する値の配列を与え、列単位で繰り返し
ます。
//emlist[例 ロウモード][ruby]{
require "csv"
row1 = CSV::Row.new(["header1", "header2"], ["row1_1", "valid"])
row2 = CSV::Row.new(["header1", "header2"], ["row2_1", "invalid"])
row3 = CSV::Row.new(["... -
CSV
:: Table # delete(index _ or _ header) -> object (27340.0) -
指定された行か列を削除して返します。
指定された行か列を削除して返します。
デフォルトのミックスモードではインデックスによるアクセスは行単位での参
照であると見なします。しかし、他の方法ではヘッダによる列単位での参照で
あると見なします。
探索方法を変更したい場合は CSV::Table#by_col!,
CSV::Table#by_row! を使用してください。
//emlist[例][ruby]{
require "csv"
row1 = CSV::Row.new(["header1", "header2"], ["row1_1", "row1_2"])
row2 = CSV::Row.new(["header1",... -
CSV
:: Table # length -> Integer (27340.0) -
(ヘッダを除く)行数を返します。
(ヘッダを除く)行数を返します。
Array#length, Array#size に委譲しています。
//emlist[][ruby]{
require 'csv'
csv = CSV.new("a,b,c\n1,2,3", headers: true)
table = csv.read
p table.size # => 1
//}
@see Array#length, Array#size -
Logger
# close -> nil (27340.0) -
ログ出力に使用していた IO オブジェクトを閉じます。
ログ出力に使用していた IO オブジェクトを閉じます。
//emlist[例][ruby]{
require 'logger'
logger = Logger.new(STDOUT)
logger.info("test") # => I, [2019-04-16T00:40:11.837898 #2795] INFO -- : test
logger.close
logger.info("test") # => log writing failed. closed stream
//} -
Gem
:: Requirement # as _ list -> [String] (27322.0) -
必要条件を文字列の配列で返します。
必要条件を文字列の配列で返します。
//emlist[][ruby]{
req = Gem::Requirement.new("< 5.0", ">= 1.9")
p req.as_list # => ["< 5.0", ">= 1.9"]
//} -
Gem
:: Requirement # prerelease? -> bool (27322.0) -
何らかのバージョンがプレリリースのものであれば、true を返します。
何らかのバージョンがプレリリースのものであれば、true を返します。
//emlist[][ruby]{
p Gem::Requirement.new("< 5.0").prerelease? # => false
p Gem::Requirement.new("< 5.0a").prerelease? # => true
//} -
RubyVM
:: InstructionSequence # first _ lineno -> Integer (27322.0) -
self が表す命令シーケンスの 1 行目の行番号を返します。
self が表す命令シーケンスの 1 行目の行番号を返します。
例1:irb で実行した場合
RubyVM::InstructionSequence.compile('num = 1 + 2').first_lineno
# => 1
例2:
# /tmp/method.rb
require "foo-library"
def foo
p :foo
end
RubyVM::InstructionSequence.of(method(:foo)).first_lineno
# => 2 -
ERB
# def _ class(superklass=Object , methodname=& # 39;erb& # 39;) -> Class (18988.0) -
変換した Ruby スクリプトをメソッドとして定義した無名のクラスを返します。
変換した Ruby スクリプトをメソッドとして定義した無名のクラスを返します。
@param superklass 無名クラスのスーパークラス
@param methodname メソッド名
//emlist[例][ruby]{
require 'erb'
class MyClass_
def initialize(arg1, arg2)
@arg1 = arg1; @arg2 = arg2
end
end
filename = 'example.rhtml' # @arg1 と @arg2 が使われている example.rhtml
erb = ERB.n... -
REXML
:: Element # add _ element(element , attrs = nil) -> Element (18940.0) -
子要素を追加します。
子要素を追加します。
element として追加する要素を指定します。
REXML::Element オブジェクトもしくは文字列を指定します。
element として REXML::Element オブジェクトを指定した場合、それが追加されます。
文字列を指定した場合は、それを要素名とする要素を追加します。
attrs に { String => String } という Hash を渡すと、
追加する要素の属性を指定できます。
子要素の最後に追加されます。
返り値は追加された要素です。
@param element 追加する要素
@param attrs 追加する要素に設定する... -
REXML
:: Elements # delete(element) -> Element (18940.0) -
element で指定した子要素を取り除きます。
element で指定した子要素を取り除きます。
element には、REXML::Element、整数、文字列が指定できます。
Element オブジェクトを指定した場合は、その子要素を取り除きます。
整数を指定した場合には element 番目の子要素を削除します(1-originです)。
文字列を指定した場合は、削除する要素を XPath で指定します。
XPathが複数の要素を指している場合は、そのうち一つを削除します。
取り除かれた要素を返します。
XPath で指定した場合、子要素ではない要素も取り除けることに注意してください。
@param element 削除する要素... -
Pathname
# each _ line(*args) {|line| . . . } -> nil (18748.0) -
IO.foreach(self.to_s, *args, &block) と同じです。
IO.foreach(self.to_s, *args, &block) と同じです。
//emlist[例][ruby]{
require "pathname"
IO.write("testfile", "line1\nline2,\nline3\n")
Pathname("testfile").each_line
# => #<Enumerator: IO:foreach("testfile")>
//}
//emlist[例 ブロックを指定][ruby]{
require "pathname"
IO.write("testfile", "line1\nline2,\nline3\... -
Matrix
# lup -> Matrix :: LUPDecomposition (18730.0) -
行列の LUP 分解を保持したオブジェクトを返します。
行列の LUP 分解を保持したオブジェクトを返します。
Matrix::LUPDecomposition は to_ary を定義しているため、
多重代入によって3つの行列(下三角行列、上三角行列、置換行列)
を得ることができます。これを [L, U, P] と書くと、
L*U = P*self を満たします。
//emlist[例][ruby]{
require 'matrix'
a = Matrix[[1, 2], [3, 4]]
l, u, p = a.lup
l.lower_triangular? # => true
u.upper_triangular? # => true
p.... -
Matrix
# lup _ decomposition -> Matrix :: LUPDecomposition (18730.0) -
行列の LUP 分解を保持したオブジェクトを返します。
行列の LUP 分解を保持したオブジェクトを返します。
Matrix::LUPDecomposition は to_ary を定義しているため、
多重代入によって3つの行列(下三角行列、上三角行列、置換行列)
を得ることができます。これを [L, U, P] と書くと、
L*U = P*self を満たします。
//emlist[例][ruby]{
require 'matrix'
a = Matrix[[1, 2], [3, 4]]
l, u, p = a.lup
l.lower_triangular? # => true
u.upper_triangular? # => true
p.... -
ERB
# def _ module(methodname=& # 39;erb& # 39;) -> Module (18688.0) -
変換した Ruby スクリプトをメソッドとして定義した無名のモジュールを返します。
変換した Ruby スクリプトをメソッドとして定義した無名のモジュールを返します。
@param methodname メソッド名
//emlist[例][ruby]{
require 'erb'
filename = 'example.rhtml'
erb = ERB.new("test1<%= arg1 %>\ntest2<%= arg2 %>\n")
erb.filename = filename
MyModule = erb.def_module('render(arg1, arg2)')
class MyClass
include MyModule
end
print My... -
Net
:: HTTPHeader # each _ value {|value| . . . . } -> () (18658.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_value { |value| puts value }
# => gzip;q=1.0,deflate;q=0.6,identity;q=0.3
# => */*
# => Ruby
//} -
Exception
# backtrace _ locations -> [Thread :: Backtrace :: Location] (18640.0) -
バックトレース情報を返します。Exception#backtraceに似ていますが、 Thread::Backtrace::Location の配列を返す点が異なります。
バックトレース情報を返します。Exception#backtraceに似ていますが、
Thread::Backtrace::Location の配列を返す点が異なります。
現状では Exception#set_backtrace によって戻り値が変化する事はあり
ません。
//emlist[例: test.rb][ruby]{
require "date"
def check_long_month(month)
return if Date.new(2000, month, -1).day == 31
raise "#{month} is not long month"
end
... -
Logger
# level=(level) (18640.0) -
Logger オブジェクトのログレベルを設定します。ログレベルがこれより低いメッセージは 出力されません。
Logger オブジェクトのログレベルを設定します。ログレベルがこれより低いメッセージは
出力されません。
@param level ログレベルを指定します。
//emlist[例][ruby]{
require 'logger'
logger = Logger.new(STDOUT)
logger.level # => 0
logger.level = Logger::Severity::ERROR # => 3
logger.level # => 3
//} -
Matrix
# collect!(which = :all) -> Enumerator (18640.0) -
行列の各要素に対してブロックの適用を繰り返した結果で要素を置き換えます。
行列の各要素に対してブロックの適用を繰り返した結果で要素を置き換えます。
ブロックのない場合は、自身と map! から生成した Enumerator オブジェクトを返します。
@param which which に以下の Symbol を指定することで、
引数として使われる要素を限定できます。
デフォルトは、:all (全ての要素)です。
指定できる Symbol の詳細は、 Matrix#each の項目を参照して下さい。
//emlist[例][ruby]{
require 'matrix'
... -
Matrix
# collect!(which = :all) {|element| . . . } -> self (18640.0) -
行列の各要素に対してブロックの適用を繰り返した結果で要素を置き換えます。
行列の各要素に対してブロックの適用を繰り返した結果で要素を置き換えます。
ブロックのない場合は、自身と map! から生成した Enumerator オブジェクトを返します。
@param which which に以下の Symbol を指定することで、
引数として使われる要素を限定できます。
デフォルトは、:all (全ての要素)です。
指定できる Symbol の詳細は、 Matrix#each の項目を参照して下さい。
//emlist[例][ruby]{
require 'matrix'
... -
Matrix
# collect(which = :all) -> Enumerator (18640.0) -
行列の各要素に対してブロックの適用を繰り返した結果を、要素として持つ行列を生成します。
行列の各要素に対してブロックの適用を繰り返した結果を、要素として持つ行列を生成します。
ブロックがない場合、 Enumerator を返します。
@param which which に以下の Symbol を指定することで、
引数として使われる要素を限定できます。
デフォルトは、:all (全ての要素)です。
指定できる Symbol の詳細は、 Matrix#each の項目を参照して下さい。
//emlist[例][ruby]{
require 'matrix'
m = Matrix[[1, ... -
Matrix
# collect(which = :all) {|x| . . . } -> Matrix (18640.0) -
行列の各要素に対してブロックの適用を繰り返した結果を、要素として持つ行列を生成します。
行列の各要素に対してブロックの適用を繰り返した結果を、要素として持つ行列を生成します。
ブロックがない場合、 Enumerator を返します。
@param which which に以下の Symbol を指定することで、
引数として使われる要素を限定できます。
デフォルトは、:all (全ての要素)です。
指定できる Symbol の詳細は、 Matrix#each の項目を参照して下さい。
//emlist[例][ruby]{
require 'matrix'
m = Matrix[[1, ... -
Matrix
# laplace _ expansion(row: nil , column: nil) -> object | Integer | Rational | Float (18640.0) -
row 行、もしくは column 列に関するラプラス展開をする。
row 行、もしくは column 列に関するラプラス展開をする。
通常の行列に対してはこれは単に固有値を計算するだけです。かわりにMatrix#determinant を
利用すべきです。
変則的な形状の行列に対してはそれ以上の意味を持ちます。例えば
row行/column列が行列やベクトルである場合には
//emlist[例][ruby]{
require 'matrix'
# Matrix[[7,6], [3,9]].laplace_expansion(column: 1) # => 45
Matrix[[Vector[1, 0], Vector[0, 1]], [2, 3]].... -
Net
:: HTTPHeader # content _ length=(len) (18640.0) -
Content-Length: ヘッダフィールドに値を設定します。
Content-Length: ヘッダフィールドに値を設定します。
len に nil を与えると Content-Length: ヘッダフィールドを
削除します。
@param len 設定する値を整数で与えます。
//emlist[例][ruby]{
require 'net/http'
uri = URI.parse('http://www.example.com/index.html')
req = Net::HTTP::Get.new(uri.request_uri)
req.content_length # => nil
req.content_length = ... -
REXML
:: Attributes # delete(attribute) -> REXML :: Element (18640.0) -
指定した属性を取り除きます。
指定した属性を取り除きます。
attribute で取り除く属性を指定します。
文字列もしくは REXML::Attribute オブジェクトを指定します
self が属する要素(REXML::Element)を返します。
@param attribute 取り除く属性(文字列もしくは REXML::Attribute オブジェクト)
//emlist[][ruby]{
require 'rexml/document'
doc = REXML::Document.new(<<-EOS)
<root xmlns:foo="http://example.org/foo"
x... -
REXML
:: Element # each _ element _ with _ attribute(key , value = nil , max = 0 , name = nil) {|element| . . . } -> () (18640.0) -
特定の属性を持つすべての子要素を引数としてブロックを呼び出します。
特定の属性を持つすべての子要素を引数としてブロックを呼び出します。
key で指定した属性名の属性を持つ要素のみを対象とします。
value を指定すると、keyで指定した属性名を持つ属性の値がvalueである
もののみを対象とします。
maxを指定すると、対象となる子要素の先頭 max 個のみが対象となります。
name を指定すると、それは xpath 文字列と見なされ、
それにマッチするもののみが対象となります。
max に 0 を指定すると、max の指定は無視されます(0個ではありません)。
@param key 属性名(文字列)
@param value 属性値(文字列)
... -
REXML
:: Element # each _ element _ with _ text(text = nil , max = 0 , name = nil) {|element| . . . } -> () (18640.0) -
テキストを子ノードとして 持つすべての子要素を引数としてブロックを呼び出します。
テキストを子ノードとして
持つすべての子要素を引数としてブロックを呼び出します。
text を指定すると、テキストの内容が text であるもののみを対象とします。
maxを指定すると、対象となる子要素の先頭 max 個のみが対象となります。
name を指定すると、それは xpath 文字列と見なされ、
それにマッチするもののみが対象となります。
max に 0 を指定すると、max の指定は無視されます(0個ではありません)。
@param text テキストの中身(文字列)
@param max ブロック呼出の対象とする子要素の最大個数
@param name xpath文字列
... -
REXML
:: Element # next _ element -> Element | nil (18640.0) -
次の兄弟要素を返します。
次の兄弟要素を返します。
次の要素が存在しない場合は nil を返します。
//emlist[][ruby]{
require 'rexml/document'
doc = REXML::Document.new '<a><b/>text<c/></a>'
doc.root.elements['b'].next_element # => <c/>
doc.root.elements['c'].next_element # => nil
//} -
REXML
:: Elements # delete _ all(xpath) -> [REXML :: Element] (18640.0) -
xpath で指定した XPath 文字列にマッチする要素をすべて取り除きます。
xpath で指定した XPath 文字列にマッチする要素をすべて取り除きます。
@param xpath 取り除く要素を指し示す XPath 文字列
//emlist[][ruby]{
require 'rexml/document'
doc = REXML::Document.new('<a><c/><c/><c/><c/></a>')
doc.elements.delete_all("a/c") # => [<c/>, <c/>, <c/>, <c/>]
doc.to_s # => "<a/>"
//} -
Rake
:: Application # add _ loader(ext , loader) (18640.0) -
与えられた拡張子で終わるファイル名のファイルをロードするためのローダーを 自身に追加します。
与えられた拡張子で終わるファイル名のファイルをロードするためのローダーを
自身に追加します。
@param ext 拡張子を指定します。
@param loader ローダーを指定します。
//emlist[例][ruby]{
require "rake/loaders/makefile"
# Rakefile での記載例とする
task default: :test
task :test
makefile =<<-EOS
<< <<-'SAMPLE_MF'
# Comments
a: a1 a2 a3 a4
EOS
IO.write("sample.mf", makefile)... -
Rake
:: PackageTask # package _ files -> Rake :: FileList (18640.0) -
パッケージに含むファイルリストを返します。
パッケージに含むファイルリストを返します。
//emlist[][ruby]{
# Rakefile での記載例とする
require 'rake/packagetask'
IO.write("test1.rb", "test")
IO.write("test2.rb", "test")
Rake::PackageTask.new("sample", "1.0.0") do |package_task|
package_task.package_files # => []
package_task.package_files.include("*.rb")
package_... -
Rake
:: PackageTask # package _ files=(file _ list) (18640.0) -
パッケージに含むファイルリストを設定します。
パッケージに含むファイルリストを設定します。
@param file_list ファイルリストを指定します。
//emlist[][ruby]{
# Rakefile での記載例とする
require 'rake/packagetask'
IO.write("test1.rb", "test")
IO.write("test2.rb", "test")
Rake::PackageTask.new("sample", "1.0.0") do |package_task|
package_task.package_files # => []
package_task.packag... -
Gem
:: Specification # add _ development _ dependency(gem , *requirements) -> [Gem :: Dependency] (18622.0) -
この gem の DEVELOPMENT 依存性を追加します。 この gem の開発時に必要となる gem を指定します。
この gem の DEVELOPMENT 依存性を追加します。
この gem の開発時に必要となる gem を指定します。
//emlist[][ruby]{
gem "rack", "~> 1.6", ">= 1.6.12"
//}
@param gem 依存する gem の名前か Gem::Dependency のインスタンスを指定します。
@param requirements バージョンの必要条件を 0 個以上指定します。デフォルトは ">= 0" です。
@see Gem::Specification#add_runtime_dependency, Gem::Depende... -
Pathname
# each _ line(*args) -> Enumerator (18448.0) -
IO.foreach(self.to_s, *args, &block) と同じです。
IO.foreach(self.to_s, *args, &block) と同じです。
//emlist[例][ruby]{
require "pathname"
IO.write("testfile", "line1\nline2,\nline3\n")
Pathname("testfile").each_line
# => #<Enumerator: IO:foreach("testfile")>
//}
//emlist[例 ブロックを指定][ruby]{
require "pathname"
IO.write("testfile", "line1\nline2,\nline3\... -
WIN32OLE
_ TYPE # default _ event _ sources -> [WIN32OLE _ TYPE] (18430.0) -
型が持つソースインターフェイスを取得します。
型が持つソースインターフェイスを取得します。
default_event_sourcesメソッドは、selfがCoClass(コンポーネントクラス)
の場合、そのクラスがサポートするデフォルトのソースインターフェイス(イ
ベントの通知元となるインターフェイス)を返します。
@return デフォルトのソースインターフェイスをWIN32OLE_TYPEの配列と
して返します。返すのは配列ですが、デフォルトのソースインターフェ
イスは最大でも1インターフェイスです。ソースインターフェイスを持
たない場合は空配列を返します。
tobj = ... -
Module
# autoload(const _ name , feature) -> nil (18424.0) -
定数 const_name を最初に参照した時に feature を Kernel.#require するように設定します。
定数 const_name を最初に参照した時に feature を Kernel.#require するように設定します。
const_name が autoload 設定されていて、まだ定義されてない(ロードされていない)ときは、
autoload する対象を置き換えます。
const_name が(autoloadではなく)既に定義されているときは何もしません。
@param const_name String または Symbol で指定します。
なお、const_name には、"::" 演算子を含めることはできません。
つまり、self の直下に定... -
CSV
:: Row # delete(header _ or _ index , minimum _ index = 0) -> [object , object] | nil (18412.0) -
ヘッダの名前かインデックスで行からフィールドを削除するために使用します。
ヘッダの名前かインデックスで行からフィールドを削除するために使用します。
@param header_or_index ヘッダの名前かインデックスを指定します。
@param minimum_index このインデックスより後で、ヘッダの名前を探します。
重複しているヘッダがある場合に便利です。
@return 削除したヘッダとフィールドの組を返します。削除対象が見つからなかった場合は nil を返します。
//emlist[例 ヘッダの名前で指定][ruby]{
require "csv"
row = CSV::Row.new(["hea... -
OptionParser
# default _ argv=(argv) (18412.0) -
自身がデフォルトでパースする引数を文字列の配列で指定します。
自身がデフォルトでパースする引数を文字列の配列で指定します。
OptionParser#parse の引数が指定されなかったときに使われます。
@param argv デフォルトでパースしたい文字列の配列を指定します。
//emlist[例][ruby]{
require "optparse"
config = {}
opts = OptionParser.new
opts.on("-r", "--require LIBRARY"){|lib| config[:lib] = lib }
# パラメーター指定なしで実行
opts.default_argv # => []
opts.p... -
Pathname
# glob(pattern , flags=0) -> [Pathname] (18394.0) -
ワイルドカードの展開を行なった結果を、 Pathname オブジェクトの配列として返します。
ワイルドカードの展開を行なった結果を、
Pathname オブジェクトの配列として返します。
引数の意味は、Dir.glob と同じです。 flag の初期値である 0 は「何
も指定しない」ことを意味します。
ブロックが与えられたときは、ワイルドカードにマッチした Pathname オブジェ
クトを1つずつ引数としてそのブロックに与えて実行させます。この場合、値と
しては nil を返します。
このメソッドは内部で Dir.glob の base キーワード引数を使っています。
@param pattern ワイルドカードパターンです
@param flags パターンマッチ時... -
Pathname
# glob(pattern , flags=0) {|pathname| . . . } -> nil (18394.0) -
ワイルドカードの展開を行なった結果を、 Pathname オブジェクトの配列として返します。
ワイルドカードの展開を行なった結果を、
Pathname オブジェクトの配列として返します。
引数の意味は、Dir.glob と同じです。 flag の初期値である 0 は「何
も指定しない」ことを意味します。
ブロックが与えられたときは、ワイルドカードにマッチした Pathname オブジェ
クトを1つずつ引数としてそのブロックに与えて実行させます。この場合、値と
しては nil を返します。
このメソッドは内部で Dir.glob の base キーワード引数を使っています。
@param pattern ワイルドカードパターンです
@param flags パターンマッチ時... -
BigDecimal
# ceil -> Integer (18376.0) -
self 以上の整数のうち、最も小さい整数を計算し、その値を返します。
self 以上の整数のうち、最も小さい整数を計算し、その値を返します。
@param n 小数点以下の桁数を整数で指定します。
//emlist[][ruby]{
require "bigdecimal"
BigDecimal("1.23456").ceil # => 2
BigDecimal("-1.23456").ceil # => -1
//}
以下のように引数を与えて、小数点以下 n+1 位の数字を操作することもできます。
n >= 0 なら、小数点以下 n + 1 位の数字を操作します
(小数点以下を、最大 n 桁にします)。
n が負のときは小数点以上 n 桁目を操作... -
BigDecimal
# ceil(n) -> BigDecimal (18376.0) -
self 以上の整数のうち、最も小さい整数を計算し、その値を返します。
self 以上の整数のうち、最も小さい整数を計算し、その値を返します。
@param n 小数点以下の桁数を整数で指定します。
//emlist[][ruby]{
require "bigdecimal"
BigDecimal("1.23456").ceil # => 2
BigDecimal("-1.23456").ceil # => -1
//}
以下のように引数を与えて、小数点以下 n+1 位の数字を操作することもできます。
n >= 0 なら、小数点以下 n + 1 位の数字を操作します
(小数点以下を、最大 n 桁にします)。
n が負のときは小数点以上 n 桁目を操作... -
BigDecimal
# floor -> Integer (18376.0) -
self 以下の最大整数を返します。
self 以下の最大整数を返します。
@param n 小数点以下の桁数を整数で指定します。
//emlist[][ruby]{
require "bigdecimal"
BigDecimal("1.23456").floor # => 1
BigDecimal("-1.23456").floor # => -2
//}
以下のように引数 n を与えることもできます。
n >= 0 なら、小数点以下 n + 1 位の数字を操作します
(小数点以下を、最大 n 桁にします)。
n が負のときは小数点以上 n 桁目を操作します
(小数点位置から左に少なくとも n 個の 0 が並びます... -
BigDecimal
# floor(n) -> BigDecimal (18376.0) -
self 以下の最大整数を返します。
self 以下の最大整数を返します。
@param n 小数点以下の桁数を整数で指定します。
//emlist[][ruby]{
require "bigdecimal"
BigDecimal("1.23456").floor # => 1
BigDecimal("-1.23456").floor # => -2
//}
以下のように引数 n を与えることもできます。
n >= 0 なら、小数点以下 n + 1 位の数字を操作します
(小数点以下を、最大 n 桁にします)。
n が負のときは小数点以上 n 桁目を操作します
(小数点位置から左に少なくとも n 個の 0 が並びます... -
CSV
:: Table # values _ at(indices _ or _ headers) -> Array (18376.0) -
デフォルトのミックスモードでは、インデックスのリストを与えると行単位の 参照を行い、行の配列を返します。他の方法は列単位の参照と見なします。行 単位の参照では、返り値は行ごとの配列を要素に持つ配列です。
デフォルトのミックスモードでは、インデックスのリストを与えると行単位の
参照を行い、行の配列を返します。他の方法は列単位の参照と見なします。行
単位の参照では、返り値は行ごとの配列を要素に持つ配列です。
探索方法を変更したい場合は CSV::Table#by_col!,
CSV::Table#by_row! を使用してください。
アクセスモードを混在させることはできません。
//emlist[例 ロウモード][ruby]{
require "csv"
row1 = CSV::Row.new(["header1", "header2"], ["row1_1", "row1_2"])
r... -
JSON
:: State # check _ circular? -> bool (18376.0) -
循環参照のチェックを行う場合は、真を返します。 そうでない場合は偽を返します。
循環参照のチェックを行う場合は、真を返します。
そうでない場合は偽を返します。
//emlist[例 ネストをチェックするケース][ruby]{
require "json"
a = [[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[0]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]... -
Kernel
# create _ makefile(target , srcprefix = nil) -> true (18376.0) -
@todo
@todo
Kernel#have_library などの各種検査の結果を元に、拡張ライブラリを
ビルドするための Makefile を生成します。
extconf.rb は普通このメソッドの呼び出しで終ります。
@param target ターゲットとなる拡張ライブラリの名前を指定します。
例えば、拡張ライブラリで "Init_foo" という関数を定義して
いる場合は、"foo" を指定します。
'/' を含む場合は、最後のスラッシュ以降のみをターゲット名
として使用します... -
Net
:: HTTPResponse # value -> nil (18376.0) -
レスポンスが 2xx(成功)でなかった場合に、対応する 例外を発生させます。
レスポンスが 2xx(成功)でなかった場合に、対応する
例外を発生させます。
@raise HTTPError レスポンスが 1xx であるか、 net/http が知らない
種類のレスポンスである場合に発生します。
@raise HTTPRetriableError レスポンスが 3xx である場合に発生します。
@raise HTTPServerException レスポンスが 4xx である場合に発生します。
@raise HTTPFatalError レスポンスが 5xx である場合に発生します。
//emlist[例 レスポンスが 2xx(成功)... -
OptionParser
# on _ tail(*arg , &block) -> self (18376.0) -
オプションを取り扱うためのブロックを自身の持つリストの最後に登録します。
オプションを取り扱うためのブロックを自身の持つリストの最後に登録します。
--version や --help の説明をサマリの最後に表示したい時に便利です。
@param arg OptionParser#on と同様です。
@param block OptionParser#on と同様です。
//emlist[例][ruby]{
require "optparse"
opts = OptionParser.new do |opts|
opts.on_head("-i", "--init")
opts.on("-u", "--update")
opts.on_tai... -
REXML
:: StreamListener # entitydecl(content) -> () (18376.0) -
DTDの実体宣言をパースしたときに呼び出されるコールバックメソッドです。
DTDの実体宣言をパースしたときに呼び出されるコールバックメソッドです。
@param content 実体宣言が配列で渡されます
実体宣言の書き方によって content に渡されるデータの形式が異なります。
//emlist[][ruby]{
require 'rexml/parsers/baseparser'
require 'rexml/parsers/streamparser'
require 'rexml/streamlistener'
xml = <<EOS
<!DOCTYPE root [
<!ENTITY % YN '"Yes"'>
<!ENTITY % YN 'Yes... -
UnboundMethod
# source _ location -> [String , Integer] | nil (18376.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]
/... -
Fiddle
:: Pointer # to _ value -> object (18370.0) -
自身はヒープに確保された Ruby のオブジェクトを指すポインタであると仮定して、 自身が指すオブジェクトを返します。
自身はヒープに確保された Ruby のオブジェクトを指すポインタであると仮定して、
自身が指すオブジェクトを返します。
例:
require 'fiddle'
s = 'abc'
i = Fiddle.dlwrap(s)
cptr = Fiddle::Pointer.new(i)
p cptr.to_value #=> "abc" -
Addrinfo
# family _ addrinfo(host , port) -> Addrinfo (18358.0) -
引数から自身に「似た」Addrinfo オブジェクトを生成します。
引数から自身に「似た」Addrinfo オブジェクトを生成します。
「似た」の意味はプロトコルファミリ、ソケットタイプ、プロトコルが
同じことを意味します。
require 'socket'
Addrinfo.tcp("0.0.0.0", 4649).family_addrinfo("www.ruby-lang.org", 80)
#=> #<Addrinfo: 221.186.184.68:80 TCP (www.ruby-lang.org:80)>
Addrinfo.unix("/tmp/sock").family_addrinfo("/tmp/sock2")... -
Addrinfo
# family _ addrinfo(path) -> Addrinfo (18358.0) -
引数から自身に「似た」Addrinfo オブジェクトを生成します。
引数から自身に「似た」Addrinfo オブジェクトを生成します。
「似た」の意味はプロトコルファミリ、ソケットタイプ、プロトコルが
同じことを意味します。
require 'socket'
Addrinfo.tcp("0.0.0.0", 4649).family_addrinfo("www.ruby-lang.org", 80)
#=> #<Addrinfo: 221.186.184.68:80 TCP (www.ruby-lang.org:80)>
Addrinfo.unix("/tmp/sock").family_addrinfo("/tmp/sock2")... -
BasicSocket
# do _ not _ reverse _ lookup -> bool (18358.0) -
ソケットごとのアドレスからホスト名への逆引きの設定を返します。
ソケットごとのアドレスからホスト名への逆引きの設定を返します。
真ならアドレスからホスト名への逆引きを行いません。
初期値はソケットを生成したときの
BasicSocket.do_not_reverse_lookup の値になります。
require 'socket'
BasicSocket.do_not_reverse_lookup = false
TCPSocket.open("www.ruby-lang.org", 80) {|sock|
p sock.do_not_reverse_lookup # => false
}
BasicSock... -
BigDecimal
# split -> [Integer , String , Integer , Integer] (18358.0) -
BigDecimal 値を 0.xxxxxxx*10**n と表現したときに、 符号 (NaNのときは 0、それ以外は+1か-1になります)、 仮数部分の文字列("xxxxxxx")と、基数(10)、更に指数 n を配列で返します。
BigDecimal 値を 0.xxxxxxx*10**n と表現したときに、
符号 (NaNのときは 0、それ以外は+1か-1になります)、
仮数部分の文字列("xxxxxxx")と、基数(10)、更に指数 n を配列で返します。
//emlist[][ruby]{
require "bigdecimal"
a = BigDecimal("3.14159265")
f, x, y, z = a.split
//}
とすると、f = 1、x = "314159265"、y = 10、z = 1 になります。
従って、以下のようにする事で Float に変換することができます。
//em... -
Method
# source _ location -> [String , Integer] | nil (18358.0) -
ソースコードのファイル名と行番号を配列で返します。
ソースコードのファイル名と行番号を配列で返します。
その手続オブジェクトが ruby で定義されていない(つまりネイティブ
である)場合は nil を返します。
@see Proc#source_location
//emlist[例][ruby]{
# ------- /tmp/foo.rb ---------
class Foo
def foo; end
end
# ----- end of /tmp/foo.rb ----
require '/tmp/foo'
m = Foo.new.method(:foo) # => #<Method: Foo#foo>
m.source... -
Pathname
# cleanpath(consider _ symlink = false) -> Pathname (18358.0) -
余計な "."、".." や "/" を取り除いた新しい Pathname オブジェクトを返します。
余計な "."、".." や "/" を取り除いた新しい Pathname オブジェクトを返します。
cleanpath は、実際にファイルシステムを参照することなく、文字列操作
だけで処理を行います。
@param consider_symlink 真ならパス要素にシンボリックリンクがあった場合
にも問題ないように .. を残します。
//emlist[例][ruby]{
require "pathname"
path = Pathname.new("//.././../")
path # => #<Pa... -
Pathname
# realpath -> Pathname (18358.0) -
余計な "."、".." や "/" を取り除いた新しい Pathname オブジェクトを返します。
余計な "."、".." や "/" を取り除いた新しい Pathname オブジェクトを返します。
また、ファイルシステムをアクセスし、実際に存在するパスを返します。
シンボリックリンクも解決されます。
self が指すパスが存在しない場合は例外 Errno::ENOENT が発生します。
@param basedir ベースディレクトリを指定します。省略するとカレントディレクトリになります。
//emlist[例][ruby]{
require 'pathname'
Dir.rmdir("/tmp/foo") rescue nil
File.unlink("/tmp/b... -
Pathname
# realpath(basedir = nil) -> Pathname (18358.0) -
余計な "."、".." や "/" を取り除いた新しい Pathname オブジェクトを返します。
余計な "."、".." や "/" を取り除いた新しい Pathname オブジェクトを返します。
また、ファイルシステムをアクセスし、実際に存在するパスを返します。
シンボリックリンクも解決されます。
self が指すパスが存在しない場合は例外 Errno::ENOENT が発生します。
@param basedir ベースディレクトリを指定します。省略するとカレントディレクトリになります。
//emlist[例][ruby]{
require 'pathname'
Dir.rmdir("/tmp/foo") rescue nil
File.unlink("/tmp/b... -
BasicSocket
# local _ address -> Addrinfo (18340.0) -
getsockname(2) で得られたローカルアドレス情報を Addrinfo オブジェクトとして返します。
getsockname(2) で得られたローカルアドレス情報を
Addrinfo オブジェクトとして返します。
返されたオブジェクトの Addrinfo#protocol は 0 を
返すことに注意してください。
require 'socket'
TCPSocket.open("www.ruby-lang.org", 80) {|s|
p s.local_address #=> #<Addrinfo: 192.168.0.129:36873 TCP>
}
TCPServer.open("127.0.0.1", 1512) {|serv|
p serv... -
BigDecimal
# eql?(other) -> bool (18340.0) -
self が other と等しい場合に true を、そうでない場合に false を返します。
self が other と等しい場合に true を、そうでない場合に false を返します。
それぞれの値は BigDecimal#coerce で変換して比較される場合があります。
//emlist[][ruby]{
require 'bigdecimal'
BigDecimal('1.0') == 1.0 # => true
//} -
BigDecimal
# modulo(n) -> BigDecimal (18340.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... -
CSV
# col _ sep -> String (18340.0) -
カラム区切り文字列として使用する文字列を返します。
カラム区切り文字列として使用する文字列を返します。
//emlist[例][ruby]{
require "csv"
users =<<-EOS
id|first name|last name|age
1|taro|tanaka|20
2|jiro|suzuki|18
3|ami|sato|19
4|yumi|adachi|21
EOS
csv = CSV.new(users, headers: true, col_sep: "|")
csv.col_sep # => "|"
csv.first.to_a # => [["id", "1"], ["first name", "taro"... -
CSV
# field _ size _ limit -> Integer (18340.0) -
フィールドサイズの最大値を返します。
フィールドサイズの最大値を返します。
//emlist[例][ruby]{
require "csv"
csv = CSV.new(DATA)
csv.field_size_limit # => nil
p csv.read # => [["a", "b"], ["\n2\n2\n", ""]]
DATA.rewind
csv = CSV.new(DATA, field_size_limit: 4)
p csv.field_size_limit # => 4
csv.read # => #<CSV::MalformedCSVError: Field size exceeded on l... -
CSV
# lineno -> Integer (18340.0) -
このファイルから読み込んだ最終行の行番号を返します。 フィールドに含まれる改行はこの値には影響しません。
このファイルから読み込んだ最終行の行番号を返します。
フィールドに含まれる改行はこの値には影響しません。
//emlist[例][ruby]{
require "csv"
csv = CSV.new("header1,header2\nrow1_1,row1_2")
csv.lineno # => 0
csv.readline
csv.lineno # => 1
//} -
CSV
# skip _ blanks? -> bool (18340.0) -
真である場合は、空行を読み飛ばします。
真である場合は、空行を読み飛ばします。
//emlist[例][ruby]{
require "csv"
csv = CSV.new("header1,header2\n\nrow1_1,row1_2")
csv.skip_blanks? # => false
csv.read # => [["header1", "header2"], [], ["row1_1", "row1_2"]]
csv = CSV.new("header1,header2\n\nrow1_1,row1_2", skip_blanks: true)
csv.skip_blanks? # => tr... -
CSV
# unconverted _ fields? -> bool (18340.0) -
パースした結果が unconverted_fields というメソッドを持つ場合に真を返します。 そうでない場合は、偽を返します。
パースした結果が unconverted_fields というメソッドを持つ場合に真を返します。
そうでない場合は、偽を返します。
//emlist[例][ruby]{
require "csv"
csv = CSV.new("date1,date2\n2018-07-09,2018-07-10")
csv.unconverted_fields? # => nil
csv = CSV.new("date1,date2\n2018-07-09,2018-07-10", unconverted_fields: false)
csv.unconverted_fields? # => fals... -
CSV
:: FieldInfo # line -> Integer (18340.0) -
行番号を返します。
行番号を返します。
//emlist[例][ruby]{
require 'csv'
csv = CSV.new("date1,date2,date3\n2018-07-09,2018-07-10\n2018-08-09,2018-08-10", headers: true)
csv.convert do |field,field_info|
p field_info.line
Date.parse(field)
end
p csv.to_a
# => 2
# => 2
# => 3
# => 3
# => [#<CSV::Row "date1":#<Date: 2018-07... -
CSV
:: Row # delete _ if {|header , field| . . . } -> self (18340.0) -
与えられたブロックにヘッダとフィールドのペアを渡して評価します。 評価した結果が真である場合に、その組を自身から削除します。
与えられたブロックにヘッダとフィールドのペアを渡して評価します。
評価した結果が真である場合に、その組を自身から削除します。
@return メソッドチェーンのために自身を返します。
//emlist[例][ruby]{
require "csv"
row = CSV::Row.new(["header1", "header2", "header3", "header4"], ["valid1", "valid2", "invalid", "valid4"])
row # => #<CSV::Row "header1":"valid1" "header2":"valid2" "hea... -
CSV
:: Row # field?(data) -> bool (18340.0) -
自身に与えられた値が含まれている場合は真を返します。 そうでない場合は偽を返します。
自身に与えられた値が含まれている場合は真を返します。
そうでない場合は偽を返します。
@param data この行に含まれているかどうか調べたい値を指定します。
//emlist[例][ruby]{
require "csv"
row = CSV::Row.new(["header1", "header2", "header3", "header4"], [1, 2, 3, 4])
row.field?(1) # => true
row.field?(5) # => false
//} -
CSV
:: Row # field _ row? -> bool (18340.0) -
フィールド行であれば真を返します。そうでなければ偽を返します。
フィールド行であれば真を返します。そうでなければ偽を返します。
//emlist[例][ruby]{
require "csv"
header_row = CSV::Row.new(["header1", "header2"], [], true)
row = CSV::Row.new(["header1", "header2"], [1, 2])
header_row.field_row? # => false
row.field_row? # => true
//} -
CSV
:: Table # by _ col -> CSV :: Table (18340.0) -
カラムモードになっている新しい CSV::Table オブジェクトを返します。
カラムモードになっている新しい CSV::Table オブジェクトを返します。
元のテーブルモードを変更せずにメソッドチェーンできるので便利です。しか
し、大きなデータセットに対しても同じだけメモリを消費するので気をつけて
ください。
このメソッドは複製したテーブルを返すので、破壊的なメソッドはメソッド
チェーンに組込まないようにしてください。
//emlist[例][ruby]{
require "csv"
row1 = CSV::Row.new(["header1", "header2"], ["row1_1", "row1_2"])
row2 = CSV::Row.new(["... -
CSV
:: Table # by _ col! -> self (18340.0) -
自身をカラムモードに変更します。
自身をカラムモードに変更します。
再びモードが変更されるまで、いくつかのメソッドはカラム単位で動きます。
@return 必ず自身を返すので安全にメソッドチェーンできます。
//emlist[例][ruby]{
require "csv"
row1 = CSV::Row.new(["header1", "header2"], ["row1_1", "row1_2"])
row2 = CSV::Row.new(["header1", "header2"], ["row2_1", "row2_2"])
table = CSV::Table.new([row1, row2])
table.... -
CSV
:: Table # by _ col _ or _ row -> CSV :: Table (18340.0) -
ミックスモードになっている新しい CSV::Table オブジェクトを返します。
ミックスモードになっている新しい CSV::Table オブジェクトを返します。
元のテーブルモードを変更せずにメソッドチェーンできるので便利です。しか
し、大きなデータセットに対しても同じだけメモリを消費するので気をつけて
ください。
このメソッドは複製したテーブルを返すので、破壊的なメソッドはメソッド
チェーンに組込まないようにしてください。
//emlist[例][ruby]{
require "csv"
row1 = CSV::Row.new(["header1", "header2"], ["row1_1", "row1_2"])
row2 = CSV::Row.new([... -
CSV
:: Table # by _ col _ or _ row! -> self (18340.0) -
自身をミックスモードに変更します。
自身をミックスモードに変更します。
再びモードが変更されるまで、いくつかのメソッドはミックスモードで動きます。
デフォルトのミックスモードではインデックスによるアクセスは行単位での参
照であると見なします。しかし、他の方法ではヘッダによる列単位での参照で
あると見なします。
@return 必ず自身を返すので安全にメソッドチェーンできます。
//emlist[例][ruby]{
require "csv"
row1 = CSV::Row.new(["header1", "header2"], ["row1_1", "row1_2"])
row2 = CSV::Row.new(["h... -
Class
# json _ creatable? -> bool (18340.0) -
シリアライズされた JSON 形式の文字列から、インスタンスを作成するのにこのクラスを使用できる場合は 真を返します。そうでない場合は、偽を返します。
シリアライズされた JSON 形式の文字列から、インスタンスを作成するのにこのクラスを使用できる場合は
真を返します。そうでない場合は、偽を返します。
このメソッドが真を返すクラスは json_create というメソッドを実装していなければなりません。
また json_create の第一引数は必要なデータを含むハッシュを期待しています。
//emlist[例][ruby]{
require "json"
String.json_creatable? # => true
Dir.json_creatable? # => false
//} -
ERB
# filename -> String (18340.0) -
エラーメッセージを表示する際のファイル名を取得します。
エラーメッセージを表示する際のファイル名を取得します。
//emlist[例][ruby]{
require 'erb'
filename = 'example.rhtml'
erb = ERB.new(File.read(filename))
erb.filename # => nil
erb.filename = filename
erb.filename # =>"example.rhtml"
//} -
ERB
# filename= -> String (18340.0) -
エラーメッセージを表示する際のファイル名を設定します。
エラーメッセージを表示する際のファイル名を設定します。
filename を設定しておくことにより、エラーが発生した eRuby スクリプトの特定が容易になります。filename を設定していない場合は、エラー発生箇所は「 (ERB) 」という出力となります。
//emlist[例][ruby]{
require 'erb'
filename = 'example.rhtml'
erb = ERB.new(File.read(filename))
erb.filename # => nil
erb.filename = filename
erb.filename # =>"exampl... -
ERB
# result(b=TOPLEVEL _ BINDING) -> String (18340.0) -
ERB を b の binding で実行し、結果の文字列を返します。
ERB を b の binding で実行し、結果の文字列を返します。
@param b eRubyスクリプトが実行されるときのbinding
//emlist[例][ruby]{
require 'erb'
erb = ERB.new("test <%= test1 %>\ntest <%= test2 %>\n")
test1 = "foo"
test2 = "bar"
puts erb.result
# test foo
# test bar
//}
@see ERB#result_with_hash -
Enumerable
# all? -> bool (18340.0) -
すべての要素が真である場合に true を返します。 偽である要素があれば、ただちに false を返します。
すべての要素が真である場合に true を返します。
偽である要素があれば、ただちに false を返します。
ブロックを伴う場合は、各要素に対してブロックを評価し、すべての結果
が真である場合に true を返します。ブロックが偽を返した時点で、
ただちに false を返します。
自身に要素が存在しない場合は true を返します。
@param pattern ブロックの代わりに各要素に対して pattern === item を評価します。
//emlist[例][ruby]{
require 'set'
# すべて正の数か?
p Set[5, 6, 7].all? {|... -
Enumerable
# all? {|item| . . . } -> bool (18340.0) -
すべての要素が真である場合に true を返します。 偽である要素があれば、ただちに false を返します。
すべての要素が真である場合に true を返します。
偽である要素があれば、ただちに false を返します。
ブロックを伴う場合は、各要素に対してブロックを評価し、すべての結果
が真である場合に true を返します。ブロックが偽を返した時点で、
ただちに false を返します。
自身に要素が存在しない場合は true を返します。
@param pattern ブロックの代わりに各要素に対して pattern === item を評価します。
//emlist[例][ruby]{
require 'set'
# すべて正の数か?
p Set[5, 6, 7].all? {|... -
Enumerable
# all?(pattern) -> bool (18340.0) -
すべての要素が真である場合に true を返します。 偽である要素があれば、ただちに false を返します。
すべての要素が真である場合に true を返します。
偽である要素があれば、ただちに false を返します。
ブロックを伴う場合は、各要素に対してブロックを評価し、すべての結果
が真である場合に true を返します。ブロックが偽を返した時点で、
ただちに false を返します。
自身に要素が存在しない場合は true を返します。
@param pattern ブロックの代わりに各要素に対して pattern === item を評価します。
//emlist[例][ruby]{
require 'set'
# すべて正の数か?
p Set[5, 6, 7].all? {|... -
File
:: Stat # symlink? -> false (18340.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
//}
... -
IO
# fcntl(cmd , arg = 0) -> Integer (18340.0) -
IOに対してシステムコール fcntl を実行します。 機能の詳細は fcntl(2) を参照してください。 fcntl(2) が返した整数を返します。
IOに対してシステムコール fcntl を実行します。
機能の詳細は fcntl(2) を参照してください。
fcntl(2) が返した整数を返します。
@param cmd IO に対するコマンドを、添付ライブラリ fcntl が提供している定数で指定します。
@param arg cmd に対する引数を整数、文字列、booleanのいずれかで指定します。
整数の時にはその値を fcntl(2) に渡します。
文字列の場合には Array#pack した構造体だとみなして渡します。
arg が nil か false の... -
IO
# flush -> self (18340.0) -
IO ポートの内部バッファをフラッシュします。
IO ポートの内部バッファをフラッシュします。
このメソッドを使ったとき、即座にメタデータを更新することは保証されません(特にWindowsで)。
即座にメタデータも更新したいときは IO#fsync を使います。
@raise IOError 自身が書き込み用にオープンされていなければ発生します。
@raise Errno::EXXX fflush(3) が失敗した場合に発生します。
//emlist[例][ruby]{
require "tempfile"
Tempfile.open("testtmpfile") do |f|
f.print "test"
File.r... -
JSON
:: State # allow _ nan? -> bool (18340.0) -
NaN, Infinity, -Infinity を生成できる場合、真を返します。 そうでない場合は偽を返します。
NaN, Infinity, -Infinity を生成できる場合、真を返します。
そうでない場合は偽を返します。
//emlist[例][ruby]{
require "json"
json_state = JSON::State.new({})
json_state.allow_nan? # => false
json_state = JSON::State.new(allow_nan: true)
json_state.allow_nan? # => true
//}
@see 4627 -
JSON
:: State # array _ nl -> String (18340.0) -
JSON の配列の後に出力する文字列を返します。
JSON の配列の後に出力する文字列を返します。
//emlist[例][ruby]{
require "json"
json_state = JSON::State.new({})
json_state.array_nl # => ""
json_state = JSON::State.new(array_nl: "\n")
json_state.array_nl # => "\n"
//} -
JSON
:: State # array _ nl=(str) (18340.0) -
JSON の配列の後に出力する文字列をセットします。
JSON の配列の後に出力する文字列をセットします。
//emlist[例][ruby]{
require "json"
json_state = JSON::State.new({})
json_state.array_nl # => ""
json_state.array_nl = "\n"
json_state.array_nl # => "\n"
//} -
JSON
:: State # object _ nl -> String (18340.0) -
JSON 形式の文字列中に現れる JavaScript のオブジェクトの行末に挿入する文字列を返します。
JSON 形式の文字列中に現れる JavaScript のオブジェクトの行末に挿入する文字列を返します。
//emlist[例][ruby]{
require "json"
json_state = JSON::State.new(object_nl: "")
json_state.object_nl # => ""
puts JSON.generate([1, 2, { name: "tanaka", age: 19 }], json_state)
# => [1,2,{"name":"tanaka","age":19}]
json_state = JSON:... -
JSON
:: State # object _ nl=(string) (18340.0) -
JSON 形式の文字列中に現れる JavaScript のオブジェクトの行末に挿入する文字列をセットします。
JSON 形式の文字列中に現れる JavaScript のオブジェクトの行末に挿入する文字列をセットします。
@param string JSON 形式の文字列中に現れる JavaScript のオブジェクトの行末に挿入する文字列を指定します。
//emlist[例][ruby]{
require "json"
json_state = JSON::State.new(object_nl: "")
json_state.object_nl # => ""
puts JSON.generate([1, 2, { name: "tanaka", age: 19 }]... -
Logger
# fatal(progname = nil) -> true (18340.0) -
FATAL 情報を出力します。
FATAL 情報を出力します。
ブロックを与えなかった場合は、progname をメッセージとしてログを出力します。
ブロックを与えた場合は、ブロックを評価した結果をメッセージとして
ログを出力します。
引数とブロックを同時に与えた場合は、progname をプログラム名、ブロックを評価した
結果をメッセージとしてログを出力します。
@param progname ブロックを与えない場合は、メッセージとして文字列または例外オブジェクトを指定します。
ブロックを与えた場合は、プログラム名を文字列として与えます。
//emlist[例][ruby]{
r... -
Logger
# fatal(progname = nil) { . . . } -> true (18340.0) -
FATAL 情報を出力します。
FATAL 情報を出力します。
ブロックを与えなかった場合は、progname をメッセージとしてログを出力します。
ブロックを与えた場合は、ブロックを評価した結果をメッセージとして
ログを出力します。
引数とブロックを同時に与えた場合は、progname をプログラム名、ブロックを評価した
結果をメッセージとしてログを出力します。
@param progname ブロックを与えない場合は、メッセージとして文字列または例外オブジェクトを指定します。
ブロックを与えた場合は、プログラム名を文字列として与えます。
//emlist[例][ruby]{
r... -
Logger
# fatal? -> bool (18340.0) -
現在の Logger オブジェクトが FATAL 以上のログレベルのメッセージを記録するなら 真を返します。
現在の Logger オブジェクトが FATAL 以上のログレベルのメッセージを記録するなら
真を返します。
//emlist[例][ruby]{
require 'logger'
logger = Logger.new(STDOUT, level: Logger::Severity::FATAL)
logger.fatal? # => true
logger.level = 5
logger.fatal? # => false
//} -
Logger
# level -> Integer (18340.0) -
レシーバにセットされているログレベルを取得します。
レシーバにセットされているログレベルを取得します。
//emlist[例][ruby]{
require 'logger'
logger = Logger.new(STDOUT)
logger.level # => 0
logger.level = Logger::Severity::ERROR
logger.level # => 3
//} -
Logger
# log(severity , message = nil , progname = nil) -> true (18340.0) -
メッセージをログに記録します。
メッセージをログに記録します。
ブロックを与えた場合はブロックを評価した返り値をメッセージとしてログに記録します。
ユーザがこのメソッドを直接使うことはあまりありません。
@param severity ログレベル。Logger クラスで定義されている定数を指定します。
この値がレシーバーに設定されているレベルよりも低い場合、
メッセージは記録されません。
@param message ログに出力するメッセージを文字列か例外オブジェクトを指定します。
省略すると nil が用いられます。
@... -
Logger
# log(severity , message = nil , progname = nil) { . . . } -> true (18340.0) -
メッセージをログに記録します。
メッセージをログに記録します。
ブロックを与えた場合はブロックを評価した返り値をメッセージとしてログに記録します。
ユーザがこのメソッドを直接使うことはあまりありません。
@param severity ログレベル。Logger クラスで定義されている定数を指定します。
この値がレシーバーに設定されているレベルよりも低い場合、
メッセージは記録されません。
@param message ログに出力するメッセージを文字列か例外オブジェクトを指定します。
省略すると nil が用いられます。
@...