別のキーワード
ライブラリ
- English (4)
- ビルトイン (15)
- bigdecimal (9)
- csv (7)
- digest (4)
- etc (3)
- fiddle (23)
-
fiddle
/ import (7) -
io
/ console (1) - ipaddr (1)
- json (2)
- logger (3)
- matrix (9)
- mkmf (4)
-
net
/ http (4) - objspace (2)
- openssl (9)
- optparse (13)
- pathname (4)
- prettyprint (1)
- prime (7)
-
rbconfig
/ sizeof (2) - readline (4)
-
rexml
/ document (3) -
ripper
/ lexer (1) -
rubygems
/ requirement (1) - securerandom (1)
- set (5)
- shell (2)
-
shell
/ command-processor (2) -
shell
/ filter (2) - socket (29)
- stringio (8)
- strscan (12)
- syslog (5)
- tempfile (2)
- timeout (2)
- uri (1)
-
webrick
/ config (1) -
webrick
/ httpproxy (1) -
webrick
/ httpresponse (1) -
webrick
/ httpserver (1) -
webrick
/ httpservlet / abstract (7) -
webrick
/ httpstatus (1) - zlib (11)
クラス
- Addrinfo (6)
- Array (2)
- BasicSocket (7)
- BigDecimal (9)
- CSV (2)
-
CSV
:: FieldInfo (2) -
CSV
:: Row (1) -
CSV
:: Table (2) -
Digest
:: Base (4) -
Fiddle
:: Function (1) -
Fiddle
:: Handle (4) -
Fiddle
:: Pointer (15) -
File
:: Stat (2) -
Gem
:: Requirement (1) - IO (3)
- IPAddr (1)
- Integer (4)
-
JSON
:: State (1) - Logger (3)
- Matrix (9)
- Method (1)
-
Net
:: HTTP (2) -
OpenSSL
:: BN (4) -
OpenSSL
:: SSL :: SSLContext (1) -
OpenSSL
:: X509 :: Name (1) - OptionParser (13)
- Pathname (4)
- PrettyPrint (1)
- Prime (2)
-
Prime
:: EratosthenesGenerator (2) -
REXML
:: Attributes (2) -
REXML
:: Elements (1) - Random (3)
- Ripper (1)
-
RubyVM
:: InstructionSequence (2) - Set (5)
- Shell (2)
-
Shell
:: CommandProcessor (2) -
Shell
:: Filter (2) - Socket (2)
-
Socket
:: AncillaryData (8) -
Socket
:: Option (1) - String (1)
- StringIO (8)
- StringScanner (12)
- TCPServer (1)
- Tempfile (2)
- Thread (1)
-
Thread
:: Queue (1) - UNIXServer (1)
- UNIXSocket (1)
-
URI
:: Generic (1) - UnboundMethod (1)
-
WEBrick
:: HTTPResponse (1) -
WEBrick
:: HTTPServlet :: AbstractServlet (6) -
Zlib
:: GzipReader (5) -
Zlib
:: GzipWriter (6)
モジュール
- Etc (2)
- Fiddle (1)
-
Fiddle
:: Importer (7) -
JSON
:: Generator :: GeneratorMethods :: Integer (1) - Kernel (8)
-
Net
:: HTTPHeader (2) - ObjectSpace (2)
-
OpenSSL
:: OCSP (1) - RbConfig (2)
- Readline (1)
- SecureRandom (1)
-
Socket
:: Constants (2) - Syslog (3)
-
Syslog
:: Macros (2) - Timeout (2)
-
WEBrick
:: Config (1) -
WEBrick
:: HTTPStatus (1)
オブジェクト
キーワード
-
$ INPUT _ LINE _ NUMBER (1) -
$ NR (1) -
$ PID (1) -
$ PROCESS _ ID (1) - + (1)
- +@ (1)
- - (1)
- -@ (1)
- << (1)
- <=> (1)
- == (1)
- ASN1 (1)
- AbstractServlet (1)
- BlockCaller (1)
- Closure (1)
- DigestAuth (1)
- HTTPProxyServer (1)
- HTTPServer (1)
- LIMITS (1)
-
LOG
_ MASK (1) -
LOG
_ UPTO (1) -
NI
_ DGRAM (2) -
NI
_ NAMEREQD (2) -
RC
_ INTERNAL _ SERVER _ ERROR (1) -
RESPONSE
_ STATUS _ SIGREQUIRED (1) - SIZEOF (1)
- [] (8)
- []= (2)
- afamily (1)
-
allocation
_ sourceline (1) - bigdecimal (1)
- bind (1)
-
block
_ length (1) - ceil (1)
- charpos (1)
-
check
_ sizeof (2) - chown (1)
- ciphers (1)
-
cofactor
_ expansion (1) -
content
_ length (2) -
create
_ value (1) -
default
_ port (1) - delete (1)
-
digest
_ length (1) - disjoint? (1)
- dlwrap (1)
-
do
_ DELETE (1) -
do
_ GET (1) -
do
_ HEAD (1) -
do
_ OPTIONS (1) -
do
_ POST (1) -
do
_ PUT (1) -
double
_ fig (1) - eql? (1)
- exist? (1)
- extern (1)
- facility (1)
- family (1)
- fcntl (1)
- fiddle (1)
-
fiddle
/ import (1) -
fiddle
/ types (1) -
field
_ size _ limit (1) -
find
_ index (2) -
first
_ lineno (1) - floor (1)
- format (1)
-
from
_ prime _ division (1) -
get
_ print (2) - getbyte (1)
- getc (1)
- getpeereid (1)
- getsockopt (1)
-
handle
_ interrupt (1) - index (4)
-
int
_ from _ prime _ division (1) - intersect? (1)
- intersection (1)
-
ip
_ pktinfo (1) -
ip
_ port (1) -
ip
_ unpack (1) -
ipv6
_ pktinfo (1) -
ipv6
_ pktinfo _ ifindex (1) -
laplace
_ expansion (1) - length (6)
- level (2)
- lex (1)
- limit (1)
- line (1)
- lineno (2)
- mask (1)
- match? (1)
-
matched
_ size (1) -
max
_ nesting (1) -
memsize
_ of (1) - mode (2)
- mountpoint? (1)
- new (5)
- next (1)
- nprocessors (1)
-
num
_ bits (1) -
num
_ bytes (1) -
num
_ waiting (1) - order (4)
- order! (2)
- pack (2)
- pack テンプレート文字列 (1)
- parse (2)
- parse! (1)
- pathconf (1)
- permute (2)
- permute! (1)
- pfamily (1)
- pointer (1)
- pointer= (1)
- pos (3)
- pos= (1)
-
pretty
_ print (2) - prettyprint (1)
- prime? (1)
-
prime
_ division (2) - print (3)
- printf (2)
- protocol (1)
- ptr (1)
- putc (1)
- rand (3)
-
random
_ number (1) -
range
_ length (1) - rank (1)
- raw (1)
- readbyte (1)
- readchar (1)
- readline (1)
-
recv
_ io (1) - recvmsg (1)
- ref (1)
-
rest
_ size (1) - restsize (1)
- round (1)
-
ruby 1
. 6 feature (1) -
ruby 1
. 8 . 4 feature (1) - send (1)
- sendmsg (1)
- setsockopt (2)
-
sev
_ threshold (1) - size (7)
- size? (1)
- sizeof (1)
- skip (1)
-
skip
_ until (1) - socktype (1)
-
source
_ location (2) - split (1)
- struct (1)
- succ (1)
-
summary
_ width (1) - sym (1)
- sysaccept (2)
- sysconf (1)
- tell (2)
- test (3)
- timeout (2)
-
to
_ a (2) -
to
_ bn (1) -
to
_ i (1) -
to
_ json (1) -
to
_ ptr (1) -
to
_ value (1) - tr (1)
- trace (1)
- truncate (2)
-
try
_ link (2) - type (1)
- ungetc (1)
- union (1)
- unlink (1)
- unpack (1)
- value (1)
- webrick (1)
- write (2)
検索結果
先頭5件
-
Socket
:: AncillaryData # int -> Integer (54694.0) -
自身が保持している cmsg data (データ) を整数の形で返します。
自身が保持している cmsg data (データ) を整数の形で返します。
整数データのサイズおよびエンディアンは実行するホストによって異なります。
require 'socket'
ancdata = Socket::AncillaryData.int(:UNIX, :SOCKET, :RIGHTS, STDERR.fileno)
p ancdata.int #=> 2
@raise TypeError cmgs data のサイズが int のバイト数と異なる場合に発生します
@see Socket::AncillaryData.new Socket::Ancillar... -
Socket
:: AncillaryData . int(family , cmsg _ level , cmsg _ type , integer) -> Socket :: AncillaryData (54640.0) -
データとして整数を保持する Socket::AncillaryData オブジェクトを生成します。
データとして整数を保持する
Socket::AncillaryData オブジェクトを生成します。
整数データのサイズおよびエンディアンは実行するホストによって異なります。
require 'socket'
p Socket::AncillaryData.int(:UNIX, :SOCKET, :RIGHTS, STDERR.fileno)
#=> #<Socket::AncillaryData: UNIX SOCKET RIGHTS 2>
@param family ソケットファミリー
@param cmsg_level プロトコル
@param cmsg_type 補... -
Gem
:: Requirement # pretty _ print(pp) -> String (27301.0) -
わかりやすい形で、条件を表す文字列を返します。 pp メソッドで出力する際に、内部で用いられます。
わかりやすい形で、条件を表す文字列を返します。
pp メソッドで出力する際に、内部で用いられます。
@param PP :PP オブジェクトを指定します。
//emlist[][ruby]{
req = Gem::Requirement.new(["< 5.0", ">= 1.9"])
pp req # => Gem::Requirement.new(["< 5.0", ">= 1.9"])
//} -
Prime
# int _ from _ prime _ division(pd) -> Integer (18676.0) -
素因数分解された結果を元の数値に戻します。
素因数分解された結果を元の数値に戻します。
引数が [[p_1, e_1], [p_2, e_2], ...., [p_n, e_n]] のようであるとき、
結果は p_1**e_1 * p_2**e_2 * .... * p_n**e_n となります。
@param pd 整数のペアの配列を指定します。含まれているペアの第一要素は素因数を、
第二要素はその素因数の指数をあらわします。
//emlist[例][ruby]{
require 'prime'
Prime.int_from_prime_division([[2,2], [3,1]]) #=> 12
P... -
StringScanner
# pointer -> Integer (18619.0) -
現在のスキャンポインタのインデックスを返します。
現在のスキャンポインタのインデックスを返します。
//emlist[例][ruby]{
require 'strscan'
s = StringScanner.new('test string')
s.pos # => 0
s.scan(/\w+/) # => "test"
s.pos # => 4
s.scan(/\w+/) # => nil
s.pos # => 4
s.scan(/\s+/) # => " "
s.pos # => 5
//}
@see StringScanner#charpos -
OpenSSL
:: OCSP :: RESPONSE _ STATUS _ SIGREQUIRED -> Integer (18601.0) -
OpenSSL::OCSP::Response#status のステータスコードで 、 サーバがクライアントにリクエストへの署名を要求していることを意味します。
OpenSSL::OCSP::Response#status のステータスコードで 、
サーバがクライアントにリクエストへの署名を要求していることを意味します。
詳しくは 2560 2.3 を見てください。 -
Net
:: HTTP . get _ print(host , path , port = 80) -> () (18355.0) -
指定した対象から HTTP でエンティティボディを取得し、 $stdout に出力します。
指定した対象から HTTP でエンティティボディを取得し、
$stdout に出力します。
対象の指定方法は URI で指定するか、
(host, path, port) で指定するかのいずれかです。
@param uri データの取得対象を URI で指定します。
@param host 接続先のホストを文字列で指定します。
@param path データの存在するパスを文字列で指定します。
@param port 接続するポートを整数で指定します。
@see Net::HTTP.get
=== 例
//emlist[][ruby]{
require 'net/http'
requi... -
Net
:: HTTP . get _ print(uri) -> () (18355.0) -
指定した対象から HTTP でエンティティボディを取得し、 $stdout に出力します。
指定した対象から HTTP でエンティティボディを取得し、
$stdout に出力します。
対象の指定方法は URI で指定するか、
(host, path, port) で指定するかのいずれかです。
@param uri データの取得対象を URI で指定します。
@param host 接続先のホストを文字列で指定します。
@param path データの存在するパスを文字列で指定します。
@param port 接続するポートを整数で指定します。
@see Net::HTTP.get
=== 例
//emlist[][ruby]{
require 'net/http'
requi... -
OpenSSL
:: BN # pretty _ print(pp) (18319.0) -
Kernel.#pp でオブジェクトの内容を出力するときに、内部で呼ばれるメソッドです。
Kernel.#pp でオブジェクトの内容を出力するときに、内部で呼ばれるメソッドです。
//emlist[][ruby]{
require 'openssl'
pp 5.to_bn #=> #<OpenSSL::BN 5>
pp (-5).to_bn #=> #<OpenSSL::BN -5>
//}
@param pp PP クラスのインスタンスオブジェクト -
Pathname
# mountpoint? -> bool (18319.0) -
self がマウントポイントであれば真を返します。
self がマウントポイントであれば真を返します。
//emlist[例][ruby]{
require "pathname"
path = Pathname("/")
path.mountpoint? # => true
path = Pathname("/usr")
path.mountpoint? # => false
//} -
Set
# disjoint?(set) -> bool (18319.0) -
self と set が互いに素な集合である場合に true を返します。
self と set が互いに素な集合である場合に true を返します。
逆に self と set の共通集合かを確認する場合には Set#intersect? を
使用します。
@param self Set オブジェクトを指定します。
@raise ArgumentError 引数が Set オブジェクトでない場合に発生します。
//emlist[][ruby]{
require 'set'
p Set[1, 2, 3].disjoint? Set[3, 4] # => false
p Set[1, 2, 3].disjoint? Set[4, 5] # => true
//}... -
Set
# intersect?(set) -> bool (18319.0) -
self と set の共通要素がある場合に true を返します。
self と set の共通要素がある場合に true を返します。
@param self Set オブジェクトを指定します。
@raise ArgumentError 引数が Set オブジェクトでない場合に発生します。
require 'set'
p Set[1, 2, 3].intersect?(Set[3, 4]) # => true
p Set[1, 2, 3].intersect?(Set[4, 5]) # => false
@see Set#intersection, Set#disjoint? -
StringIO
# print() -> nil (18319.0) -
自身に引数を順に出力します。引数を省略した場合は、$_ を出力します。 引数の扱いは Kernel.#print を参照して下さい。
自身に引数を順に出力します。引数を省略した場合は、$_ を出力します。
引数の扱いは Kernel.#print を参照して下さい。
@param obj 書き込みたいオブジェクトを指定します。
@raise IOError 自身が書き込み用にオープンされていなければ発生します。
//emlist[例][ruby]{
require "stringio"
a = StringIO.new("", 'r+')
a.print("hoge", "bar", "foo")
a.string #=> "hogebarfoo"
//} -
StringIO
# print(*obj) -> nil (18319.0) -
自身に引数を順に出力します。引数を省略した場合は、$_ を出力します。 引数の扱いは Kernel.#print を参照して下さい。
自身に引数を順に出力します。引数を省略した場合は、$_ を出力します。
引数の扱いは Kernel.#print を参照して下さい。
@param obj 書き込みたいオブジェクトを指定します。
@raise IOError 自身が書き込み用にオープンされていなければ発生します。
//emlist[例][ruby]{
require "stringio"
a = StringIO.new("", 'r+')
a.print("hoge", "bar", "foo")
a.string #=> "hogebarfoo"
//} -
StringIO
# printf(format , *obj) -> nil (18319.0) -
指定されたフォーマットに従い各引数 obj を文字列に変換して、自身に出力します。
指定されたフォーマットに従い各引数 obj を文字列に変換して、自身に出力します。
@param format 文字列のフォーマットを指定します。Kernel.#format を参照して下さい。
@param obj 書き込みたいオブジェクトを指定します。
@raise IOError 自身が書き込み用にオープンされていなければ発生します。
//emlist[例][ruby]{
require "stringio"
a = StringIO.new("", 'r+')
a.printf("%c%c%c", 97, 98, 99)
a.string ... -
StringScanner
# pointer=(n) (18319.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(/\... -
Thread
. handle _ interrupt(hash) { . . . } -> object (18319.0) -
スレッドの割り込みのタイミングを引数で指定した内容に変更してブロックを 実行します。
スレッドの割り込みのタイミングを引数で指定した内容に変更してブロックを
実行します。
「割り込み」とは、非同期イベントや Thread#raise や
Thread#kill、Signal.#trap(未サポート)、メインスレッドの終了
(メインスレッドが終了すると、他のスレッドも終了されます)を意味します。
@param hash 例外クラスがキー、割り込みのタイミングを指定する
Symbol が値の Hash を指定します。
値の内容は以下のいずれかです。
: :immediate
すぐに割り込みます。
: :on_block... -
Zlib
:: GzipWriter # print(*str) -> nil (18319.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 (18319.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... -
prettyprint (18019.0)
-
pretty printing アルゴリズムのためのライブラリです。
pretty printing アルゴリズムのためのライブラリです。
=== 使い方
pretty printing アルゴリズムは読みやすいインデントと改行を決定するためのアルゴリズムです。
インデントと改行はユーザによって与えられたツリー構造から決定されます。
つまりユーザは以下のように表示したい内容を保持したツリーを作成する必要があります。
* PrettyPrint.new でバッファを生成します。このとき、バッファの幅と改行文字を指定します。
* PrettyPrint#text を使って、文字列を適宜 挿入します。
* PrettyPrint#group を使って子ノー... -
Integer
# prime _ division(generator = Prime :: Generator23 . new) -> [[Integer , Integer]] (9619.0) -
自身を素因数分解した結果を返します。
自身を素因数分解した結果を返します。
@param generator 素数生成器のインスタンスを指定します。
@return 素因数とその指数から成るペアを要素とする配列です。つまり、戻り値の各要素は2要素の配列 [n,e] であり、それぞれの内部配列の第1要素 n は self の素因数、第2要素は n**e が self を割り切る最大の自然数 e です。
@raise ZeroDivisionError self がゼロである場合に発生します。
@see Prime#prime_division
//emlist[例][ruby]{
require 'prime'
12.p... -
Integer
. from _ prime _ division(pd) -> Integer (9373.0) -
素因数分解された結果を元の数値に戻します。
素因数分解された結果を元の数値に戻します。
@param pd 整数のペアの配列を指定します。含まれているペアの第一要素は素因数を、
第二要素はその素因数の指数をあらわします。
@see Prime#int_from_prime_division
//emlist[例][ruby]{
require 'prime'
Prime.int_from_prime_division([[2,2], [3,1]]) #=> 12
Prime.int_from_prime_division([[2,2], [3,2]]) #=> 36
//} -
Fiddle
:: Pointer . [](val) -> Fiddle :: Pointer (9337.0) -
与えられた val と関連した Pointer オブジェクトを生成して返します。
与えられた val と関連した Pointer オブジェクトを生成して返します。
val が文字列の場合は文字列が格納されているメモリ領域を指す Pointer
オブジェクトを返します。
IO オブジェクトの場合は FILE ポインタを表す Pointer オブジェクトを返します。
val に to_ptr メソッドが定義されている場合は、val.to_ptr を呼び、
Pointer オブジェクトに変換したものを返します。
val が整数の場合はそれをアドレスとする Pointer オブジェクトを返します。
上以外の場合は、整数に変換(to_int)し
それをアドレスとする P... -
Fiddle
:: Pointer . to _ ptr(val) -> Fiddle :: Pointer (9337.0) -
与えられた val と関連した Pointer オブジェクトを生成して返します。
与えられた val と関連した Pointer オブジェクトを生成して返します。
val が文字列の場合は文字列が格納されているメモリ領域を指す Pointer
オブジェクトを返します。
IO オブジェクトの場合は FILE ポインタを表す Pointer オブジェクトを返します。
val に to_ptr メソッドが定義されている場合は、val.to_ptr を呼び、
Pointer オブジェクトに変換したものを返します。
val が整数の場合はそれをアドレスとする Pointer オブジェクトを返します。
上以外の場合は、整数に変換(to_int)し
それをアドレスとする P... -
Fiddle
:: Pointer # [](offset) -> Integer (9322.0) -
自身の指すアドレスに offset バイトを足したメモリ領域の先頭を整数として返します。
自身の指すアドレスに offset バイトを足したメモリ領域の先頭を整数として返します。
@param offset 値を得たい領域のアドレスまでのオフセット
@raise Fiddle::DLError self の保持するポインタが NULL である場合に発生します
例:
require 'fiddle'
s = 'abc'
cptr = Fiddle::Pointer[s]
p cptr[0] #=> 97
p cptr[1] #=> 98 -
Fiddle
:: Pointer # +(n) -> Fiddle :: Pointer (9319.0) -
自身のアドレスに n バイトを足した新しい Pointer オブジェクトを返します。
自身のアドレスに n バイトを足した新しい Pointer オブジェクトを返します。
この返り値には、free 関数がセットされず、size は 0 とされます。
@param n アドレスの増分を整数で指定します。
例:
require 'fiddle'
s = 'abc'
cptr = Fiddle::Pointer[s]
p cptr[0,1] #=> "a"
cptr += 1
p cptr[0,1] #=> "b" -
Fiddle
:: Pointer # +@ -> Fiddle :: Pointer (9319.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 # -(n) -> Fiddle :: Pointer (9319.0) -
自身のアドレスから n バイトを引いた新しい Pointer オブジェクトを返します。
自身のアドレスから n バイトを引いた新しい Pointer オブジェクトを返します。
この返り値には、free 関数がセットされず、size は 0 とされます。
@param n アドレスの差分を整数で指定します。
例:
require 'fiddle'
s = 'abc'
cptr = Fiddle::Pointer[s]
cptr += 1
p cptr[0,1] #=> "b"
cptr -= 1
p cptr[0,1] #=> "a" -
Fiddle
:: Pointer # -@ -> Fiddle :: Pointer (9319.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 (9319.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 (9319.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 ... -
Set
# intersection(enum) -> Set (9319.0) -
共通部分、すなわち、2つの集合のいずれにも属するすべての要素からなる 新しい集合を作ります。
共通部分、すなわち、2つの集合のいずれにも属するすべての要素からなる
新しい集合を作ります。
@param enum each メソッドが定義されたオブジェクトを指定します。
@raise ArgumentError 引数 enum に each メソッドが定義されていない場合に
発生します。
//emlist[][ruby]{
require 'set'
s1 = Set[10, 20, 30]
s2 = Set[10, 30, 50]
p s1 & s2 #=> #<Set: {10, 30}>
//}
@see Array#& -
StringScanner
# pos -> Integer (9319.0) -
現在のスキャンポインタのインデックスを返します。
現在のスキャンポインタのインデックスを返します。
//emlist[例][ruby]{
require 'strscan'
s = StringScanner.new('test string')
s.pos # => 0
s.scan(/\w+/) # => "test"
s.pos # => 4
s.scan(/\w+/) # => nil
s.pos # => 4
s.scan(/\s+/) # => " "
s.pos # => 5
//}
@see StringScanner#charpos -
WEBrick
:: HTTPStatus :: RC _ INTERNAL _ SERVER _ ERROR (9319.0) -
HTTP のステータスコードを表す整数です。
HTTP のステータスコードを表す整数です。
require 'webrick'
p WEBrick::HTTPStatus::RC_INTERNAL_SERVER_ERROR #=> 500 -
Fiddle
:: Pointer # [](offset , len) -> String (9022.0) -
自身の指すアドレスに offset バイトを足したメモリ領域の先頭 len バイトを複製し、 文字列として返します。
自身の指すアドレスに offset バイトを足したメモリ領域の先頭 len バイトを複製し、
文字列として返します。
(self + offset).to_s(len) と同等です。
offset + len が自身のサイズより小さいかを検証しません。
@param offset 値を得たい領域の先頭のアドレスまでのオフセットを整数で与えます。
@param len 値を得たい領域のサイズを指定します。
@raise Fiddle::DLError self の保持するポインタが NULL である場合に発生します
例:
require 'fiddle'
s = 'abc'
... -
Fiddle
:: Pointer # []=(offset , len , v) (9022.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) (9022.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" -
Fiddle
:: Pointer # ==(other) -> bool (9019.0) -
ポインタの指すアドレスが同一ならばtrueを返します。
ポインタの指すアドレスが同一ならばtrueを返します。
@param other 比較対象の Pointer オブジェクト
例:
require 'fiddle'
s = 'abc'
cptr = Fiddle::Pointer[s]
cptr0 = Fiddle::Pointer[s]
cptr1 = cptr + 1
p cptr == cptr1 #=> false
p cptr == cptr0 #=> true -
Fiddle
:: Pointer # eql?(other) -> bool (9019.0) -
ポインタの指すアドレスが同一ならばtrueを返します。
ポインタの指すアドレスが同一ならばtrueを返します。
@param other 比較対象の Pointer オブジェクト
例:
require 'fiddle'
s = 'abc'
cptr = Fiddle::Pointer[s]
cptr0 = Fiddle::Pointer[s]
cptr1 = cptr + 1
p cptr == cptr1 #=> false
p cptr == cptr0 #=> true -
Fiddle
:: Pointer # to _ value -> object (9019.0) -
自身はヒープに確保された Ruby のオブジェクトを指すポインタであると仮定して、 自身が指すオブジェクトを返します。
自身はヒープに確保された Ruby のオブジェクトを指すポインタであると仮定して、
自身が指すオブジェクトを返します。
例:
require 'fiddle'
s = 'abc'
i = Fiddle.dlwrap(s)
cptr = Fiddle::Pointer.new(i)
p cptr.to_value #=> "abc" -
Integer
# prime? -> bool (9019.0) -
自身が素数である場合、真を返します。 そうでない場合は偽を返します。
自身が素数である場合、真を返します。
そうでない場合は偽を返します。
//emlist[例][ruby]{
require 'prime'
1.prime? # => false
2.prime? # => true
//}
@see Prime#prime? -
Integer
# to _ bn -> OpenSSL :: BN (9019.0) -
Integer を同じ数を表す OpenSSL::BN のオブジェクトに 変換します。
Integer を同じ数を表す OpenSSL::BN のオブジェクトに
変換します。
//emlist[][ruby]{
require 'openssl'
pp 5.to_bn #=> #<OpenSSL::BN 5>
pp (-5).to_bn #=> #<OpenSSL::BN -5>
//}
なお、実装は、以下のようになっています。
//emlist[][ruby]{
class Integer
def to_bn
OpenSSL::BN::new(self)
end
end
//}
@see OpenSSL::BN.new, OpenSSL::... -
JSON
:: Generator :: GeneratorMethods :: Integer # to _ json(state _ or _ hash = nil) -> String (9019.0) -
自身から生成した JSON 形式の文字列を返します。
自身から生成した JSON 形式の文字列を返します。
@param state_or_hash 生成する JSON 形式の文字列をカスタマイズするため
に JSON::State のインスタンスか、
JSON::State.new の引数と同じ Hash を
指定します。
//emlist[例][ruby]{
require "json"
10.to_json # => "10"
//} -
PrettyPrint
. format(output = & # 39;& # 39; , maxwidth = 79 , newline = "\n" , genspace = lambda{|n| & # 39; & # 39; * n}) {|pp| . . . } -> object (9019.0) -
PrettyPrint オブジェクトを生成し、それを引数としてブロックを実行します。 与えられた output を返します。
PrettyPrint オブジェクトを生成し、それを引数としてブロックを実行します。
与えられた output を返します。
以下と同じ働きをするもので簡便のために用意されています。
//emlist[][ruby]{
require 'prettyprint'
begin
pp = PrettyPrint.new(output, maxwidth, newline, &genspace)
...
pp.flush
output
end
//}
@param output 出力先を指定します。output は << メソッドを持っていなければなりません。
@param... -
StringScanner
# pos=(n) (9019.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(/\... -
BigDecimal
# split -> [Integer , String , Integer , Integer] (919.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... -
BasicSocket
# getpeereid -> [Integer , Integer] (619.0) -
Unix ドメインソケットにおいて接続相手の euid と egid を 返します。
Unix ドメインソケットにおいて接続相手の euid と egid を
返します。
配列の最初の要素が euid, 2番目の要素が egid です。
ソケットが Unix ドメインソケットでない場合の返り値は
不定です。
require 'socket'
Socket.unix_server_loop("/tmp/sock") {|s|
begin
euid, egid = s.getpeereid
# Check the connected client is myself or not.
next if euid ... -
Matrix
# find _ index(selector = :all) {|e| . . . } -> [Integer , Integer] | nil (619.0) -
指定した値と一致する要素の位置を [row, column] という配列で返します。 ブロックを与えた場合は各要素を引数としてブロックを呼び出し、 返り値が真であった要素の位置を返します。
指定した値と一致する要素の位置を [row, column] という配列で返します。
ブロックを与えた場合は各要素を引数としてブロックを呼び出し、
返り値が真であった要素の位置を返します。
複数の位置で値が一致する/ブロックが真を返す、場合は最初
に見つかった要素の位置を返します。
selector で行列のどの部分を探すかを指定します。この引数の意味は
Matrix#each を参照してください。
//emlist[例][ruby]{
require 'matrix'
Matrix[ [1,2], [3,4] ].index(&:even?) # => [0, 1]
Matrix[ ... -
Matrix
# find _ index(value , selector = :all) -> [Integer , Integer] | nil (619.0) -
指定した値と一致する要素の位置を [row, column] という配列で返します。 ブロックを与えた場合は各要素を引数としてブロックを呼び出し、 返り値が真であった要素の位置を返します。
指定した値と一致する要素の位置を [row, column] という配列で返します。
ブロックを与えた場合は各要素を引数としてブロックを呼び出し、
返り値が真であった要素の位置を返します。
複数の位置で値が一致する/ブロックが真を返す、場合は最初
に見つかった要素の位置を返します。
selector で行列のどの部分を探すかを指定します。この引数の意味は
Matrix#each を参照してください。
//emlist[例][ruby]{
require 'matrix'
Matrix[ [1,2], [3,4] ].index(&:even?) # => [0, 1]
Matrix[ ... -
Matrix
# index(selector = :all) {|e| . . . } -> [Integer , Integer] | nil (619.0) -
指定した値と一致する要素の位置を [row, column] という配列で返します。 ブロックを与えた場合は各要素を引数としてブロックを呼び出し、 返り値が真であった要素の位置を返します。
指定した値と一致する要素の位置を [row, column] という配列で返します。
ブロックを与えた場合は各要素を引数としてブロックを呼び出し、
返り値が真であった要素の位置を返します。
複数の位置で値が一致する/ブロックが真を返す、場合は最初
に見つかった要素の位置を返します。
selector で行列のどの部分を探すかを指定します。この引数の意味は
Matrix#each を参照してください。
//emlist[例][ruby]{
require 'matrix'
Matrix[ [1,2], [3,4] ].index(&:even?) # => [0, 1]
Matrix[ ... -
Matrix
# index(value , selector = :all) -> [Integer , Integer] | nil (619.0) -
指定した値と一致する要素の位置を [row, column] という配列で返します。 ブロックを与えた場合は各要素を引数としてブロックを呼び出し、 返り値が真であった要素の位置を返します。
指定した値と一致する要素の位置を [row, column] という配列で返します。
ブロックを与えた場合は各要素を引数としてブロックを呼び出し、
返り値が真であった要素の位置を返します。
複数の位置で値が一致する/ブロックが真を返す、場合は最初
に見つかった要素の位置を返します。
selector で行列のどの部分を探すかを指定します。この引数の意味は
Matrix#each を参照してください。
//emlist[例][ruby]{
require 'matrix'
Matrix[ [1,2], [3,4] ].index(&:even?) # => [0, 1]
Matrix[ ... -
OpenSSL
:: SSL :: SSLContext # ciphers -> [[String , String , Integer , Integer]] (619.0) -
利用可能な共通鍵暗号の種類を配列で返します。
利用可能な共通鍵暗号の種類を配列で返します。
配列の各要素は以下のような配列です
[暗号方式の名前の文字列, 利用可能なSSL/TLSのバージョン文字列, 鍵長(ビット数), アルゴリズムのビット長]
例:
require 'openssl'
ctx = OpenSSL::SSL::SSLContext.new('TLSv1')
ctx.ciphers
# => [["DHE-RSA-AES256-SHA", "TLSv1/SSLv3", 256, 256],
# ["DHE-DSS-AES256-SHA", "TLSv1/SSLv3", 256, 256]... -
Prime
# prime _ division(value , generator= Prime :: Generator23 . new) -> [[Integer , Integer]] (619.0) -
与えられた整数を素因数分解します。
与えられた整数を素因数分解します。
@param value 素因数分解する任意の整数を指定します。
@param generator 素数生成器のインスタンスを指定します。
@return 素因数とその指数から成るペアを要素とする配列です。つまり、戻り値の各要素は2要素の配列 [n,e] であり、それぞれの内部配列の第1要素 n は value の素因数、第2要素は n**e が value を割り切る最大の自然数 e です。
@raise ZeroDivisionError 与えられた数値がゼロである場合に発生します。
//emlist[例][ruby]{
require 'p... -
Ripper
. lex(src , filename = & # 39;-& # 39; , lineno = 1) -> [[Integer , Integer] , Symbol , String , Ripper :: Lexer :: State] (619.0) -
Ruby プログラム str をトークンに分割し、そのリストを返します。 ただし Ripper.tokenize と違い、トークンの種類と位置情報も付属します。
Ruby プログラム str をトークンに分割し、そのリストを返します。
ただし Ripper.tokenize と違い、トークンの種類と位置情報も付属します。
@param src Ruby プログラムを文字列か IO オブジェクトで指定します。
@param filename src のファイル名を文字列で指定します。省略すると "-" になります。
@param lineno src の開始行番号を指定します。省略すると 1 になります。
//emlist[][ruby]{
require 'ripper'
pp Ripper.lex("def m(a) nil end"... -
bigdecimal (397.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 では正確な値を得る事がで... -
StringIO
# ungetc(str _ or _ int) -> nil (388.0) -
文字列か整数で指定された str_or_int を自身に書き戻します。 nil を返します。
文字列か整数で指定された str_or_int を自身に書き戻します。
nil を返します。
何回でも書き戻すことが可能です。
現在位置が自身のサイズよりも大きい場合は、自身をリサイズしてから、ch を書き戻します。
@param str_or_int 書き戻したい文字を文字列か整数で指定します。複数の文
字を書き戻す事もできます。
@raise IOError 自身が読み込み可能でない時に発生します。
//emlist[例][ruby]{
require "stringio"
s = StringIO.new("hoge")
s.pos = 1
s... -
BigDecimal
# round -> Integer (373.0) -
クラスメソッド BigDecimal.mode(BigDecimal::ROUND_MODE,flag) で指定した BigDecimal::ROUND_MODE に従って丸め操作を実行します。
クラスメソッド BigDecimal.mode(BigDecimal::ROUND_MODE,flag) で指定した
BigDecimal::ROUND_MODE に従って丸め操作を実行します。
@param n 小数点以下の桁数を整数で指定します。
@param b 丸め処理の方式として、BigDecimal.mode の第 1 引数と同じ
値を指定します。
BigDecimal.mode(BigDecimal::ROUND_MODE,flag) で何も指定せず、
かつ、引数を指定しない場合は
「小数点以下第一位の数を四捨五入して整数(BigDecimal 値)」に... -
Array
# pack(template) -> String (343.0) -
配列の内容を template で指定された文字列にしたがって、 バイナリとしてパックした文字列を返します。
配列の内容を template で指定された文字列にしたがって、
バイナリとしてパックした文字列を返します。
テンプレートは
型指定文字列とその長さ(省略時は1)を並べたものです。長さと
して * が指定された時は「残りのデータ全て」の長さを
表します。型指定文字は以下で述べる pack テンプレート文字列の通りです。
buffer が指定されていれば、バッファとして使って返値として返します。
もし template の最初にオフセット (@) が指定されていれば、
結果はオフセットの後ろから詰められます。
buffer の元の内容がオフセットより長ければ、
オフセットより後ろの部分は上... -
Array
# pack(template , buffer: String . new) -> String (343.0) -
配列の内容を template で指定された文字列にしたがって、 バイナリとしてパックした文字列を返します。
配列の内容を template で指定された文字列にしたがって、
バイナリとしてパックした文字列を返します。
テンプレートは
型指定文字列とその長さ(省略時は1)を並べたものです。長さと
して * が指定された時は「残りのデータ全て」の長さを
表します。型指定文字は以下で述べる pack テンプレート文字列の通りです。
buffer が指定されていれば、バッファとして使って返値として返します。
もし template の最初にオフセット (@) が指定されていれば、
結果はオフセットの後ろから詰められます。
buffer の元の内容がオフセットより長ければ、
オフセットより後ろの部分は上... -
String
# unpack(template) -> Array (343.0) -
Array#pack で生成された文字列を テンプレート文字列 template にしたがってアンパックし、 それらの要素を含む配列を返します。
Array#pack で生成された文字列を
テンプレート文字列 template にしたがってアンパックし、
それらの要素を含む配列を返します。
@param template pack テンプレート文字列
@return オブジェクトの配列
以下にあげるものは、Array#pack、String#unpack、String#unpack1
のテンプレート文字の一覧です。テンプレート文字は後に「長さ」を表す数字
を続けることができます。「長さ」の代わりに`*'とすることで「残り全て」
を表すこともできます。
長さの意味はテンプレート文字により異なりますが大... -
pack テンプレート文字列 (343.0)
-
pack テンプレート文字列
pack テンプレート文字列
以下にあげるものは、Array#pack、String#unpack、String#unpack1
のテンプレート文字の一覧です。テンプレート文字は後に「長さ」を表す数字
を続けることができます。「長さ」の代わりに`*'とすることで「残り全て」
を表すこともできます。
長さの意味はテンプレート文字により異なりますが大抵、
"iiii"
のように連続するテンプレート文字は
"i4"
と書き換えることができます。
テンプレート文字列中の空白類は無視されます。
また、`#' から改行あるいはテンプレート文字列の最後まではコメントとみな
され無視されます。... -
BasicSocket
# sendmsg(mesg , flags=0 , dest _ sockaddr=nil , *controls) -> Integer (337.0) -
sendmsg(2) を用いてメッセージを送ります。
sendmsg(2) を用いてメッセージを送ります。
このメソッドはブロックします。ノンブロッキング方式で通信したい
場合は BasicSocket#sendmsg_nonblock を用います。
ソケットが connection-less の場合は dest_sockaddr で
通信先のアドレスを指定しなければなりません。Socket.sockaddr_in
の返り値や Addrinfo オブジェクトを引数として渡すことができます。
controls には 補助データ(ancillary data)を渡します。
Socket::AncillaryData のインスタンスや
3要素(c... -
BigDecimal
# ceil -> Integer (337.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 (337.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
. double _ fig -> Integer (337.0) -
Ruby の Float クラスが保持できる有効数字の数を返します。
Ruby の Float クラスが保持できる有効数字の数を返します。
//emlist[][ruby]{
require 'bigdecimal'
p BigDecimal::double_fig # ==> 16 (depends on the CPU etc.)
//}
double_figは以下の C プログラムの結果と同じです。
double v = 1.0;
int double_fig = 0;
while (v + 1.0 > 1.0) {
++double_fig;
v /= 10;
} -
BigDecimal
. mode(s) -> Integer | nil (337.0) -
BigDecimal の計算処理の制御方法を設定、確認します。
BigDecimal の計算処理の制御方法を設定、確認します。
第2引数を省略、または nil を指定すると現状の設定値を返します。
@param s 制御方法の設定、確認を行う項目を BigDecimal::EXCEPTION_*、
BigDecimal::ROUND_MODE のいずれかで指定します。
@param v 引数 s が BigDecimal::ROUND_MODE の場合は
BigDecimal::ROUND_MODE 以外の BigDecimal::_ROUND* のいず
れかを指定します。指定した丸め処理が有効... -
BigDecimal
. mode(s , v) -> Integer | nil (337.0) -
BigDecimal の計算処理の制御方法を設定、確認します。
BigDecimal の計算処理の制御方法を設定、確認します。
第2引数を省略、または nil を指定すると現状の設定値を返します。
@param s 制御方法の設定、確認を行う項目を BigDecimal::EXCEPTION_*、
BigDecimal::ROUND_MODE のいずれかで指定します。
@param v 引数 s が BigDecimal::ROUND_MODE の場合は
BigDecimal::ROUND_MODE 以外の BigDecimal::_ROUND* のいず
れかを指定します。指定した丸め処理が有効... -
JSON
:: State # max _ nesting -> Integer (337.0) -
生成される JSON 形式の文字列のネストの深さの最大値を返します。
生成される JSON 形式の文字列のネストの深さの最大値を返します。
この値がゼロである場合は、ネストの深さのチェックを行いません。
//emlist[例 ネストの深さチェックを行う][ruby]{
require "json"
json_state = JSON::State.new(max_nesting: 2)
json_state.max_nesting # => 2
JSON.generate([[]], json_state)
JSON.generate([[[]]], json_state) # => JSON::NestingError
//}
... -
Random
# rand(max) -> Integer | Float (337.0) -
一様な擬似乱数を発生させます。
一様な擬似乱数を発生させます。
最初の形式では 0.0 以上 1.0 未満の実数を返します。
二番目の形式では 0 以上 max 未満の数を返します。
max が正の整数なら整数を、正の実数なら実数を返します。
0 や負の数を指定することは出来ません。
三番目の形式では range で指定された範囲の値を返します。
range の始端と終端が共に整数の場合は整数を、少なくとも片方が実数の場合は実数を返します。
rangeが終端を含まない(つまり ... で生成した場合)には終端の値は乱数の範囲から除かれます。
range.end - range.begin が整数を返す場合は rang... -
Random
# rand(range) -> Integer | Float (337.0) -
一様な擬似乱数を発生させます。
一様な擬似乱数を発生させます。
最初の形式では 0.0 以上 1.0 未満の実数を返します。
二番目の形式では 0 以上 max 未満の数を返します。
max が正の整数なら整数を、正の実数なら実数を返します。
0 や負の数を指定することは出来ません。
三番目の形式では range で指定された範囲の値を返します。
range の始端と終端が共に整数の場合は整数を、少なくとも片方が実数の場合は実数を返します。
rangeが終端を含まない(つまり ... で生成した場合)には終端の値は乱数の範囲から除かれます。
range.end - range.begin が整数を返す場合は rang... -
StringScanner
# match?(regexp) -> Integer | nil (337.0) -
スキャンポインタの地点だけで regexp と文字列のマッチを試します。 マッチしたら、スキャンポインタは進めずにマッチした 部分文字列の長さを返します。マッチしなかったら nil を 返します。
スキャンポインタの地点だけで regexp と文字列のマッチを試します。
マッチしたら、スキャンポインタは進めずにマッチした
部分文字列の長さを返します。マッチしなかったら nil を
返します。
マッチしたサイズは文字単位でなくバイト単位となります。
//emlist[][ruby]{
require 'strscan'
def case1(encode)
utf8 = "\u{308B 3073 3044}"
s = StringScanner.new(utf8.encode(encode))
s.match?(/#{"\u{308B}".encode(encode)}/)... -
StringScanner
# matched _ size -> Integer | nil (337.0) -
前回マッチした部分文字列の長さを返します。 前回マッチに失敗していたら nil を返します。
前回マッチした部分文字列の長さを返します。
前回マッチに失敗していたら nil を返します。
マッチしたサイズは文字単位でなくバイト単位となります。
//emlist[][ruby]{
require 'strscan'
def run(encode)
utf8 = "\u{308B 3073 3044}" # るびい
s = StringScanner.new(utf8.encode(encode))
s.scan(/#{"\u{308B}".encode(encode)}/)
s.matched_size
end
p run("UTF-8") #=> 3
p... -
ruby 1
. 6 feature (325.0) -
ruby 1.6 feature ruby version 1.6 は安定版です。この版での変更はバグ修正がメイン になります。
ruby 1.6 feature
ruby version 1.6 は安定版です。この版での変更はバグ修正がメイン
になります。
((<stable-snapshot|URL:ftp://ftp.netlab.co.jp/pub/lang/ruby/stable-snapshot.tar.gz>)) は、日々更新される安定版の最新ソースです。
== 1.6.8 (2002-12-24) -> stable-snapshot
: 2003-01-22: errno
EAGAIN と EWOULDBLOCK が同じ値のシステムで、EWOULDBLOCK がなくなっ
ていま... -
Addrinfo
# afamily -> Integer (319.0) -
アドレスファミリーを整数で返します。
アドレスファミリーを整数で返します。
require 'socket'
Addrinfo.tcp("localhost", 80).afamily == Socket::AF_INET #=> true -
Addrinfo
# ip _ port -> Integer (319.0) -
ポート番号を整数で返します。
ポート番号を整数で返します。
require 'socket'
Addrinfo.tcp("127.0.0.1", 80).ip_port #=> 80
Addrinfo.tcp("::1", 80).ip_port #=> 80
@see Addrinfo#ip_address, Addrinfo#ip_unpack -
Addrinfo
# ip _ unpack -> [String , Integer] (319.0) -
IP アドレスとポート番号を 2 要素の配列で返します。
IP アドレスとポート番号を 2 要素の配列で返します。
require 'socket'
Addrinfo.tcp("127.0.0.1", 80).ip_unpack #=> ["127.0.0.1", 80]
Addrinfo.tcp("::1", 80).ip_unpack #=> ["::1", 80]
@see Addrinfo#ip_address, Addrinfo#ip_port -
Addrinfo
# pfamily -> Integer (319.0) -
プロトコルファミリーを整数で返します。
プロトコルファミリーを整数で返します。
require 'socket'
Addrinfo.tcp("localhost", 80).pfamily == Socket::PF_INET #=> true -
Addrinfo
# protocol -> Integer (319.0) -
ソケットプロトコルを整数で返します。
ソケットプロトコルを整数で返します。
require 'socket'
Addrinfo.tcp("localhost", 80).protocol == Socket::IPPROTO_TCP #=> true -
Addrinfo
# socktype -> Integer (319.0) -
ソケットタイプを整数で返します。
ソケットタイプを整数で返します。
require 'socket'
Addrinfo.tcp("localhost", 80).socktype == Socket::SOCK_STREAM #=> true -
BasicSocket
# recvmsg(maxmesglen=nil , flags=0 , maxcontrollen=nil , opts={}) -> [String , Addrinfo , Integer , *Socket :: AncillaryData] (319.0) -
recvmsg(2) を用いてメッセージを受け取ります。
recvmsg(2) を用いてメッセージを受け取ります。
このメソッドはブロックします。ノンブロッキング方式で通信したい
場合は BasicSocket#recvmsg_nonblock を用います。
maxmesglen, maxcontrollen で受け取るメッセージおよび補助データ
(Socket::AncillaryData)の最大長をバイト単位で指定します。
省略した場合は必要なだけ内部バッファを拡大して
データが切れないようにします。
flags では Socket::MSG_* という名前の定数の biwsise OR を取った
ものを渡します。
opts にはその他... -
BasicSocket
# send(mesg , flags , dest _ sockaddr = nil) -> Integer (319.0) -
ソケットを介してデータを送ります。flags に関しては send(2) を参照してください。connect していないソケット に対しては送り先である dest_sockaddr を指定する必要があります。実際に送っ たデータの長さを返します。
ソケットを介してデータを送ります。flags に関しては
send(2) を参照してください。connect していないソケット
に対しては送り先である dest_sockaddr を指定する必要があります。実際に送っ
たデータの長さを返します。
dest_sockaddr には「ソケットアドレス構造体を pack した文字列」
を指定します。
データの送信に失敗した場合は例外 Errno::EXXX が発生します。
@param mesg 送信するデータを文字列で指定します。
@param flags send(2) の flags を参照してください。
@... -
BigDecimal
# truncate -> Integer (319.0) -
小数点以下の数を切り捨てて整数にします。
小数点以下の数を切り捨てて整数にします。
@param n 小数点以下の桁数を整数で指定します。
以下のように引数を与えて、小数点以下 n+1 位の数字を操作することもできます。
n が正の時は、小数点以下 n+1 位の数字を切り捨てます
(小数点以下を、最大 n 桁にします)。
n が負のときは小数点以上 n 桁目を操作します
(小数点位置から左に少なくとも n 個の 0 が並びます)。
//emlist[][ruby]{
require "bigdecimal"
BigDecimal("1.23456").truncate(4).to_f # => 1.2345
BigDec... -
BigDecimal
. limit(n = nil) -> Integer (319.0) -
生成されるBigDecimalオブジェクトの最大桁数をn桁に制限します。 n を指定しない、または n が nil の場合は、現状の最大桁数が返ります。
生成されるBigDecimalオブジェクトの最大桁数をn桁に制限します。
n を指定しない、または n が nil の場合は、現状の最大桁数が返ります。
戻り値は設定する前の値です。設定値のデフォルト値は0で、桁数無制限を表しています。
計算を続行する間に、数字の桁数が無制限に増えてしまうような場合 limit で
予め桁数を制限できます。この場合 BigDecimal.mode で指定された丸め処理が
実行されます。ただし、インスタンスメソッド (BigDecimal#truncate /
BigDecimal#round / BigDecimal#ceil / BigDecimal#... -
CSV
# field _ size _ limit -> Integer (319.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 (319.0) -
このファイルから読み込んだ最終行の行番号を返します。 フィールドに含まれる改行はこの値には影響しません。
このファイルから読み込んだ最終行の行番号を返します。
フィールドに含まれる改行はこの値には影響しません。
//emlist[例][ruby]{
require "csv"
csv = CSV.new("header1,header2\nrow1_1,row1_2")
csv.lineno # => 0
csv.readline
csv.lineno # => 1
//} -
CSV
:: FieldInfo # index -> Integer (319.0) -
行内で何番目のフィールドかわかるゼロベースのインデックスを返します。
行内で何番目のフィールドかわかるゼロベースのインデックスを返します。
//emlist[例][ruby]{
require 'csv'
csv = CSV.new("date1,date2\n2018-07-09,2018-07-10", headers: true)
csv.convert do |field,field_info|
p field_info.index
Date.parse(field)
end
p csv.first
# => 0
# => 1
# => #<CSV::Row "date1":#<Date: 2018-07-09 ((2458309j,0s... -
CSV
:: FieldInfo # line -> Integer (319.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 # index(header , minimum _ index = 0) -> Integer (319.0) -
与えられたヘッダの名前に対応するインデックスを返します。
与えられたヘッダの名前に対応するインデックスを返します。
@param header ヘッダの名前を指定します。
@param minimum_index このインデックスより後で、ヘッダの名前を探します。
重複しているヘッダがある場合に便利です。
//emlist[例][ruby]{
require "csv"
row = CSV::Row.new(["header1", "header2", "header1"], [1, 2, 3])
row.index("header1") # => 0
row.index("header1",... -
CSV
:: Table # length -> Integer (319.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 -
CSV
:: Table # size -> Integer (319.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 -
Digest
:: Base # block _ length -> Integer (319.0) -
ダイジェストのブロック長を取得します。 例えば、Digest::MD5であれば64、Digest::SHA512であれば128です。
ダイジェストのブロック長を取得します。
例えば、Digest::MD5であれば64、Digest::SHA512であれば128です。
本メソッドは、Digest::MD5などのダイジェストのサブクラスにより、
それぞれの実装に適したものにオーバーライドされます。
例: Digest::MD、Digest::SHA1、Digest::SHA512のブロック長を順番に調べる。
require 'digest'
["MD5", "SHA1", "SHA512"].map{|a| Digest(a).new().block_length } # => [64, 128, 128] -
Digest
:: Base # digest _ length -> Integer (319.0) -
ダイジェストのハッシュ値のバイト長を取得します。 例えば、Digest::MD5であれば16、Digest::SHA1であれば20です。
ダイジェストのハッシュ値のバイト長を取得します。
例えば、Digest::MD5であれば16、Digest::SHA1であれば20です。
本メソッドは、Digest::MD5などのダイジェストのサブクラスにより、
それぞれの実装に適したものにオーバーライドされます。
例: Digest::MD、Digest::SHA1、Digest::SHA512のハッシュ値のバイト長を順番に調べる。
require 'digest'
["MD5", "SHA1", "SHA512"].map{|a| Digest(a).new().digest_length } # => [16, 20, ... -
Digest
:: Base # length -> Integer (319.0) -
ダイジェストのハッシュ値のバイト長を取得します。 例えば、Digest::MD5であれば16、Digest::SHA1であれば20です。
ダイジェストのハッシュ値のバイト長を取得します。
例えば、Digest::MD5であれば16、Digest::SHA1であれば20です。
本メソッドは、Digest::MD5などのダイジェストのサブクラスにより、
それぞれの実装に適したものにオーバーライドされます。
例: Digest::MD、Digest::SHA1、Digest::SHA512のハッシュ値のバイト長を順番に調べる。
require 'digest'
["MD5", "SHA1", "SHA512"].map{|a| Digest(a).new().digest_length } # => [16, 20, ... -
Digest
:: Base # size -> Integer (319.0) -
ダイジェストのハッシュ値のバイト長を取得します。 例えば、Digest::MD5であれば16、Digest::SHA1であれば20です。
ダイジェストのハッシュ値のバイト長を取得します。
例えば、Digest::MD5であれば16、Digest::SHA1であれば20です。
本メソッドは、Digest::MD5などのダイジェストのサブクラスにより、
それぞれの実装に適したものにオーバーライドされます。
例: Digest::MD、Digest::SHA1、Digest::SHA512のハッシュ値のバイト長を順番に調べる。
require 'digest'
["MD5", "SHA1", "SHA512"].map{|a| Digest(a).new().digest_length } # => [16, 20, ... -
Etc
. # nprocessors -> Integer (319.0) -
有効な CPU コア数を返します。
有効な CPU コア数を返します。
//emlist[][ruby]{
require 'etc'
p Etc.nprocessors #=> 4
//} -
Etc
. # sysconf(name) -> Integer | nil (319.0) -
sysconf(3) で取得したシステム設定変数の値を返します。
sysconf(3) で取得したシステム設定変数の値を返します。
引数 name が制限に関する設定値であり、設定が制限がない状態の場合は nil
を返します。(sysconf(3) が -1 を返し、errno が設定されていない
場合)
@param name Etc モジュールの SC_ で始まる定数のいずれかを指定します。
//emlist[][ruby]{
require "etc"
Etc.sysconf(Etc::SC_ARG_MAX) # => 2097152
# Number of processors.
# It is not standardized.
Etc.... -
Fiddle
. # dlwrap(obj) -> Integer (319.0) -
指定されたオブジェクト obj のアドレスを表す整数を返します。
指定されたオブジェクト obj のアドレスを表す整数を返します。
@param obj Ruby のオブジェクトを指定します。
例:
require 'fiddle'
s = 'abc'
p addr = Fiddle.dlwrap(s) #=> 136122440
p Fiddle.dlunwrap(addr) #=> "abc" -
Fiddle
:: Handle # [](func) -> Integer (319.0) -
関数やグローバル変数 func へのポインタを取得し、整数として返します。
関数やグローバル変数 func へのポインタを取得し、整数として返します。
@param func 得たいシンボルの名前を文字列で与えます。
@raise Fiddle::DLError シンボルが見つからなかった時に発生します。
require 'fiddle'
h = Fiddle::Handle.new('libc.so.6')
p h.sym('strlen') # 関数ポインタのアドレスを整数で表示 -
Fiddle
:: Handle # sym(func) -> Integer (319.0) -
関数やグローバル変数 func へのポインタを取得し、整数として返します。
関数やグローバル変数 func へのポインタを取得し、整数として返します。
@param func 得たいシンボルの名前を文字列で与えます。
@raise Fiddle::DLError シンボルが見つからなかった時に発生します。
require 'fiddle'
h = Fiddle::Handle.new('libc.so.6')
p h.sym('strlen') # 関数ポインタのアドレスを整数で表示 -
Fiddle
:: Importer # sizeof(t) -> Integer (319.0) -
C における sizeof(t) の値を返します。
C における sizeof(t) の値を返します。
t が文字列の場合、その文字列が表す C の型の size が返されます。
例えば、sizeof("char") は 1 を返します。
sizeof("char*") は環境によって 4 や 8 といった値を返します。
Fiddle::Importer#struct で定義した
構造体クラスを渡すと、その構造体のサイズを返します。
Fiddle::Importer#union で定義した共用体クラスも同様です。
t がクラスの場合、t が to_ptr というインスタンスメソッドを持っている
ならば t.size を返します。
それ...