ライブラリ
クラス
-
ARGF
. class (9) - Addrinfo (2)
- Array (8)
- BasicObject (2)
- CSV (3)
-
CSV
:: Row (3) - Class (1)
- Data (2)
- Date (1)
- DateTime (1)
- Dir (1)
- ERB (2)
-
Encoding
:: Converter (2) -
Encoding
:: InvalidByteSequenceError (1) -
Encoding
:: UndefinedConversionError (1) - Enumerator (3)
-
Enumerator
:: Lazy (2) - File (1)
-
File
:: Stat (1) -
Gem
:: Requirement (1) - IO (3)
-
IRB
:: OutputMethod (1) - Integer (2)
-
JSON
:: State (6) - MatchData (1)
- Matrix (4)
- Method (2)
- Module (5)
-
Net
:: HTTP (9) -
Net
:: POPMail (6) -
Net
:: SMTP (2) - Object (10)
- OptionParser (6)
- Proc (1)
-
RDoc
:: Markup (3) -
Rake
:: Application (1) - Range (1)
- Regexp (5)
-
RubyVM
:: AbstractSyntaxTree :: Node (1) -
RubyVM
:: InstructionSequence (6) - Set (2)
- SignalException (1)
- String (10)
- StringIO (1)
- StringScanner (5)
- Struct (2)
- Thread (4)
-
Thread
:: Backtrace :: Location (4) -
Thread
:: ConditionVariable (2) -
Thread
:: Queue (3) -
Thread
:: SizedQueue (3) - ThreadGroup (1)
- Time (1)
- TracePoint (2)
- UnboundMethod (2)
- WIN32OLE (2)
-
WIN32OLE
_ EVENT (2) -
WIN32OLE
_ METHOD (14) -
WIN32OLE
_ PARAM (8) -
WIN32OLE
_ TYPE (6) -
WIN32OLE
_ TYPELIB (7) -
WIN32OLE
_ VARIABLE (8) -
Zlib
:: GzipReader (19) -
Zlib
:: GzipWriter (14)
モジュール
- Enumerable (6)
- FileUtils (1)
-
JSON
:: Generator :: GeneratorMethods :: String (1) - Kernel (6)
-
Net
:: HTTPHeader (6) -
OpenSSL
:: Buffering (1) -
Rake
:: TaskManager (1)
キーワード
- != (1)
- << (3)
- === (3)
- =~ (1)
- [] (1)
-
_ getproperty (1) -
_ setproperty (1) -
absolute
_ path (2) - add (1)
-
add
_ html (1) -
add
_ row (1) -
add
_ special (1) -
add
_ word _ pair (1) -
alias
_ method (1) - all (2)
-
base
_ label (2) -
bind
_ call (2) - broadcast (1)
- chardev? (1)
- close (1)
- comment= (1)
- concat (1)
-
connect
_ from (2) - convert (1)
- cycle (4)
- deconstruct (2)
-
deconstruct
_ keys (5) - default (1)
-
default
_ event _ sources (1) - deq (2)
- disasm (1)
- disassemble (1)
- dispid (1)
- dump (1)
- each (14)
-
each
_ byte (2) -
each
_ capitalized _ name (1) -
each
_ header (1) -
each
_ key (1) -
each
_ line (6) -
each
_ name (1) -
each
_ value (1) -
each
_ with _ index (2) -
enum
_ for (2) - eof (2)
- eof? (2)
-
error
_ bytes (1) -
error
_ char (1) -
eval
_ script (1) -
event
_ interface (1) - fetch (3)
- file (1)
- finish (1)
- flock (1)
- flush (1)
- get2 (2)
- getc (1)
- gets (1)
- gsub (4)
- guid (2)
- handler= (1)
- help (1)
- helpcontext (2)
- helpfile (2)
- helpstring (1)
-
ignore
_ deadlock= (1) -
in
_ namespace (1) - inherited (1)
- initialize (1)
- input? (1)
-
insert
_ output (1) - inspect (6)
-
instruction
_ sequence (1) - invkind (1)
-
invoke
_ kind (1) - label (1)
- lineno (1)
- lineno= (1)
- mail (2)
-
major
_ version (1) - match (2)
-
max
_ by (4) -
method
_ removed (1) -
minor
_ version (1) - mtime= (1)
- name (4)
- next (1)
-
object
_ nl (1) -
object
_ nl= (1) -
offset
_ vtbl (1) -
ole
_ type (2) -
ole
_ type _ detail (1) -
on
_ event (1) -
on
_ head (1) -
on
_ tail (1) - optional? (1)
-
orig
_ name= (1) - output? (1)
- owner (1)
- path (2)
- peek (1)
- peep (1)
- pid (1)
- pointer= (1)
- pop (4)
- pos (2)
- pos= (1)
- post2 (2)
- prepend (1)
- prepended (1)
- print (1)
- printf (1)
-
public
_ send (2) - putc (1)
- read (2)
- readchar (1)
- readline (1)
- readlines (1)
- ready (1)
- refine (1)
-
request
_ get (2) -
request
_ post (2) -
respond
_ to? (1) - result (1)
-
return
_ type (1) -
return
_ vtype (1) - retval? (1)
- rewind (1)
- run (1)
-
send
_ request (1) - separator (1)
- sh (1)
- shift (2)
- signal (1)
- signm (1)
-
singleton
_ method _ removed (1) -
size
_ opt _ params (1) -
size
_ params (1) -
source
_ location (1) - space (1)
- space= (1)
-
space
_ before (1) -
space
_ before= (1) - src (1)
- sub (3)
- tell (2)
- times (2)
-
to
_ csv (1) -
to
_ enum (2) -
to
_ json (1) -
to
_ s (8) -
top
_ level (1) -
try
_ cpp (2) -
try
_ link (2) - unscan (1)
- upto (1)
- value (1)
-
variable
_ kind (1) - variables (1)
- varkind (1)
- ver (1)
- version (1)
- visible? (1)
- wakeup (1)
-
with
_ index (2) -
with
_ object (2) - write (1)
- xmp (1)
- ~ (1)
検索結果
先頭5件
-
Zlib
:: GzipWriter # puts(*str) -> nil (63679.0) -
各引数を自身に出力し、それぞれの後に改行を出力します。
各引数を自身に出力し、それぞれの後に改行を出力します。
@param str 出力したいオブジェクトを指定します。
require 'zlib'
filename='hoge1.gz'
fw = File.open(filename, "w")
Zlib::GzipWriter.wrap(fw, Zlib::BEST_COMPRESSION){|gz|
gz.puts "fuga"
}
fr = File.open(filename)
Zlib::GzipReader.wrap(fr){|gz|
puts gz.read
}
#=> ... -
ARGF
. class # puts(*arg) -> nil (63625.0) -
引数と改行を順番に処理対象のファイルに出力します。 引数がなければ改行のみを出力します。
引数と改行を順番に処理対象のファイルに出力します。
引数がなければ改行のみを出力します。
c:ARGF#inplace時にのみ使用できます。
また $stdout への代入の影響を受けません。
それ以外は Kernel.#puts と同じです。
@param arg 出力するオブジェクトを任意個指定します。 -
StringIO
# puts(*obj) -> nil (63391.0) -
obj と改行を順番に自身に出力します。引数がなければ改行のみを出力します。 詳しい仕様は Kernel.#puts を参照して下さい。
obj と改行を順番に自身に出力します。引数がなければ改行のみを出力します。
詳しい仕様は Kernel.#puts を参照して下さい。
@param obj 書き込みたいオブジェクトを指定します。
@raise IOError 自身が書き込み用にオープンされていなければ発生します。
//emlist[例][ruby]{
require "stringio"
a = StringIO.new("", 'r+')
a.puts("hoge", "bar", "foo")
a.string #=> "hoge\nbar\nfoo\n"
//} -
OpenSSL
:: Buffering # puts(*objs) -> nil (63325.0) -
各オブジェクトを出力し、それぞれの後に改行を出力します。
各オブジェクトを出力し、それぞれの後に改行を出力します。
IO#puts と同様です。
@param objs 出力したいオブジェクト -
IRB
:: OutputMethod # puts(*objs) -> object (63307.0) -
各 obj を self に出力し、それぞれの後に改行を出力します。
各 obj を self に出力し、それぞれの後に改行を出力します。
@param objs 任意のオブジェクトを指定します。 -
CSV
# puts(row) -> self (45625.0) -
自身に row を追加します。
自身に row を追加します。
データソースは書き込み用にオープンされていなければなりません。
@param row 配列か CSV::Row のインスタンスを指定します。
CSV::Row のインスタンスが指定された場合は、CSV::Row#fields の値
のみが追加されます。
//emlist[例 配列を指定][ruby]{
require "csv"
File.write("test.csv", <<CSV)
id,first name,last name,age
1,taro,tanaka,20
2,jiro,suzuki,18... -
WIN32OLE
_ VARIABLE # variable _ kind -> String (27622.0) -
変数の種類(VARKIND)を取得します。
変数の種類(VARKIND)を取得します。
この変数の種類を示す文字列を返します。
@return VARKINDに対応する文字列を返します。
tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'XlSheetType')
puts tobj.variables.map {|v| v.variable_kind}.uniq # => CONSTANT
返送値は以下のいずれかとなります。
: PERINSTANCE
インスタンス毎の変数。構造体やユーザ定義体のフィールド。(0)
: STATI... -
Encoding
:: Converter # convert(source _ string) -> String (27466.0) -
与えられた文字列を変換して、変換できた結果を返します。 引数の末尾の文字がバイト列の途中で終わっている場合、そのバイト列は変換器内に取り置かれます。 変換を終了させるには Encoding::Converter#finish を呼びます。
与えられた文字列を変換して、変換できた結果を返します。
引数の末尾の文字がバイト列の途中で終わっている場合、そのバイト列は変換器内に取り置かれます。
変換を終了させるには Encoding::Converter#finish を呼びます。
Encoding::Converter を用いると、文字列の一部または全部を渡して変換を行うことができます。よって、不正なバイトを意識せずにストリームから読み出した文字列を変換したいときには Encoding::Converter が適します。
なお、Encoding::Converter#convert では、これらの例外を捕獲しても、例外を起こしたと... -
Zlib
:: GzipReader # rewind -> 0 (27394.0) -
ファイルポインタを Zlib::GzipReader.new を呼び出した直後の 時点に戻します。関連付けられている IO オブジェクトに seek メソッドが定義されている必要があります。
ファイルポインタを Zlib::GzipReader.new を呼び出した直後の
時点に戻します。関連付けられている IO オブジェクトに
seek メソッドが定義されている必要があります。
require 'zlib'
=begin
# hoge.gz がない場合はこれで作成する。
Zlib::GzipWriter.open('hoge.gz') { |gz|
gz.puts 'hoge'
gz.puts 'fuga'
}
=end
gz = Zlib::GzipReader.open('hoge.gz')
puts gz.gets #... -
Encoding
:: Converter # insert _ output(string) -> nil (27376.0) -
変換器内のバッファに文字列を挿入します。 バッファに保持された文字列は、次の変換時の変換結果と一緒に返されます。
変換器内のバッファに文字列を挿入します。
バッファに保持された文字列は、次の変換時の変換結果と一緒に返されます。
変換先がステートフルなエンコーディングであった場合、
挿入された文字列は状態に基づいて変換され、状態を更新します。
このメソッドは変換に際してエラーが発生した際にのみ利用されるべきです。
@param string 挿入する文字列
//emlist[][ruby]{
ec = Encoding::Converter.new("utf-8", "iso-8859-1")
src = "HIRAGANA LETTER A is \u{3042}."
dst = ""
p ec.... -
Zlib
:: GzipReader # readline(rs = $ / ) -> String (27376.0) -
IO クラスの同名メソッドIO#readlineと同じです。
IO クラスの同名メソッドIO#readlineと同じです。
但し、gzip ファイル中に
エラーがあった場合 Zlib::Error 例外や
Zlib::GzipFile::Error 例外が発生します。
gzip ファイルのフッターの処理に注意して下さい。
gzip ファイルのフッターには圧縮前データのチェックサムが
記録されています。GzipReader オブジェクトは、次の時に展開した
データとフッターの照合を行い、エラーがあった場合は
Zlib::GzipFile::NoFooter, Zlib::GzipFile::CRCError,
Zlib::GzipFile::Lengt... -
Zlib
:: GzipReader # readchar -> Integer (27358.0) -
IO クラスの同名メソッドIO#readcharと同じです。
IO クラスの同名メソッドIO#readcharと同じです。
但し、gzip ファイル中に
エラーがあった場合 Zlib::Error 例外や
Zlib::GzipFile::Error 例外が発生します。
gzip ファイルのフッターの処理に注意して下さい。
gzip ファイルのフッターには圧縮前データのチェックサムが
記録されています。GzipReader オブジェクトは、次の時に展開した
データとフッターの照合を行い、エラーがあった場合は
Zlib::GzipFile::NoFooter, Zlib::GzipFile::CRCError,
Zlib::GzipFile::Lengt... -
Encoding
:: InvalidByteSequenceError # error _ bytes -> String (27340.0) -
エラー発生時に捨てられたバイト列を返します。
エラー発生時に捨てられたバイト列を返します。
//emlist[例][ruby]{
ec = Encoding::Converter.new("EUC-JP", "ISO-8859-1")
begin
ec.convert("abc\xA1\xFFdef")
rescue Encoding::InvalidByteSequenceError
p $!
#=> #<Encoding::InvalidByteSequenceError: "\xA1" followed by "\xFF" on EUC-JP>
puts $!.error_bytes.dump ... -
Zlib
:: GzipReader # readlines(rs = $ / ) -> Array (27340.0) -
IO クラスの同名メソッドIO#readlinesと同じです。
IO クラスの同名メソッドIO#readlinesと同じです。
但し、gzip ファイル中に
エラーがあった場合 Zlib::Error 例外や
Zlib::GzipFile::Error 例外が発生します。
gzip ファイルのフッターの処理に注意して下さい。
gzip ファイルのフッターには圧縮前データのチェックサムが
記録されています。GzipReader オブジェクトは、次の時に展開した
データとフッターの照合を行い、エラーがあった場合は
Zlib::GzipFile::NoFooter, Zlib::GzipFile::CRCError,
Zlib::GzipFile::Leng... -
RDoc
:: Markup # add _ word _ pair(start , stop , name) -> () (27322.0) -
start と stop ではさまれる文字列(例. *bold*)をフォーマットの対象にしま す。
start と stop ではさまれる文字列(例. *bold*)をフォーマットの対象にしま
す。
@param start 開始となる文字列を指定します。
@param stop 終了となる文字列を指定します。start と同じ文字列にする事も
可能です。
@param name SM::ToHtml などのフォーマッタに識別させる時の名前を
Symbol で指定します。
@raise RuntimeError start に "<" で始まる文字列を指定した場合に発生します。
例:
require 'rdoc/markup/... -
Thread
# ignore _ deadlock=(bool) (27322.0) -
デッドロック検知を無視する機能をon/offします。デフォルト値はfalseです。
デッドロック検知を無視する機能をon/offします。デフォルト値はfalseです。
trueを渡すとデッドロックを検知しなくなります。
//emlist[][ruby]{
Thread.ignore_deadlock = true
queue = Thread::Queue.new
trap(:SIGUSR1){queue.push "Received signal"}
# ignore_deadlockがfalseだとエラーが発生する
puts queue.pop
//}
@see Thread#ignore_deadlock -
Zlib
:: GzipReader # read(length = nil) -> String | nil (27322.0) -
IO クラスの同名メソッドIO#readと同じです。
IO クラスの同名メソッドIO#readと同じです。
但し、gzip ファイル中に
エラーがあった場合 Zlib::Error 例外や
Zlib::GzipFile::Error 例外が発生します。
gzip ファイルのフッターの処理に注意して下さい。
gzip ファイルのフッターには圧縮前データのチェックサムが
記録されています。GzipReader オブジェクトは、次の時に展開した
データとフッターの照合を行い、エラーがあった場合は
Zlib::GzipFile::NoFooter, Zlib::GzipFile::CRCError,
Zlib::GzipFile::LengthErr... -
Zlib
:: GzipWriter # orig _ name=(filename) (27322.0) -
gzip ファイルのヘッダーに記録する元ファイル名を指定します。
gzip ファイルのヘッダーに記録する元ファイル名を指定します。
Zlib::GzipWriter#write 等の書き込み系メソッドを
呼んだ後で指定しようとすると Zlib::GzipFile::Error 例外が
発生します。
@param filename gzip ファイルのヘッダーに記録する元ファイル名を文字列で指定します。
@return filename を返します。
require 'zlib'
filename='hoge1.gz'
fw = File.open(filename, "w")
Zlib::GzipWriter.wrap(fw, Zl... -
Zlib
:: GzipWriter # print(*str) -> nil (27322.0) -
引数を自身に順に出力します。引数を省略した場合は、$_ を出力します。
引数を自身に順に出力します。引数を省略した場合は、$_ を出力します。
@param str 出力するオブジェクトを指定します。
require 'zlib'
filename='hoge1.gz'
fw = File.open(filename, "w")
Zlib::GzipWriter.wrap(fw, Zlib::BEST_COMPRESSION){|gz|
gz.print "ugo"
}
fr = File.open(filename)
Zlib::GzipReader.wrap(fr){|gz|
puts gz.read
}... -
Zlib
:: GzipWriter # printf(format , *args) -> nil (27322.0) -
C 言語の printf と同じように、format に従い引数 を文字列に変換して、自身に出力します。
C 言語の printf と同じように、format に従い引数
を文字列に変換して、自身に出力します。
@param format フォーマット文字列を指定します。print_format を参照してください。
@param args フォーマットされるオブジェクトを指定します。
require 'zlib'
filename='hoge1.gz'
fw = File.open(filename, "w")
Zlib::GzipWriter.wrap(fw, Zlib::BEST_COMPRESSION){|gz|
gz.printf("\n%9s", "b... -
Zlib
:: GzipWriter # write(*str) -> Integer (27322.0) -
自身に str を出力します。str が文字列でなけ れば to_s による文字列化を試みます。
自身に str を出力します。str が文字列でなけ
れば to_s による文字列化を試みます。
@param str 出力する文字列を指定します。文字列でない場合は to_s で文字列に変換します。
@return 実際に出力できたバイト数を返します。
require 'zlib'
filename='hoge1.gz'
fw = File.open(filename, "w")
Zlib::GzipWriter.wrap(fw, Zlib::BEST_COMPRESSION){|gz|
gz.write "foo"
}
fr = File.open... -
TracePoint
# instruction _ sequence -> RubyVM :: InstructionSequence (18922.0) -
script_compiledイベント発生時にコンパイルされた RubyVM::InstructionSequenceインスタンスを返します。
script_compiledイベント発生時にコンパイルされた
RubyVM::InstructionSequenceインスタンスを返します。
//emlist[例][ruby]{
TracePoint.new(:script_compiled) do |tp|
p tp.instruction_sequence # => <RubyVM::InstructionSequence:block in <main>@(eval):1>
end.enable do
eval("puts 'hello'")
end
//}
@raise RuntimeError :script_comp... -
TracePoint
# eval _ script -> String | nil (18640.0) -
script_compiledイベント発生時にコンパイルされたソースコードを返します。 ファイルから読み込んだ場合は、nilを返します。
script_compiledイベント発生時にコンパイルされたソースコードを返します。
ファイルから読み込んだ場合は、nilを返します。
//emlist[例][ruby]{
TracePoint.new(:script_compiled) do |tp|
p tp.eval_script # => "puts 'hello'"
end.enable do
eval("puts 'hello'")
end
//}
@raise RuntimeError :script_compiled イベントのための
イベントフックの外側で実行した場合に... -
Gem
:: Requirement # concat(requirements) -> Array (18622.0) -
新しい条件(配列)を自身の条件に破壊的に加えます。
新しい条件(配列)を自身の条件に破壊的に加えます。
@param requirements 条件の配列を指定します。
//emlist[][ruby]{
req = Gem::Requirement.new("< 5.0")
req.concat(["= 1.9"])
puts req # => < 5.0, = 1.9
//} -
Net
:: HTTP # send _ request(name , path , data = nil , header = nil) -> Net :: HTTPResponse (18622.0) -
HTTP リクエストをサーバに送り、そのレスポンスを Net::HTTPResponse のインスタンスとして返します。
HTTP リクエストをサーバに送り、そのレスポンスを
Net::HTTPResponse のインスタンスとして返します。
@param name リクエストのメソッド名を文字列で与えます。
@param path リクエストのパスを文字列で与えます。
@param data リクエストのボディを文字列で与えます。
@param header リクエストのヘッダをハッシュで与えます。
//emlist[例][ruby]{
response = http.send_request('GET', '/index.html')
puts response.body
//}
@see Net::H... -
WIN32OLE
_ METHOD # helpstring -> String | nil (18622.0) -
メソッドのヘルプ文字列を取得します。
メソッドのヘルプ文字列を取得します。
helpstringは、IDEがメソッドのバルーンヘルプを表示するような場合に利用可
能な、1行程度でメソッドを説明する文字列です。
@return ヘルプ文字列を返します。未定義ならばnilを返します。
tobj = WIN32OLE_TYPE.new('Microsoft Internet Controls', 'IWebBrowser')
method = WIN32OLE_METHOD.new(tobj, 'Navigate')
puts method.helpstring # => Navigates to a URL o... -
WIN32OLE
_ TYPE # variables -> [WIN32OLE _ VARIABLE] (18622.0) -
型が持つ変数を取得します。
型が持つ変数を取得します。
型がEnum(列挙型)やユーザ定義型の場合、メンバ変数の情報を
WIN32OLE_VARIABLEオブジェクトの配列として返します。
@return 型が持つ変数情報をWIN32OLE_VARIABLEの配列として返します。
変数を持たない場合は空配列を返します。
@raise WIN32OLERuntimeError 型属性が取得できない場合に通知します。
tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'XlSheetType')
vars = to... -
Object
# respond _ to?(name , include _ all = false) -> bool (18430.0) -
オブジェクトがメソッド name を持つとき真を返します。
オブジェクトがメソッド name を持つとき真を返します。
オブジェクトが メソッド name を持つというのは、
オブジェクトが メソッド name に応答できることをいいます。
Windows での Process.fork や GNU/Linux での File.lchmod の
ような NotImplementedError が発生する場合は false を返します。
※ NotImplementedError が発生する場合に false を返すのは
Rubyの組み込みライブラリや標準ライブラリなど、C言語で実装されているメソッドのみです。
Rubyで実装されたメソッドで N... -
Module
# prepend(*modules) -> self (18412.0) -
指定したモジュールを self の継承チェインの先頭に「追加する」ことで self の定数、メソッド、モジュール変数を「上書き」します。
指定したモジュールを self の継承チェインの先頭に「追加する」ことで
self の定数、メソッド、モジュール変数を「上書き」します。
継承チェイン上で、self のモジュール/クラスよりも「手前」に
追加されるため、結果として self で定義されたメソッドは
override されます。
modules で指定したモジュールは後ろから順に処理されるため、
modules の先頭が最も優先されます。
また、継承によってこの「上書き」を処理するため、prependの引数として
渡したモジュールのインスタンスメソッドでsuperを呼ぶことで
self のモジュール/クラスのメソッドを呼び... -
Net
:: SMTP # open _ message _ stream(from _ addr , *to _ addrs) {|f| . . . . } -> () (18412.0) -
メール書き込みの準備をし、書き込み先のストリームオブジェクトを ブロックに渡します。ブロック終了後、書きこんだ結果が 送られます。
メール書き込みの準備をし、書き込み先のストリームオブジェクトを
ブロックに渡します。ブロック終了後、書きこんだ結果が
送られます。
渡されるストリームオブジェクトは以下のメソッドを持っています。
* puts(str = '') strを出力して CR LFを出力
* print(str) strを出力
* printf(fmt, *args) sprintf(fmt,*args) を出力
* write(str):: str を出力して書き込んだバイト数を返す
* <<(str):: str を出力してストリームオブジェ... -
Net
:: SMTP # ready(from _ addr , *to _ addrs) {|f| . . . . } -> () (18412.0) -
メール書き込みの準備をし、書き込み先のストリームオブジェクトを ブロックに渡します。ブロック終了後、書きこんだ結果が 送られます。
メール書き込みの準備をし、書き込み先のストリームオブジェクトを
ブロックに渡します。ブロック終了後、書きこんだ結果が
送られます。
渡されるストリームオブジェクトは以下のメソッドを持っています。
* puts(str = '') strを出力して CR LFを出力
* print(str) strを出力
* printf(fmt, *args) sprintf(fmt,*args) を出力
* write(str):: str を出力して書き込んだバイト数を返す
* <<(str):: str を出力してストリームオブジェ... -
Date
# deconstruct _ keys(array _ of _ names _ or _ nil) -> Hash (18394.0) -
パターンマッチに使用する名前と値の Hash を返します。
パターンマッチに使用する名前と値の Hash を返します。
キーに利用できる名前は以下の通りです。
* :year
* :month
* :day
* :yday
* :wday
@param array_of_names_or_nil パターンマッチに使用する名前の配列を指定します。nil の場合は全てをパターンマッチに使用します。
//emlist[例][ruby]{
d = Date.new(2022, 10, 5)
if d in wday: 3, day: ..7 # deconstruct_keys が使われます
puts "first Wedn... -
DateTime
# deconstruct _ keys(array _ of _ names _ or _ nil) -> Hash (18394.0) -
パターンマッチに使用する名前と値の Hash を返します。
パターンマッチに使用する名前と値の Hash を返します。
キーに利用できる名前は以下の通りです。
* :year
* :month
* :day
* :yday
* :wday
* :hour
* :min
* :sec
* :sec_fraction
* :zone
@param array_of_names_or_nil パターンマッチに使用する名前の配列を指定します。nil の場合は全てをパターンマッチに使用します。
//emlist[例][ruby]{
dt = DateTime.new(2022, 10, 5, 13, 30)
i... -
Time
# deconstruct _ keys(array _ of _ names _ or _ nil) -> Hash (18394.0) -
パターンマッチに使用する名前と値の Hash を返します。
パターンマッチに使用する名前と値の Hash を返します。
キーに利用できる名前は以下の通りです。
* :year
* :month
* :day
* :yday
* :wday
* :hour
* :min
* :sec
* :subsec
* :dst
* :zone
@param array_of_names_or_nil パターンマッチに使用する名前の配列を指定します。nil の場合は全てをパターンマッチに使用します。
//emlist[例][ruby]{
t = Time.utc(2022, 10, 5, 21, 25, 30)
... -
Addrinfo
# connect _ from(host , port) -> Socket (18376.0) -
引数で指定されたアドレスから 自身のアドレスへソケットを接続します。
引数で指定されたアドレスから
自身のアドレスへソケットを接続します。
接続元のアドレスは Addrinfo#family_addrinfo により生成された
ものが用いられます。
ブロックが渡されたときにはそのブロックに接続済み Socket
オブジェクトが渡されます。ブロックの返り値がメソッドの返り値となります。
ブロックを省略した場合は、接続済みSocket
オブジェクトが返されます。
引数で指定したアドレスはソケット接続のローカル側のアドレスになります。
require 'socket'
Addrinfo.tcp("www.ruby-lang.org", 80).co... -
Addrinfo
# connect _ from(host , port) {|sock| . . . } -> object (18376.0) -
引数で指定されたアドレスから 自身のアドレスへソケットを接続します。
引数で指定されたアドレスから
自身のアドレスへソケットを接続します。
接続元のアドレスは Addrinfo#family_addrinfo により生成された
ものが用いられます。
ブロックが渡されたときにはそのブロックに接続済み Socket
オブジェクトが渡されます。ブロックの返り値がメソッドの返り値となります。
ブロックを省略した場合は、接続済みSocket
オブジェクトが返されます。
引数で指定したアドレスはソケット接続のローカル側のアドレスになります。
require 'socket'
Addrinfo.tcp("www.ruby-lang.org", 80).co... -
JSON
:: Generator :: GeneratorMethods :: String # to _ json(state _ or _ hash = nil) -> String (18376.0) -
自身から生成した JSON 形式の文字列を返します。
自身から生成した JSON 形式の文字列を返します。
自身のエンコードは UTF-8 であるべきです。
"\u????" のように UTF-16 ビッグエンディアンでエンコードされた文字列を返すことがあります。
@param state_or_hash 生成する JSON 形式の文字列をカスタマイズするため
に JSON::State のインスタンスか、
JSON::State.new の引数と同じ Hash を
指定します。
//emlist[例][ruby]... -
Data
# deconstruct -> [object] (18358.0) -
self のメンバの値を配列で返します。
self のメンバの値を配列で返します。
//emlist[例][ruby]{
Measure = Data.define(:amount, :unit)
distance = Measure.new(10, 'km')
distance.deconstruct # => [10, "km"]
//}
このメソッドは以下のようにパターンマッチで利用されます。
//emlist[例][ruby]{
Measure = Data.define(:amount, :unit)
distance = Measure.new(10, 'km')
case distance
in n, 'km... -
Data
# deconstruct _ keys(array _ of _ names _ or _ nil) -> Hash (18358.0) -
self のメンバの名前と値の組を Hash で返します。
self のメンバの名前と値の組を Hash で返します。
//emlist[例][ruby]{
Measure = Data.define(:amount, :unit)
distance = Measure.new(10, 'km')
distance.deconstruct_keys(nil) # => {:amount=>10, :unit=>"km"}
distance.deconstruct_keys([:amount]) # => {:amount=>10}
//}
このメソッドは以下のようにパターンマッチで利用されます。
//emlist[例][ruby]... -
Thread
# run -> self (18358.0) -
停止状態(stop)のスレッドを再開させます。 Thread#wakeup と異なりすぐにスレッドの切り替え を行います。
停止状態(stop)のスレッドを再開させます。
Thread#wakeup と異なりすぐにスレッドの切り替え
を行います。
@raise ThreadError 死んでいるスレッドに対して実行すると発生します。
//emlist[例][ruby]{
a = Thread.new { puts "a"; Thread.stop; puts "c" }
sleep 0.1 while a.status!='sleep'
puts "Got here"
a.run
a.join
# => a
# => Got here
# => c
//}
@see Thread#wakeup, Threa... -
CSV
:: Row # deconstruct -> [object] (18340.0) -
パターンマッチに使用する行の値の配列を返します。
パターンマッチに使用する行の値の配列を返します。
//emlist[例][ruby]{
require "csv"
row = CSV::Row.new(["header1", "header2", "header3"], [1, 2, 3])
case row
in [2.., 2.., 2..]
puts "all 2 or more"
in [...2, 2.., 2..]
puts "first column is less than 2, and rest columns are 2 or more"
end
#=> "first column is less than ... -
CSV
:: Row # deconstruct _ keys(keys) -> Hash (18340.0) -
パターンマッチに使用するヘッダの名前と値の Hash を返します。
パターンマッチに使用するヘッダの名前と値の Hash を返します。
このメソッドはヘッダ名の型をシンボルに変換しないため、ヘッダ名が文字列かつ Hash パターン でパターンマッチしたい場合はキーをシンボルに変換する必要があります。
@param keys パターンマッチに使用するヘッダの名前の配列を指定します。nil の場合は全てをパターンマッチに使用します。
//emlist[例][ruby]{
require "csv"
row = CSV::Row.new([:header1, :header2, :header3], [1, 2, 3])
case row
in { hea... -
Class
# inherited(subclass) -> () (18340.0) -
クラスのサブクラスが定義された時、新しく生成されたサブクラスを引数 にインタプリタから呼び出されます。このメソッドが呼ばれるタイミングは クラス定義文の実行直前です。
クラスのサブクラスが定義された時、新しく生成されたサブクラスを引数
にインタプリタから呼び出されます。このメソッドが呼ばれるタイミングは
クラス定義文の実行直前です。
@param subclass プログラム内で新たに定義された自身のサブクラスです。
//emlist[例][ruby]{
class Foo
def Foo.inherited(subclass)
puts "class \"#{self}\" was inherited by \"#{subclass}\""
end
end
class Bar < Foo
puts "executing class... -
Dir
# read -> String | nil (18340.0) -
ディレクトリストリームから次の要素を読み出して返します。最後の要素 まで読み出していれば nil を返します。
ディレクトリストリームから次の要素を読み出して返します。最後の要素
まで読み出していれば nil を返します。
@raise Errno::EXXX ディレクトリの読み出しに失敗した場合に発生します。
@raise IOError 既に自身が close している場合に発生します。
//emlist[例][ruby]{
require 'tmpdir'
Dir.mktmpdir do |tmpdir|
File.open("#{tmpdir}/test1.txt", "w") { |f| f.puts("test1") }
File.open("#{tmpdir}/test2... -
JSON
:: State # space _ before -> String (18340.0) -
JSON 形式の文字列中で JavaScript のオブジェクトを表す部分にある ':' の 前に挿入する文字列を返します。
JSON 形式の文字列中で JavaScript のオブジェクトを表す部分にある ':' の
前に挿入する文字列を返します。
//emlist[例][ruby]{
require "json"
json_state = JSON::State.new(space_before: "")
json_state.space_before # => ""
puts JSON.generate([1, 2, { name: "tanaka", age: 19 }], json_state)
# => [1,2,{"name":"tanaka","age":19}]
js... -
JSON
:: State # space _ before=(string) (18340.0) -
JSON 形式の文字列中で JavaScript のオブジェクトを表す部分にある ':' の 前に挿入する文字列をセットします。
JSON 形式の文字列中で JavaScript のオブジェクトを表す部分にある ':' の
前に挿入する文字列をセットします。
@param string JSON 形式の文字列中で JavaScript のオブジェクトを表す部分にある ':' の
前に挿入する文字列をセットします。
//emlist[例][ruby]{
require "json"
json_state = JSON::State.new(space_before: "")
json_state.space_before # => ""
puts JSON.gen... -
Method
# owner -> Class | Module (18340.0) -
このメソッドが定義されている class か module を返します。
このメソッドが定義されている class か module を返します。
//emlist[例][ruby]{
class Foo
def foo(arg)
"foo called with arg #{arg}"
end
end
m = Foo.new.method(:foo) # => #<Method: Foo#foo>
m.owner # => Foo
m = Foo.new.method(:puts) # => #<Method: Foo(Kernel)#puts>
m.owner # => Kernel
//} -
Module
# refine(klass) { . . . } -> Module (18340.0) -
引数 klass で指定したクラスまたはモジュールだけに対して、ブロックで指定した機能を提供で きるモジュールを定義します。定義した機能は Module#refine を使用せずに直 接 klass に対して変更を行う場合と異なり、限られた範囲のみ有効にできます。 そのため、既存の機能を局所的に修正したい場合などに用いる事ができます。
引数 klass で指定したクラスまたはモジュールだけに対して、ブロックで指定した機能を提供で
きるモジュールを定義します。定義した機能は Module#refine を使用せずに直
接 klass に対して変更を行う場合と異なり、限られた範囲のみ有効にできます。
そのため、既存の機能を局所的に修正したい場合などに用いる事ができます。
refinements 機能の詳細については以下を参照してください。
* https://magazine.rubyist.net/articles/0041/0041-200Special-refinement.html
* https://docs... -
OptionParser
# separator(sep) -> () (18340.0) -
サマリにオプションを区切るための文字列 sep を挿入します。 オプションにいくつかの種類がある場合に、サマリがわかりやすくなります。
サマリにオプションを区切るための文字列 sep を挿入します。
オプションにいくつかの種類がある場合に、サマリがわかりやすくなります。
サマリには on メソッドを呼んだ順にオプションが表示されるので、区切りを挿入したい
ところでこのメソッドを呼びます。
@param sep サマリの区切りを文字列で指定します。
//emlist[][ruby]{
require 'optparse'
opts = OptionParser.new
opts.banner = "Usage: example.rb [options]"
opts.separator ""
opts.separator... -
RubyVM
:: InstructionSequence # base _ label -> String (18340.0) -
self が表す命令シーケンスの基本ラベルを返します。
self が表す命令シーケンスの基本ラベルを返します。
例1:irb で実行した場合
iseq = RubyVM::InstructionSequence.compile('num = 1 + 2')
# => <RubyVM::InstructionSequence:<compiled>@<compiled>>
iseq.base_label
# => "<compiled>"
例2: RubyVM::InstructionSequence.compile_file を使用した場合
# /tmp/method.rb
def hello
puts "h... -
RubyVM
:: InstructionSequence # label -> String (18340.0) -
self が表す命令シーケンスのラベルを返します。通常、メソッド名、クラス名、 モジュール名などで構成されます。
self が表す命令シーケンスのラベルを返します。通常、メソッド名、クラス名、
モジュール名などで構成されます。
トップレベルでは "<main>" を返します。self を文字列から作成していた場合
は "<compiled>" を返します。
例1:irb で実行した場合
iseq = RubyVM::InstructionSequence.compile('num = 1 + 2')
# => <RubyVM::InstructionSequence:<compiled>@<compiled>>
iseq.label
# => "<compiled>"
例2: R... -
Thread
:: ConditionVariable # broadcast -> self (18340.0) -
状態変数を待っているスレッドをすべて再開します。再開された スレッドは Thread::ConditionVariable#wait で指定した mutex のロックを試みます。
状態変数を待っているスレッドをすべて再開します。再開された
スレッドは Thread::ConditionVariable#wait
で指定した mutex のロックを試みます。
@return 常に self を返します。
//emlist[例][ruby]{
mutex = Mutex.new
cv = ConditionVariable.new
flg = true
3.times {
Thread.start {
mutex.synchronize {
puts "a1"
while (flg)
cv.wait(mutex)
... -
WIN32OLE
# _ getproperty(dispid , args , types) -> object (18340.0) -
DISPIDとパラメータの型を指定してオブジェクトのプロパティを参照します。
DISPIDとパラメータの型を指定してオブジェクトのプロパティを参照します。
アクセスするプロパティのインターフェイスを事前に知っている場合に、
DISPIDとパラメータの型を指定してプロパティを参照します。
@param dispid プロパティのDISPID(メソッドを一意に特定する数値)を指定
します。
@param args プロパティが引数を取る場合に配列で指定します。引数の順序は
最左端の引数のインデックスを0とします。引数が不要な場合は空
配列を指定します。
@param types プロパティが... -
WIN32OLE
# _ setproperty(dispid , args , types) -> () (18340.0) -
DISPIDとパラメータの型を指定してオブジェクトのプロパティを設定します。
DISPIDとパラメータの型を指定してオブジェクトのプロパティを設定します。
アクセスするプロパティのインターフェイスを事前に知っている場合に、
DISPIDとパラメータの型を指定してプロパティを設定します。
このメソッドはCOMアーリーバインディングを利用することで外部プロセスサー
バとのラウンドトリップを減らして処理速度を向上させることを目的としたも
のです。このため、DLLの形式で型情報(TypeLib)を提供しているサーバに対
してはあまり意味を持ちません。
@param dispid プロパティのDISPID(メソッドを一意に特定する数値)を指定
し... -
WIN32OLE
_ EVENT # handler=(obj) -> () (18340.0) -
イベント処理を実行するオブジェクトを登録します。
イベント処理を実行するオブジェクトを登録します。
イベントハンドラをメソッドとして持つオブジェクトをイベントハンドラとし
て登録します。
イベントハンドラはイベント名に「on」を前置します。もし、イベントに対応
するonメソッドが実装されていなければmethod_missingが呼ばれます。イベン
ト名は大文字小文字を区別するため、正確な記述が必要です。
@param obj イベントに対応するメソッドを持つオブジェクト。イベント受信を
解除するにはnilを指定します。
class IeHandler
def initialize
@com... -
BasicObject
# singleton _ method _ removed(name) -> object (18322.0) -
特異メソッドが Module#remove_method に より削除された時にインタプリタから呼び出されます。
特異メソッドが Module#remove_method に
より削除された時にインタプリタから呼び出されます。
通常のメソッドの削除に対するフックには
Module#method_removedを使います。
@param name 削除されたメソッド名が Symbol で渡されます。
//emlist[例][ruby]{
class Foo
def singleton_method_removed(name)
puts "singleton method \"#{name}\" was removed"
end
end
obj = Foo.new
def obj.f... -
ERB
# result(b=TOPLEVEL _ BINDING) -> String (18322.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 -
ERB
# src -> String (18322.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
#... -
Encoding
:: UndefinedConversionError # error _ char -> String (18322.0) -
エラーを発生させた1文字を文字列で返します。
エラーを発生させた1文字を文字列で返します。
//emlist[例][ruby]{
ec = Encoding::Converter.new("UTF-8", "EUC-JP")
begin
ec.convert("\u{a0}")
rescue Encoding::UndefinedConversionError
puts $!.error_char.dump #=> "\u{a0}"
end
//} -
File
:: Stat # chardev? -> bool (18322.0) -
キャラクタスペシャルファイルの時に真を返します。
キャラクタスペシャルファイルの時に真を返します。
//emlist[][ruby]{
Dir.glob("/dev/*") {|bd|
if File::Stat.new(bd).chardev?
puts bd
end
}
#例
#...
#=> /dev/tty1
#=> /dev/stderr
#...
//} -
Kernel
# try _ cpp(src , opt = "" , *opts) -> bool (18322.0) -
C プログラムのソースコード src をプリプロセスします。
C プログラムのソースコード src をプリプロセスします。
$CPPFLAGS, $CFLAGS の値もプリプロセッサにコマンドライン引数
として渡します。
このメソッドはヘッダファイルの存在チェックなどに使用します。
@param src C プログラムのソースコードを指定します。
@param opt プリプロセッサにコマンドライン引数として渡す値を指定します。
@return 問題なくプリプロセスできたら true を返します。
プリプロセスに失敗したら false を返します。
例:
require 'mkmf'
if try_cpp("#in... -
Kernel
# try _ cpp(src , opt = "" , *opts) { . . . } -> bool (18322.0) -
C プログラムのソースコード src をプリプロセスします。
C プログラムのソースコード src をプリプロセスします。
$CPPFLAGS, $CFLAGS の値もプリプロセッサにコマンドライン引数
として渡します。
このメソッドはヘッダファイルの存在チェックなどに使用します。
@param src C プログラムのソースコードを指定します。
@param opt プリプロセッサにコマンドライン引数として渡す値を指定します。
@return 問題なくプリプロセスできたら true を返します。
プリプロセスに失敗したら false を返します。
例:
require 'mkmf'
if try_cpp("#in... -
Kernel
# try _ link(src , opt = "" , *options) -> bool (18322.0) -
C プログラムのソースコード src をコンパイル、リンクします。
C プログラムのソースコード src をコンパイル、リンクします。
このメソッドは $CFLAGS と $LDFLAGS の値もコンパイラまたはリ
ンカに渡します。
問題なくリンクできたら true を返します。
コンパイルとリンクに失敗したら false を返します。
@param src C プログラムのソースコードを指定します。
@param opt リンカにコマンド引数として渡す値を指定します。
例:
require 'mkmf'
if try_link("int main() { sin(0.0); }", '-lm')
$stderr.puts "si... -
Kernel
# try _ link(src , opt = "" , *options) { . . . } -> bool (18322.0) -
C プログラムのソースコード src をコンパイル、リンクします。
C プログラムのソースコード src をコンパイル、リンクします。
このメソッドは $CFLAGS と $LDFLAGS の値もコンパイラまたはリ
ンカに渡します。
問題なくリンクできたら true を返します。
コンパイルとリンクに失敗したら false を返します。
@param src C プログラムのソースコードを指定します。
@param opt リンカにコマンド引数として渡す値を指定します。
例:
require 'mkmf'
if try_link("int main() { sin(0.0); }", '-lm')
$stderr.puts "si... -
Method
# source _ location -> [String , Integer] | nil (18322.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... -
Module
# method _ removed(name) -> () (18322.0) -
メソッドが Module#remove_method により削除 された時にインタプリタがこのメソッドを呼び出します。
メソッドが Module#remove_method により削除
された時にインタプリタがこのメソッドを呼び出します。
特異メソッドの削除に対するフックには
BasicObject#singleton_method_removed
を使います。
@param name 削除されたメソッド名が Symbol で渡されます。
//emlist[例][ruby]{
class Foo
def Foo.method_removed(name)
puts "method \"#{name}\" was removed"
end
def foo
end
remove_... -
Module
# prepended(class _ or _ module) -> () (18322.0) -
self が Module#prepend されたときに対象のクラスまたはモジュールを 引数にしてインタプリタがこのメソッドを呼び出します。
self が Module#prepend されたときに対象のクラスまたはモジュールを
引数にしてインタプリタがこのメソッドを呼び出します。
@param class_or_module Module#prepend を実行したオブジェクト
//emlist[例][ruby]{
module A
def self.prepended(mod)
puts "#{self} prepended to #{mod}"
end
end
module Enumerable
prepend A
end
# => "A prepended to Enumerable"
//}
@... -
Net
:: HTTPHeader # each _ header {|name , val| . . . . } -> () (18322.0) -
保持しているヘッダ名とその値をそれぞれ ブロックに渡して呼びだします。
保持しているヘッダ名とその値をそれぞれ
ブロックに渡して呼びだします。
ヘッダ名は小文字で統一されます。
val は ", " で連結した文字列がブロックに渡されます。
//emlist[例][ruby]{
require 'net/http'
uri = URI.parse('http://www.example.com/index.html')
req = Net::HTTP::Get.new(uri.request_uri)
req.each_header { |key,value| puts "#{key} = #{value}" }
# => accept-encoding... -
Object
# enum _ for(method = :each , *args) -> Enumerator (18322.0) -
Enumerator.new(self, method, *args) を返します。
Enumerator.new(self, method, *args) を返します。
ブロックを指定した場合は Enumerator#size がブロックの評価結果を返
します。ブロックパラメータは引数 args です。
@param method メソッド名の文字列かシンボルです。
@param args 呼び出すメソッドに渡される引数です。
//emlist[][ruby]{
str = "xyz"
enum = str.enum_for(:each_byte)
p(a = enum.map{|b| '%02x' % b }) #=> ["78", "79", "7a"]
#... -
Object
# enum _ for(method = :each , *args) {|*args| . . . } -> Enumerator (18322.0) -
Enumerator.new(self, method, *args) を返します。
Enumerator.new(self, method, *args) を返します。
ブロックを指定した場合は Enumerator#size がブロックの評価結果を返
します。ブロックパラメータは引数 args です。
@param method メソッド名の文字列かシンボルです。
@param args 呼び出すメソッドに渡される引数です。
//emlist[][ruby]{
str = "xyz"
enum = str.enum_for(:each_byte)
p(a = enum.map{|b| '%02x' % b }) #=> ["78", "79", "7a"]
#... -
OptionParser
# ver -> String (18322.0) -
program_name、version と release から生成したバージョンを表す文字列を返します。
program_name、version と release から生成したバージョンを表す文字列を返します。
//emlist[例][ruby]{
require "optparse"
OptionParser.new do |opts|
opts.banner = "Usage: example.rb [options]"
opts.program_name = "Optparse Example"
opts.version = [0, 1]
opts.release = "2019-05-01"
opts.on_tail("--version", "Show v... -
RubyVM
:: InstructionSequence # absolute _ path -> String | nil (18322.0) -
self が表す命令シーケンスの絶対パスを返します。
self が表す命令シーケンスの絶対パスを返します。
self を文字列から作成していた場合は nil を返します。
例1:irb で実行した場合
iseq = RubyVM::InstructionSequence.compile('num = 1 + 2')
# => <RubyVM::InstructionSequence:<compiled>@<compiled>>
iseq.absolute_path
# => nil
例2: RubyVM::InstructionSequence.compile_file を使用した場合
# /tmp/method.... -
RubyVM
:: InstructionSequence # disasm -> String (18322.0) -
self が表す命令シーケンスを人間が読める形式の文字列に変換して返します。
self が表す命令シーケンスを人間が読める形式の文字列に変換して返します。
puts RubyVM::InstructionSequence.compile('1 + 2').disasm
出力:
== disasm: <RubyVM::InstructionSequence:<compiled>@<compiled>>==========
0000 trace 1 ( 1)
0002 putobject 1
0004 putobje... -
RubyVM
:: InstructionSequence # disassemble -> String (18322.0) -
self が表す命令シーケンスを人間が読める形式の文字列に変換して返します。
self が表す命令シーケンスを人間が読める形式の文字列に変換して返します。
puts RubyVM::InstructionSequence.compile('1 + 2').disasm
出力:
== disasm: <RubyVM::InstructionSequence:<compiled>@<compiled>>==========
0000 trace 1 ( 1)
0002 putobject 1
0004 putobje... -
RubyVM
:: InstructionSequence # path -> String (18322.0) -
self が表す命令シーケンスの相対パスを返します。
self が表す命令シーケンスの相対パスを返します。
self の作成時に指定した文字列を返します。self を文字列から作成していた
場合は "<compiled>" を返します。
例1:irb で実行した場合
iseq = RubyVM::InstructionSequence.compile('num = 1 + 2')
# => <RubyVM::InstructionSequence:<compiled>@<compiled>>
iseq.path
# => "<compiled>"
例2: RubyVM::InstructionSequence.compi... -
StringScanner
# pointer=(n) (18322.0) -
スキャンポインタのインデックスを n にセットします。
スキャンポインタのインデックスを n にセットします。
@param n 整数で、バイト単位で指定します。
負数を指定すると文字列の末尾からのオフセットとして扱います。
@raise RangeError マッチ対象の文字列の長さを超える値を指定すると発生します。
@return n を返します。
//emlist[例][ruby]{
require 'strscan'
s = StringScanner.new('test string')
p s.scan(/\w+/) # => "test"
p s.pos = 1 # => 1
p s.scan(/\... -
WIN32OLE
_ METHOD # event _ interface -> String | nil (18322.0) -
メソッドがイベントの場合、イベントのインターフェイス名を取得します。
メソッドがイベントの場合、イベントのインターフェイス名を取得します。
@return メソッドがイベントであれば、イベントのインターフェイス名を返し
ます。イベントでなければnilを返します。
tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'Workbook')
method = WIN32OLE_METHOD.new(tobj, 'SheetActivate')
puts method.event_interface # => WorkbookEvents -
WIN32OLE
_ METHOD # return _ type -> String (18322.0) -
メソッドの返り値の型名を取得します。
メソッドの返り値の型名を取得します。
@return 返り値の型名を示す文字列を返します。
@raise WIN32OLERuntimeError メソッドの型情報を取得できなかった場合に通知します。
tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'Application')
method = WIN32OLE_METHOD.new(tobj, 'Visible')
puts method.return_type # => BOOL
OLEオートメーションの型名は、対応するWIN32OLE... -
WIN32OLE
_ METHOD # return _ vtype -> Integer (18322.0) -
メソッドの返り値の型を示す数値を取得します。
メソッドの返り値の型を示す数値を取得します。
@return 返り値の型を示す数値(VARENUM)を返します。
@raise WIN32OLERuntimeError メソッドの型情報を取得できなかった場合に通知します。
tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'Application')
method = WIN32OLE_METHOD.new(tobj, 'Visible')
puts method.return_vtype # => 11
VARENUMの定義は、Platfo... -
WIN32OLE
_ METHOD # size _ opt _ params -> Integer | nil (18322.0) -
オプションパラメータ数を取得します。
オプションパラメータ数を取得します。
@return オプションパラメータ数を整数で返します。メソッドの詳細情報を取
得できない場合はnilを返します。
tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'Workbook')
method = WIN32OLE_METHOD.new(tobj, 'SaveAs')
puts method.size_opt_params # => 5 -
WIN32OLE
_ METHOD # size _ params -> Integer | nil (18322.0) -
パラメータ数を取得します。
パラメータ数を取得します。
@return パラメータ数を整数で返します。メソッドの詳細情報を取得できない
場合はnilを返します。
tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'Workbook')
method = WIN32OLE_METHOD.new(tobj, 'SaveAs')
puts method.size_params # => 12 -
WIN32OLE
_ PARAM # retval? -> bool (18322.0) -
パラメータが戻り値かどうかを判定します。
パラメータが戻り値かどうかを判定します。
OLEオートメーションの規定では、メソッドの戻り値は引数リストの最右端のパ
ラメータをout属性(WIN32OLE_PARAM#output?が真)とすることで実現し
ます。ただし、そのパラメータをOLEオートメーション呼び出しを記述する言語
が戻り値のように扱うか、それとも引数リストに並べるかはretval属性によっ
て決定されます。
retval?メソッドは、戻り値として記述する場合に真となります。
@return パラメータが戻り値として扱われる場合に真を返します。
tobj = WIN32OLE_TYPE.new('DirectX... -
WIN32OLE
_ TYPE # default _ event _ sources -> [WIN32OLE _ TYPE] (18322.0) -
型が持つソースインターフェイスを取得します。
型が持つソースインターフェイスを取得します。
default_event_sourcesメソッドは、selfがCoClass(コンポーネントクラス)
の場合、そのクラスがサポートするデフォルトのソースインターフェイス(イ
ベントの通知元となるインターフェイス)を返します。
@return デフォルトのソースインターフェイスをWIN32OLE_TYPEの配列と
して返します。返すのは配列ですが、デフォルトのソースインターフェ
イスは最大でも1インターフェイスです。ソースインターフェイスを持
たない場合は空配列を返します。
tobj = ... -
WIN32OLE
_ TYPELIB # major _ version -> Integer (18322.0) -
TypeLibのメジャーバージョン番号を取得します。
TypeLibのメジャーバージョン番号を取得します。
@return TypeLibのメジャーバージョン番号を整数で返します。
@raise WIN32OLERuntimeError TypeLibの属性が読み取れない場合に通知します。
tlib = WIN32OLE_TYPELIB.new('Microsoft Excel 14.0 Object Library')
puts tlib.major_version # => 1 -
WIN32OLE
_ TYPELIB # minor _ version -> Integer (18322.0) -
TypeLibのマイナーバージョン番号を取得します。
TypeLibのマイナーバージョン番号を取得します。
@return TypeLibのマイナーバージョン番号を整数で返します。
@raise WIN32OLERuntimeError TypeLibの属性が読み取れない場合に通知します。
tlib = WIN32OLE_TYPELIB.new('Microsoft Excel 14.0 Object Library')
puts tlib.minor_version # => 7 -
WIN32OLE
_ TYPELIB # version -> Float (18322.0) -
TypeLibのバージョン番号を取得します。
TypeLibのバージョン番号を取得します。
@return TypeLibのバージョン番号を整数部にメジャーバージョン番号、小数点
数部にマイナーバージョン番号を設定したFloatで返します。
@raise WIN32OLERuntimeError TypeLibの属性が読み取れない場合に通知します。
tlib = WIN32OLE_TYPELIB.new('Microsoft Excel 14.0 Object Library')
puts tlib.version # => 1.7 -
WIN32OLE
_ VARIABLE # varkind -> Integer (18322.0) -
変数の種類(VARKIND)を取得します。
変数の種類(VARKIND)を取得します。
この変数の種類を示す数値を返します。
@return VARKINDに対応する数値を返します。
tobj = WIN32OLE_TYPE.new('Microsoft Excel 14.0 Object Library', 'XlSheetType')
puts tobj.variables.map {|v| v.varkind}.uniq # => 2
数値の意味については、WIN32OLE_VARIABLE#variable_kindの説明を参照してください。 -
Net
:: HTTP # request _ get(path , header = nil) {|response| . . . . } -> Net :: HTTPResponse (9922.0) -
サーバ上の path にあるエンティティを取得します。 Net::HTTPResponse オブジェクトを返します。
サーバ上の path にあるエンティティを取得します。
Net::HTTPResponse オブジェクトを返します。
header が nil
でなければ、リクエストを送るときにその内容を HTTP ヘッダとして
送ります。 header は { 'Accept' = > '*/*', ... } という
形のハッシュでなければいけません。
ブロックとともに呼び出されたときは、
エンティティボディをソケットから読み出す前に、
接続を維持した状態で Net::HTTPResponse
オブジェクトをブロックに渡します。
大きなサイズのボディを一度に読みだすとまずく、
小さなサイズに分けて取... -
Net
:: HTTP # request _ post(path , data , header = nil) {|response| . . . . } -> Net :: HTTPResponse (9922.0) -
サーバ上の path にあるエンティティに対し文字列 data を POST で送ります。 返り値は Net::HTTPResponse のインスタンスです。
サーバ上の path にあるエンティティに対し文字列 data を
POST で送ります。
返り値は Net::HTTPResponse のインスタンスです。
header が nil
でなければ、リクエストを送るときにその内容を HTTP ヘッダとして
送ります。 header は { 'Accept' = > '*/*', ... } という
形のハッシュでなければいけません。
ブロックとともに呼び出されたときは、
エンティティボディをソケットから読み出す前に、
接続を維持した状態で Net::HTTPResponse
オブジェクトをブロックに渡します。
POST する場合にはヘッ... -
CSV
# add _ row(row) -> self (9625.0) -
自身に row を追加します。
自身に row を追加します。
データソースは書き込み用にオープンされていなければなりません。
@param row 配列か CSV::Row のインスタンスを指定します。
CSV::Row のインスタンスが指定された場合は、CSV::Row#fields の値
のみが追加されます。
//emlist[例 配列を指定][ruby]{
require "csv"
File.write("test.csv", <<CSV)
id,first name,last name,age
1,taro,tanaka,20
2,jiro,suzuki,18... -
Net
:: HTTP # request _ get(path , header = nil) -> Net :: HTTPResponse (9622.0) -
サーバ上の path にあるエンティティを取得します。 Net::HTTPResponse オブジェクトを返します。
サーバ上の path にあるエンティティを取得します。
Net::HTTPResponse オブジェクトを返します。
header が nil
でなければ、リクエストを送るときにその内容を HTTP ヘッダとして
送ります。 header は { 'Accept' = > '*/*', ... } という
形のハッシュでなければいけません。
ブロックとともに呼び出されたときは、
エンティティボディをソケットから読み出す前に、
接続を維持した状態で Net::HTTPResponse
オブジェクトをブロックに渡します。
大きなサイズのボディを一度に読みだすとまずく、
小さなサイズに分けて取... -
Net
:: HTTP # request _ post(path , data , header = nil) -> Net :: HTTPResponse (9622.0) -
サーバ上の path にあるエンティティに対し文字列 data を POST で送ります。 返り値は Net::HTTPResponse のインスタンスです。
サーバ上の path にあるエンティティに対し文字列 data を
POST で送ります。
返り値は Net::HTTPResponse のインスタンスです。
header が nil
でなければ、リクエストを送るときにその内容を HTTP ヘッダとして
送ります。 header は { 'Accept' = > '*/*', ... } という
形のハッシュでなければいけません。
ブロックとともに呼び出されたときは、
エンティティボディをソケットから読み出す前に、
接続を維持した状態で Net::HTTPResponse
オブジェクトをブロックに渡します。
POST する場合にはヘッ... -
Object
# to _ enum(method = :each , *args) {|*args| . . . } -> Enumerator (9622.0) -
Enumerator.new(self, method, *args) を返します。
Enumerator.new(self, method, *args) を返します。
ブロックを指定した場合は Enumerator#size がブロックの評価結果を返
します。ブロックパラメータは引数 args です。
@param method メソッド名の文字列かシンボルです。
@param args 呼び出すメソッドに渡される引数です。
//emlist[][ruby]{
str = "xyz"
enum = str.enum_for(:each_byte)
p(a = enum.map{|b| '%02x' % b }) #=> ["78", "79", "7a"]
#... -
Array
# to _ csv(**options) -> String (9412.0) -
CSV.generate_line(self, options) と同様です。
CSV.generate_line(self, options) と同様です。
Array オブジェクトを 1 行の CSV 文字列に変換するためのショートカットです。
@param options CSV.generate_line と同様のオプションを指定します。
//emlist[][ruby]{
require 'csv'
p [1, 'Matz', :Ruby, Date.new(1965, 4, 14)].to_csv # => "1,Matz,Ruby,1965-04-14\n"
p [1, 'Matz',... -
Regexp
# ~ -> Integer | nil (9412.0) -
変数 $_ の値との間でのマッチをとります。
変数 $_ の値との間でのマッチをとります。
ちょうど以下と同じ意味です。
//emlist[][ruby]{
self =~ $_
//}
//emlist[例][ruby]{
$_ = "hogehoge"
if /foo/
puts "match"
else
puts "no match"
end
# => no match
# ただし、警告がでる。warning: regex literal in condition
reg = Regexp.compile("foo")
if ~ reg
puts "match"
else
puts "no matc... -
String
# gsub(pattern , replace) -> String (9394.0) -
文字列中で pattern にマッチする部分全てを 文字列 replace で置き換えた文字列を生成して返します。
文字列中で pattern にマッチする部分全てを
文字列 replace で置き換えた文字列を生成して返します。
置換文字列 replace 中の \& と \0 はマッチした部分文字列に、
\1 ... \9 は n 番目の括弧の内容に置き換えられます。
置換文字列内では \`、\'、\+ も使えます。
これらは $`、$'、$+ に対応します。
@param pattern 置き換える文字列のパターンを表す文字列か正規表現。
文字列を指定した場合は全く同じ文字列にだけマッチする
@param replace pattern で指定した... -
String
# sub(pattern , replace) -> String (9394.0) -
文字列中で pattern にマッチした最初の部分を 文字列 replace で置き換えた文字列を生成して返します。
文字列中で pattern にマッチした最初の部分を
文字列 replace で置き換えた文字列を生成して返します。
置換文字列 replace 中の \& と \0 はマッチした部分文字列に、
\1 ... \9 は n 番目の括弧の内容に置き換えられます。
置換文字列内では \`、\'、\+ も使えます。
これらは $`、$'、$+ に対応します。
@param pattern 置き換える文字列のパターンを表す文字列か正規表現。
文字列を指定した場合は全く同じ文字列にだけマッチする
@param replace pattern で指定し... -
ThreadGroup
# add(thread) -> self (9394.0) -
スレッド thread が属するグループを自身に変更します。
スレッド thread が属するグループを自身に変更します。
@param thread 自身に加えたいスレッドを指定します。
@raise ThreadError 自身が freeze されているか enclose されている場合に、発生します。また引数 thread が属する ThreadGroup が freeze されているか enclose されている場合にも発生します。
//emlist[例][ruby]{
puts "Initial group is #{ThreadGroup::Default.list}"
# => Initial group is [#<Thread... -
String
# dump -> String (9376.0) -
文字列中の非表示文字をバックスラッシュ記法に置き換えた文字列を返します。 str == eval(str.dump) となることが保証されています。
文字列中の非表示文字をバックスラッシュ記法に置き換えた文字列を返します。
str == eval(str.dump) となることが保証されています。
//emlist[例][ruby]{
# p だとさらにバックスラッシュが増えて見にくいので puts している
puts "abc\r\n\f\x00\b10\\\"".dump # => "abc\r\n\f\x00\b10\\\""
//}
@see String#undump -
String
# inspect -> String (9376.0) -
文字列オブジェクトの内容を、出力したときに人間が読みやすいような適当な形式に変換します。 変換された文字列は印字可能な文字のみによって構成されます
文字列オブジェクトの内容を、出力したときに人間が読みやすいような適当な形式に変換します。
変換された文字列は印字可能な文字のみによって構成されます
現在の実装では、Ruby のリテラル形式を使って、
文字列中の不可視文字をエスケープシーケンスに変換します。
このメソッドは主にデバッグのために用意されています。
永続化などの目的で文字列をダンプしたいときは、
String#dump を使うべきです。
//emlist[例][ruby]{
# p ではないことに注意
puts "string".inspect # => "string"
puts "\t\r\n".inspect ...