ライブラリ
- ビルトイン (54)
- csv (3)
- etc (3)
-
fiddle
/ import (12) - json (1)
-
json
/ add / ostruct (2) -
json
/ add / struct (2) - mkmf (2)
- objspace (1)
- openssl (5)
- ostruct (16)
- rake (1)
-
rexml
/ document (10) -
rexml
/ parsers / pullparser (1) -
rexml
/ sax2listener (1) -
rexml
/ streamlistener (1) - socket (7)
- zlib (1)
クラス
- Addrinfo (3)
- Array (1)
- CSV (3)
-
Fiddle
:: CStruct (5) -
OpenSSL
:: ASN1 :: Constructive (3) - OpenStruct (17)
-
REXML
:: Element (1) -
REXML
:: Instruction (8) -
REXML
:: Parsers :: PullEvent (1) -
Rake
:: Application (1) - Range (1)
- RubyVM (1)
-
RubyVM
:: InstructionSequence (18) -
Socket
:: Option (3) - String (1)
- Struct (28)
モジュール
- Etc (1)
-
Fiddle
:: Importer (6) - Kernel (2)
- ObjectSpace (5)
-
OpenSSL
:: ASN1 (1) -
REXML
:: SAX2Listener (1) -
REXML
:: StreamListener (1)
キーワード
-
1
. 6 . 8から1 . 8 . 0への変更点(まとめ) (1) - == (3)
- Addrinfo (1)
- CStruct (1)
- CircularDatastructure (1)
- Constructive (1)
-
DATA
_ PTR (1) -
Data
_ Get _ Struct (1) -
Data
_ Make _ Struct (1) -
Data
_ Wrap _ Struct (1) - Group (1)
-
INSTRUCTION
_ NAMES (1) - InspectKey (1)
- Instruction (1)
- InstructionSequence (1)
- Marshal フォーマット (1)
-
NEWS for Ruby 2
. 0 . 0 (1) -
NEWS for Ruby 2
. 2 . 0 (1) - OpenStruct (1)
- Passwd (1)
- RARRAY (1)
- RBASIC (1)
- RBIGNUM (1)
- RCLASS (1)
- RDATA (1)
- RFILE (1)
- RFLOAT (1)
- RHASH (1)
- RMODULE (1)
- ROBJECT (1)
- RREGEXP (1)
- RSTRING (1)
- RSTRUCT (1)
-
RUBY
_ DATA _ FUNC (1) - Ruby用語集 (1)
-
SC
_ THREAD _ DESTRUCTOR _ ITERATIONS (1) - Struct (1)
- ZStream (1)
- [] (3)
- []= (2)
-
absolute
_ path (1) -
base
_ label (1) - bigdecimal (1)
-
blk
_ copy _ prev (1) -
blk
_ free (1) -
blk
_ mark (1) -
blk
_ orphan (1) -
bm
_ mark (1) - clone (1)
- compile (1)
-
compile
_ file (1) -
compile
_ option (1) -
compile
_ option= (1) - content (1)
- content= (1)
- convert (3)
-
count
_ tdata _ objects (1) -
create
_ value (1) - data (1)
-
delete
_ field (1) - disasm (2)
- disassemble (2)
-
dyna
_ pop (1) -
dyna
_ push (1) - each (3)
-
each
_ object (4) -
each
_ pair (4) - eql? (2)
- equal? (1)
- eval (1)
-
fc
_ i (1) -
fc
_ path (1) - fiddle (1)
-
fiddle
/ import (1) -
fiddle
/ types (1) -
first
_ lineno (1) -
frame
_ dup (1) -
gvar
_ i (1) - hash (2)
-
have
_ struct _ member (2) - inspect (3)
- instruction (1)
- instruction? (1)
- instructions (1)
-
ivar
_ i (1) -
json
/ add / ostruct (1) -
json
/ add / struct (1) -
json
_ create (2) - label (1)
- length (1)
- linger (1)
- malloc (1)
-
mark
_ global _ entry (1) - members (2)
- modifiable (1)
- new (9)
-
new
_ blktag (1) -
new
_ dvar (1) -
new
_ ostruct _ member (1) -
node
_ type (1) - of (1)
- ostruct (1)
- pack (1)
- pack テンプレート文字列 (1)
- path (1)
-
processing
_ instruction (1) -
rb
_ gc _ mark _ frame (1) -
rb
_ global _ entry (1) -
rb
_ gvar _ defined (1) -
rb
_ gvar _ get (1) -
rb
_ gvar _ set (1) -
rb
_ reserved _ word (1) -
rb
_ thread _ wait _ for (1) -
remove
_ trace (1) -
rexml
/ document (1) -
ruby 1
. 6 feature (1) -
ruby 1
. 8 . 2 feature (1) -
ruby 1
. 9 feature (1) -
scope
_ dup (1) - select (2)
- size (2)
- sizeof (1)
- socket (1)
-
st
_ init _ table (1) -
st
_ init _ table _ with _ size (1) - tagging (1)
- tagging= (1)
- target (1)
- target= (1)
-
to
_ a (2) -
to
_ h (2) -
to
_ i (1) -
to
_ json (2) -
to
_ ptr (1) -
to
_ s (4) -
to
_ sockaddr (1) -
trace
_ en (1) -
trace
_ ev (1) - traverse (1)
- typealias (1)
-
undef
_ setter (1) - union (1)
- unpack (1)
-
val
_ setter (1) - value (1)
- values (1)
-
values
_ at (1) - yaml (1)
-
yaml
/ store (1)
検索結果
先頭5件
-
RubyVM
:: InstructionSequence . disasm(body) -> String (9001.0) -
引数 body で指定したオブジェクトから作成した RubyVM::InstructionSequence オブジェクトを人間が読める形式の文字 列に変換して返します。
引数 body で指定したオブジェクトから作成した
RubyVM::InstructionSequence オブジェクトを人間が読める形式の文字
列に変換して返します。
@param body Proc、Method オブジェクトを指定します。
例1:Proc オブジェクトを指定した場合
# /tmp/proc.rb
p = proc { num = 1 + 2 }
puts RubyVM::InstructionSequence.disasm(p)
出力:
== disasm: <RubyVM::InstructionSequence:block in <main... -
RubyVM
:: InstructionSequence . disassemble(body) -> String (9001.0) -
引数 body で指定したオブジェクトから作成した RubyVM::InstructionSequence オブジェクトを人間が読める形式の文字 列に変換して返します。
引数 body で指定したオブジェクトから作成した
RubyVM::InstructionSequence オブジェクトを人間が読める形式の文字
列に変換して返します。
@param body Proc、Method オブジェクトを指定します。
例1:Proc オブジェクトを指定した場合
# /tmp/proc.rb
p = proc { num = 1 + 2 }
puts RubyVM::InstructionSequence.disasm(p)
出力:
== disasm: <RubyVM::InstructionSequence:block in <main... -
Struct
:: Group (9001.0) -
Alias of Etc::Group
Alias of Etc::Group -
Struct
:: Passwd (9001.0) -
Alias of Etc::Passwd
Alias of Etc::Passwd -
static struct RVarmap * new
_ dvar(ID id , VALUE value , struct RVarmap *prev) (601.0) -
-
struct RArray * RARRAY(VALUE obj) (397.0)
-
obj を struct RArray* にキャストする。 本当は obj が struct RArray* でないとしてもキャストしてしまう。
obj を struct RArray* にキャストする。
本当は obj が struct RArray* でないとしてもキャストしてしまう。 -
Fiddle
:: Importer # create _ value(type , val = nil) -> Fiddle :: CStruct (349.0) -
型が type で要素名が "value" であるような構造体を 定義(Fiddle::Importer#struct)し、 その構造体のメモリを Fiddle::CStruct#malloc で確保し、 確保したメモリを保持しているオブジェクトを返します。
型が type で要素名が "value" であるような構造体を
定義(Fiddle::Importer#struct)し、
その構造体のメモリを Fiddle::CStruct#malloc で確保し、
確保したメモリを保持しているオブジェクトを返します。
type は "int", "void*" といった文字列で型を指定します。
val に nil 以外を指定すると、確保された構造体に
その値を代入します。
@param type 型を表す文字列
@param val 構造体に確保される初期値
例
require 'fiddle/import'
module M
... -
Fiddle
:: Importer # value(type , val = nil) -> Fiddle :: CStruct (349.0) -
型が type で要素名が "value" であるような構造体を 定義(Fiddle::Importer#struct)し、 その構造体のメモリを Fiddle::CStruct#malloc で確保し、 確保したメモリを保持しているオブジェクトを返します。
型が type で要素名が "value" であるような構造体を
定義(Fiddle::Importer#struct)し、
その構造体のメモリを Fiddle::CStruct#malloc で確保し、
確保したメモリを保持しているオブジェクトを返します。
type は "int", "void*" といった文字列で型を指定します。
val に nil 以外を指定すると、確保された構造体に
その値を代入します。
@param type 型を表す文字列
@param val 構造体に確保される初期値
例
require 'fiddle/import'
module M
... -
st
_ table * st _ init _ table _ with _ size(struct st _ hash _ type *type , int size) (349.0) -
st_table を作成する。_with_size はサイズを指定して生成する。 struct st_hash_type はハッシュ値を得る関数と、同値判定を行う 関数を持つ。
st_table を作成する。_with_size はサイズを指定して生成する。
struct st_hash_type はハッシュ値を得る関数と、同値判定を行う
関数を持つ。 -
static struct kwtable * rb
_ reserved _ word(const char *str , unsigned int len) (319.0) -
長さ len の文字列 str が予約語であれば そのフラグテーブルを返します。str が予約語でなければ NULL を返します。
長さ len の文字列 str が予約語であれば
そのフラグテーブルを返します。str が予約語でなければ
NULL を返します。
struct kwtable {
char *name; /* 予約語の名前 */
int id[2]; /* 0: 非修飾型シンボル
1: 修飾型シンボル (kIF_MOD など) があれば
それを格納する。なければ id[0]... -
OpenSSL
:: ASN1 . # traverse(der) {|depth , off , hlen , len , constructed , tag _ class , tag| . . . } -> nil (301.0) -
DER形式の文字列を解析し、そこに含まれる ASN.1 の値 のプロパティを引数として与えられたブロックを呼びだします。
DER形式の文字列を解析し、そこに含まれる ASN.1 の値
のプロパティを引数として与えられたブロックを呼びだします。
OpenSSL::ASN1.#decode_all のように、文字列に含まれる
全ての ASN.1 オブジェクトのインスタンスを解析します。
ブロックに渡される引数は以下の通りです。
* depth: 再帰の深さ
* off: 対象の値をエンコードした文字列の der の先頭からのオフセット
* hlen: エンコードされたデータのヘッダのバイト数
* len: エンコードされたデータの値フィールドのバイト数
* constructed:対象の AS... -
Rake
:: Application # options -> OpenStruct (301.0) -
コマンドラインで与えられたアプリケーションのオプションを返します。
コマンドラインで与えられたアプリケーションのオプションを返します。
//emlist[][ruby]{
# Rakefile での記載例とする
task default: :test_rake_app
task :test_rake_app do
Rake.application.options # => #<OpenStruct always_multitask=false, backtrace=false, build_all=false, dryrun=false, ignore_deprecate=false, ignore_system=false, job_stats=... -
VALUE rb
_ gvar _ defined(struct global _ entry *entry) (301.0) -
entry で示されるグローバル変数が定義されているなら真。
entry で示されるグローバル変数が定義されているなら真。 -
VALUE rb
_ gvar _ get(struct global _ entry *entry) (301.0) -
グローバル変数のエントリ entry から値を取得します。
グローバル変数のエントリ entry から値を取得します。 -
VALUE rb
_ gvar _ set(struct global _ entry *entry , VALUE val) (301.0) -
グローバル変数のエントリ entry に値を代入します。
グローバル変数のエントリ entry に値を代入します。 -
st
_ table * st _ init _ table(struct st _ hash _ type *type) (301.0) -
-
static VALUE fc
_ path(struct fc _ result *fc , ID name) (301.0) -
-
static VALUE trace
_ en(struct global _ variable *var) (301.0) -
-
static VALUE trace
_ ev(struct trace _ data *data) (301.0) -
-
static int blk
_ orphan(struct BLOCK *data) (301.0) -
data が作成された SCOPE かまたはその子ではない SCOPE を評価しているとき真。
data が作成された SCOPE かまたはその子ではない
SCOPE を評価しているとき真。 -
static int fc
_ i(ID key , VALUE value , struct fc _ result *res) (301.0) -
-
static int gvar
_ i(ID key , struct global _ entry *entry , VALUE ary) (301.0) -
-
static int ivar
_ i(ID key , struct global _ entry *entry , VALUE ary) (301.0) -
-
static int mark
_ global _ entry(ID key , struct global _ entry *entry) (301.0) -
-
static struct BLOCKTAG * new
_ blktag(void) (301.0) -
-
static struct RVarmap * dyna
_ push(void) (301.0) -
ブロックローカル変数テーブルをプッシュします。
ブロックローカル変数テーブルをプッシュします。 -
static void blk
_ copy _ prev(struct BLOCK *block) (301.0) -
-
static void blk
_ free(struct BLOCK *data) (301.0) -
-
static void blk
_ mark(struct BLOCK *data) (301.0) -
-
static void bm
_ mark(struct METHOD *data) (301.0) -
-
static void dyna
_ pop(struct RVarmap *vars) (301.0) -
ブロックローカル変数テーブルをポップします。
ブロックローカル変数テーブルをポップします。 -
static void frame
_ dup(struct FRAME *frame) (301.0) -
frame とその親 FRAME 全てをスタックからヒープに割り当てなおします。
frame とその親 FRAME 全てをスタックからヒープに割り当てなおします。 -
static void remove
_ trace(struct global _ variable *var) (301.0) -
-
static void scope
_ dup(struct SCOPE *scope) (301.0) -
scope とその親の SCOPE 全ての local_vars を スタックからヒープに割り当て直します。
scope とその親の SCOPE 全ての local_vars を
スタックからヒープに割り当て直します。 -
static void undef
_ setter(VALUE val , ID id , void *data , struct global _ variable *var) (301.0) -
-
static void val
_ setter(VALUE val , ID id , void *data , struct global _ variable *var) (301.0) -
-
struct RBasic * RBASIC(VALUE obj) (301.0)
-
-
struct RBignum * RBIGNUM(VALUE obj) (301.0)
-
-
struct RClass * RCLASS(VALUE obj) (301.0)
-
-
struct RClass * RMODULE(VALUE obj) (301.0)
-
-
struct RData * RDATA(VALUE obj) (301.0)
-
-
struct RFile * RFILE(VALUE obj) (301.0)
-
-
struct RFloat * RFLOAT(VALUE obj) (301.0)
-
-
struct RHash * RHASH(VALUE obj) (301.0)
-
-
struct RObject * ROBJECT(VALUE obj) (301.0)
-
-
struct RRegexp * RREGEXP(VALUE obj) (301.0)
-
-
struct RString * RSTRING(VALUE obj) (301.0)
-
引数 obj を RString 構造体にキャストして返します。
引数 obj を RString 構造体にキャストして返します。
@param obj Rubyの文字列オブジェクトを指定します。 -
struct global
_ entry * rb _ global _ entry(ID id) (301.0) -
-
void rb
_ gc _ mark _ frame(struct FRAME *frame) (301.0) -
frame をマークします。
frame をマークします。 -
void rb
_ thread _ wait _ for(struct timeval time) (301.0) -
time の長さの時間が経過するまでカレントスレッドを停止します。
time の長さの時間が経過するまでカレントスレッドを停止します。 -
1
. 6 . 8から1 . 8 . 0への変更点(まとめ) (199.0) -
1.6.8から1.8.0への変更点(まとめ) * ((<1.6.8から1.8.0への変更点(まとめ)/インタプリタの変更>)) * ((<1.6.8から1.8.0への変更点(まとめ)/追加されたクラス/モジュール>)) * ((<1.6.8から1.8.0への変更点(まとめ)/追加されたメソッド>)) * ((<1.6.8から1.8.0への変更点(まとめ)/追加された定数>)) * ((<1.6.8から1.8.0への変更点(まとめ)/拡張されたクラス/メソッド(互換性のある変更)>)) * ((<1.6.8から1.8.0への変更点(まとめ)/変更されたクラス/メソッド(互換性のない変更)>)) * ((<1.6.8から1.8.0への変更点(まとめ)/文法の変更>)) * ((<1.6.8から1.8.0への変更点(まとめ)/正規表現>)) * ((<1.6.8から1.8.0への変更点(まとめ)/Marshal>)) * ((<1.6.8から1.8.0への変更点(まとめ)/Windows 対応>)) * ((<1.6.8から1.8.0への変更点(まとめ)/廃止された(される予定の)機能>)) * ((<1.6.8から1.8.0への変更点(まとめ)/ライブラリ>)) * ((<1.6.8から1.8.0への変更点(まとめ)/拡張ライブラリAPI>)) * ((<1.6.8から1.8.0への変更点(まとめ)/バグ修正>)) * ((<1.6.8から1.8.0への変更点(まとめ)/サポートプラットフォームの追加>))
1.6.8から1.8.0への変更点(まとめ)
* ((<1.6.8から1.8.0への変更点(まとめ)/インタプリタの変更>))
* ((<1.6.8から1.8.0への変更点(まとめ)/追加されたクラス/モジュール>))
* ((<1.6.8から1.8.0への変更点(まとめ)/追加されたメソッド>))
* ((<1.6.8から1.8.0への変更点(まとめ)/追加された定数>))
* ((<1.6.8から1.8.0への変更点(まとめ)/拡張されたクラス/メソッド(互換性のある変更)>))
* ((<1.6.8から1.8.0への変更点(まとめ)/変更されたクラス/メソッド(互換性のない変更)>))... -
NEWS for Ruby 2
. 2 . 0 (109.0) -
NEWS for Ruby 2.2.0 このドキュメントは前回リリース以降のバグ修正を除くユーザーに影響のある機能の変更のリストです。
...NEWS for Ruby 2.2.0
このドキュメントは前回リリース以降のバグ修正を除くユーザーに影響のある機能の変更のリストです。
それぞれのエントリーは参照情報があるため短いです。
十分な情報と共に書かれた全ての変更のリス... -
ruby 1
. 6 feature (109.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 がなくなっ
ていま... -
rexml
/ document (91.0) -
DOM スタイルの XML パーサ。
DOM スタイルの XML パーサ。
REXML::Document.new で XML 文書から DOM ツリーを
構築し、ツリーのノードの各メソッドで文書の内容にアクセスします。
以下のプログラムではブックマークの XML からデータを取り出します。
//emlist[][ruby]{
require 'rexml/document'
require 'pp'
Bookmark = Struct.new(:href, :title, :desc)
doc = REXML::Document.new(<<XML)
<?xml version="1.0" encoding="UTF-... -
Marshal フォーマット (73.0)
-
Marshal フォーマット フォーマットバージョン 4.8 を元に記述しています。
Marshal フォーマット
フォーマットバージョン 4.8 を元に記述しています。
=== nil, true, false
それぞれ、'0', 'T', 'F' になります。
//emlist[][ruby]{
p Marshal.dump(nil).unpack1("x2 a*") # => "0"
p Marshal.dump(true).unpack1("x2 a*") # => "T"
p Marshal.dump(false).unpack1("x2 a*") # => "F"
//}
Ruby 2.1 以前では、インスタンス変数を設定しても dump されません... -
Fiddle
:: Importer # typealias(new , orig) -> () (67.0) -
extern や struct で利用する型の別名を定義します。
extern や struct で利用する型の別名を定義します。
@param new 別名(文字列)
@param orig 別名を付けたい型の名前(文字列)
@see Fiddle::Importer#extern, Fiddle::Importer#sizeof,
Fiddle::Importer#struct, Fiddle::Importer#union -
NEWS for Ruby 2
. 0 . 0 (55.0) -
NEWS for Ruby 2.0.0 このドキュメントは前回リリース以降のバグ修正を除くユーザーに影響のある機能の変更のリストです。
NEWS for Ruby 2.0.0
このドキュメントは前回リリース以降のバグ修正を除くユーザーに影響のある機能の変更のリストです。
それぞれのエントリーは参照情報があるため短いです。
十分な情報と共に書かれた全ての変更のリストは ChangeLog ファイルか bugs.ruby-lang.org の issue を参照してください。
== 1.9.3 以降の変更
=== 言語仕様の変更
* キーワード引数を追加しました
* %i, %I をシンボルの配列作成のために追加しました。(%w, %W に似ています)
* デフォルトのソースエンコーディングを US-ASCI... -
ObjectSpace
. # each _ object -> Enumerator (55.0) -
指定された klass と Object#kind_of? の関係にある全ての オブジェクトに対して繰り返します。引数が省略された時には全てのオブ ジェクトに対して繰り返します。 繰り返した数を返します。
指定された klass と Object#kind_of? の関係にある全ての
オブジェクトに対して繰り返します。引数が省略された時には全てのオブ
ジェクトに対して繰り返します。
繰り返した数を返します。
ブロックが与えられなかった場合は、
Enumerator オブジェクトを返します。
次のクラスのオブジェクトについては繰り返しません
* Fixnum
* Symbol
* TrueClass
* FalseClass
* NilClass
とくに、klass に Fixnum や Symbol などのクラスを指定した場合は、
何も繰り返さないことになります。
なお、Sy... -
ObjectSpace
. # each _ object {|object| . . . } -> Integer (55.0) -
指定された klass と Object#kind_of? の関係にある全ての オブジェクトに対して繰り返します。引数が省略された時には全てのオブ ジェクトに対して繰り返します。 繰り返した数を返します。
指定された klass と Object#kind_of? の関係にある全ての
オブジェクトに対して繰り返します。引数が省略された時には全てのオブ
ジェクトに対して繰り返します。
繰り返した数を返します。
ブロックが与えられなかった場合は、
Enumerator オブジェクトを返します。
次のクラスのオブジェクトについては繰り返しません
* Fixnum
* Symbol
* TrueClass
* FalseClass
* NilClass
とくに、klass に Fixnum や Symbol などのクラスを指定した場合は、
何も繰り返さないことになります。
なお、Sy... -
ObjectSpace
. # each _ object(klass) -> Enumerator (55.0) -
指定された klass と Object#kind_of? の関係にある全ての オブジェクトに対して繰り返します。引数が省略された時には全てのオブ ジェクトに対して繰り返します。 繰り返した数を返します。
指定された klass と Object#kind_of? の関係にある全ての
オブジェクトに対して繰り返します。引数が省略された時には全てのオブ
ジェクトに対して繰り返します。
繰り返した数を返します。
ブロックが与えられなかった場合は、
Enumerator オブジェクトを返します。
次のクラスのオブジェクトについては繰り返しません
* Fixnum
* Symbol
* TrueClass
* FalseClass
* NilClass
とくに、klass に Fixnum や Symbol などのクラスを指定した場合は、
何も繰り返さないことになります。
なお、Sy... -
ObjectSpace
. # each _ object(klass) {|object| . . . } -> Integer (55.0) -
指定された klass と Object#kind_of? の関係にある全ての オブジェクトに対して繰り返します。引数が省略された時には全てのオブ ジェクトに対して繰り返します。 繰り返した数を返します。
指定された klass と Object#kind_of? の関係にある全ての
オブジェクトに対して繰り返します。引数が省略された時には全てのオブ
ジェクトに対して繰り返します。
繰り返した数を返します。
ブロックが与えられなかった場合は、
Enumerator オブジェクトを返します。
次のクラスのオブジェクトについては繰り返しません
* Fixnum
* Symbol
* TrueClass
* FalseClass
* NilClass
とくに、klass に Fixnum や Symbol などのクラスを指定した場合は、
何も繰り返さないことになります。
なお、Sy... -
yaml
/ store (55.0) -
RubyのオブジェクトをYAML形式の外部ファイルに格納するためのクラスです。
RubyのオブジェクトをYAML形式の外部ファイルに格納するためのクラスです。
例:
require 'yaml/store'
Person = Struct.new :first_name, :last_name
people = [Person.new("Bob", "Smith"), Person.new("Mary", "Johnson")]
store = YAML::Store.new "test.store"
store.transaction do
store["people"] = people
store["greeting"... -
Addrinfo
# to _ s -> String (49.0) -
struct sockaddr をパックした形式の文字列に変換します。
struct sockaddr をパックした形式の文字列に変換します。
require 'socket'
Addrinfo.tcp("localhost", 80).to_sockaddr
#=> "\x02\x00\x00P\x7F\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00" -
Addrinfo
# to _ sockaddr -> String (49.0) -
struct sockaddr をパックした形式の文字列に変換します。
struct sockaddr をパックした形式の文字列に変換します。
require 'socket'
Addrinfo.tcp("localhost", 80).to_sockaddr
#=> "\x02\x00\x00P\x7F\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00\x00" -
MACRO RUBY
_ DATA _ FUNC(func) (49.0) -
任意の関数へのポインタ func を struct RData の dmark/dfree の 値として適する型に強制キャストします。
任意の関数へのポインタ func を struct RData の dmark/dfree の
値として適する型に強制キャストします。 -
void * DATA
_ PTR(VALUE dta) (49.0) -
実際は struct RData* 型である dta から、 それがラップしているポインタを取り出します。
実際は struct RData* 型である dta から、
それがラップしているポインタを取り出します。 -
CSV
# convert {|field , field _ info| . . . } (37.0) -
引数 name で指定した変換器かブロックに各フィールドを渡して文字列から別 のオブジェクトへと変換します。
引数 name で指定した変換器かブロックに各フィールドを渡して文字列から別
のオブジェクトへと変換します。
引数 name を指定した場合は、組み込みの CSV::Converters を変換器
として利用するために使います。また、独自の変換器を追加することもできま
す。
ブロックパラメータを一つ受け取るブロックを与えた場合は、そのブロックは
フィールドを受け取ります。ブロックパラメータを二つ受け取るブロックを与
えた場合は、そのブロックは、フィールドと CSV::FieldInfo のインス
タンスを受け取ります。ブロックは変換後の値かフィールドそのものを返さな
ければなりません。
... -
CSV
# convert {|field| . . . } (37.0) -
引数 name で指定した変換器かブロックに各フィールドを渡して文字列から別 のオブジェクトへと変換します。
引数 name で指定した変換器かブロックに各フィールドを渡して文字列から別
のオブジェクトへと変換します。
引数 name を指定した場合は、組み込みの CSV::Converters を変換器
として利用するために使います。また、独自の変換器を追加することもできま
す。
ブロックパラメータを一つ受け取るブロックを与えた場合は、そのブロックは
フィールドを受け取ります。ブロックパラメータを二つ受け取るブロックを与
えた場合は、そのブロックは、フィールドと CSV::FieldInfo のインス
タンスを受け取ります。ブロックは変換後の値かフィールドそのものを返さな
ければなりません。
... -
CSV
# convert(name) (37.0) -
引数 name で指定した変換器かブロックに各フィールドを渡して文字列から別 のオブジェクトへと変換します。
引数 name で指定した変換器かブロックに各フィールドを渡して文字列から別
のオブジェクトへと変換します。
引数 name を指定した場合は、組み込みの CSV::Converters を変換器
として利用するために使います。また、独自の変換器を追加することもできま
す。
ブロックパラメータを一つ受け取るブロックを与えた場合は、そのブロックは
フィールドを受け取ります。ブロックパラメータを二つ受け取るブロックを与
えた場合は、そのブロックは、フィールドと CSV::FieldInfo のインス
タンスを受け取ります。ブロックは変換後の値かフィールドそのものを返さな
ければなりません。
... -
Fiddle
:: Importer # sizeof(t) -> Integer (37.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 を返します。
それ... -
fiddle
/ import (37.0) -
fiddle ライブラリのための高レベルインターフェースを提供するライブラリです。
fiddle ライブラリのための高レベルインターフェースを提供するライブラリです。
通常は fiddle ライブラリを使わずこの fiddle/import ライブラリを使います。
主な使い方は fiddle も参照してください。
=== 高度な使用法
==== ○○の配列を関数に渡したい
例えば与えられた長さ len の double の配列の和を計算する関数
double sum(double *arry, int len);
があったとします。これを呼び出したい場合は以下のように Array#pack を使用します。
require 'fiddle/import'
m... -
socket (37.0)
-
socket はプロセス外部との通信 (プロセス間通信、ホスト間通信) を実現します。
socket はプロセス外部との通信 (プロセス間通信、ホスト間通信) を実現します。
=== ソケットアドレス
ソケットというのは通信路の末端です。
たとえば 1対1 の通信では、まず通信路の両端にひとつずつソケットをつくり、
それらのソケットを接続することによって通信路が確立し、相互に通信できるようになります。
この接続時に、一方のソケットにもう一方のソケットの場所を教えてやる必要がありますが、
この場所を指定するものがソケットアドレスです。
ソケットアドレスはソケットの種類によって中身が異なります。
たとえば TCP では IP アドレスとポート番号ですし、
Unix ドメインソ... -
yaml (37.0)
-
構造化されたデータを表現するフォーマットであるYAML (YAML Ain't Markup Language) を扱うためのライブラリです。
構造化されたデータを表現するフォーマットであるYAML (YAML Ain't Markup Language) を扱うためのライブラリです。
//emlist[例1: 構造化された配列][ruby]{
require 'yaml'
data = ["Taro san", "Jiro san", "Saburo san"]
str_r = YAML.dump(data)
str_l = <<~YAML_EOT
---
- Taro san
- Jiro san
- Saburo san
YAML_EOT
p str_r == str_l # => true
//}
... -
Addrinfo (19.0)
-
ソケットのアドレス情報を保持するクラスです。
ソケットのアドレス情報を保持するクラスです。
ホスト/ポート番号/プロトコルなどを同定するために用いられます。
IPv4/IPv6/Unix domain socketなどのアドレス情報を保持することができます。
struct addrinfo に対応します。 -
Addrinfo
. new(sockaddr , family=Socket :: PF _ UNSPEC , socktype=0 , protocol=0) -> Addrinfo (19.0) -
新たな Addrinfo オブジェクトを返します。
新たな Addrinfo オブジェクトを返します。
sockaddr は connect(2) などで使われるパラメータで、
struct sockaddr に対応します。faimily, socktype, protocol
は socket(2) のパラメータに対応します。
sockaddr には文字列もしくは配列を指定します。
配列の場合は IPSocket#addr や UNIXSocket#addr の
値と互換でなければなりません。
文字列の場合は Socket.sockaddr_in や
Socket.unpack_sockaddr_un で得られるようなものでなければ
な... -
Array
# pack(template) -> String (19.0) -
配列の内容を template で指定された文字列にしたがって、 バイナリとしてパックした文字列を返します。
配列の内容を template で指定された文字列にしたがって、
バイナリとしてパックした文字列を返します。
テンプレートは
型指定文字列とその長さ(省略時は1)を並べたものです。長さと
して * が指定された時は「残りのデータ全て」の長さを
表します。型指定文字は以下で述べる pack テンプレート文字列の通りです。
@param template 自身のバイナリとしてパックするためのテンプレートを文字列で指定します。
以下にあげるものは、Array#pack、String#unpack
のテンプレート文字の一覧です。テンプレート文字は後に「長さ」を表す数字
を続けることができま... -
Fiddle
:: Importer # union(signature) -> Class (19.0) -
C の共用体型に対応する Ruby のクラスを構築して返します。
C の共用体型に対応する Ruby のクラスを構築して返します。
共用体型を Ruby 上で定義する方法は Fiddle::Importer#struct と
ほぼ同様です。C における
typedef union epoll_data
{
void *ptr;
int fd;
uint32_t u32;
uint64_t u64;
} epoll_data_t;
は、Ruby上では
require 'fiddle/import'
module M
extend Fiddle::Importer
dlload "lib... -
ObjectSpace
. # count _ tdata _ objects(result _ hash = nil) -> Hash (19.0) -
T_DATA の種類ごとにオブジェクトの数を格納したハッシュを返します。
T_DATA の種類ごとにオブジェクトの数を格納したハッシュを返します。
@param result_hash 戻り値のためのハッシュを指定します。省略した場合は新
しくハッシュを作成します。result_hash の内容は上書き
されます。プローブ効果を避けるために使用します。
@raise TypeError result_hash にハッシュ以外を指定した時に発生します。
本メソッドは普通の Ruby プログラマ向けのメソッドではありません。パフォー
マンスに興味のある C Ruby の開発者向けのもので... -
Range
. new(first , last , exclude _ end = false) -> Range (19.0) -
first から last までの範囲オブジェクトを生成して返しま す。
first から last までの範囲オブジェクトを生成して返しま
す。
exclude_end が真ならば終端を含まない範囲オブジェクトを生
成します。exclude_end 省略時には終端を含みます。
@param first 最初のオブジェクト
@param last 最後のオブジェクト
@param exclude_end 真をセットした場合終端を含まない範囲オブジェクトを生成します
@raise ArgumentError first <=> last が nil の場合に発生します
//emlist[例: 整数の範囲オブジェクトの場合][ruby]{
Range.new(... -
Ruby用語集 (19.0)
-
Ruby用語集 A B C D E F G I J M N O R S Y
Ruby用語集
A B C D E F G I J M N O R S Y
a ka sa ta na ha ma ya ra wa
=== 記号・数字
: %記法
: % notation
「%」記号で始まる多種多様なリテラル記法の総称。
参照:d:spec/literal#percent
: 0 オリジン
: zero-based
番号が 0 から始まること。
例えば、
Array や Vector、Matrix などの要素の番号、
String における文字の位置、
といったものは 0 オリジンである。
: 1 オリジン
: one-based
... -
Socket
:: Option # data -> String (19.0) -
オプションのデータ(内容)を文字列で返します。
オプションのデータ(内容)を文字列で返します。
内容が整数や真偽値、もしくは struct linger であることがわかっている場合には、
Socket::Option#int, Socket::Option#bool, Socket::Option#linger
を用いて
to_s は過去との互換性のために存在します。 -
Socket
:: Option # linger -> [bool , Integer] (19.0) -
オプションが SOL_SOCKET/SO_LINGER である場合に、 オプションのデータ(内容)を真偽値と整数のペアとして返します。
オプションが SOL_SOCKET/SO_LINGER である場合に、
オプションのデータ(内容)を真偽値と整数のペアとして返します。
@raise TypeError dataのバイト数が不適切である(sizeof(struct linger)と異なる)場合や、
level/optname が SOL_SOCKET/SO_LINGER でないに発生します
@see Socket::Option#data -
Socket
:: Option # to _ s -> String (19.0) -
オプションのデータ(内容)を文字列で返します。
オプションのデータ(内容)を文字列で返します。
内容が整数や真偽値、もしくは struct linger であることがわかっている場合には、
Socket::Option#int, Socket::Option#bool, Socket::Option#linger
を用いて
to_s は過去との互換性のために存在します。 -
String
# unpack(template) -> Array (19.0) -
Array#pack で生成された文字列を テンプレート文字列 template にしたがってアンパックし、 それらの要素を含む配列を返します。
Array#pack で生成された文字列を
テンプレート文字列 template にしたがってアンパックし、
それらの要素を含む配列を返します。
@param template pack テンプレート文字列
@return オブジェクトの配列
以下にあげるものは、Array#pack、String#unpack
のテンプレート文字の一覧です。テンプレート文字は後に「長さ」を表す数字
を続けることができます。「長さ」の代わりに`*'とすることで「残り全て」
を表すこともできます。
長さの意味はテンプレート文字により異なりますが大抵、
"iiii"
のよう... -
Zlib
:: ZStream (19.0) -
圧縮データを扱うストリームを表す抽象クラスです。 具体的な圧縮/展開の操作は、それぞれサブクラスの Zlib::Deflate, Zlib::Inflate で定義されています。
圧縮データを扱うストリームを表す抽象クラスです。
具体的な圧縮/展開の操作は、それぞれサブクラスの Zlib::Deflate,
Zlib::Inflate で定義されています。
Zlib::ZStream オブジェクトは、ストリーム (struct zstream) の
入力側 (next_in) と出力側 (next_out) にそれぞれ可変長の
バッファを持ちます。以下、入力側のバッファを「入力バッファ」、
出力側のバッファを「出力バッファ」と呼びます。
Zlib::ZStream オブジェクトに入力されたデータは、一旦入力バッファの
末尾にストアされた後、ストリームからの出力がなく... -
bigdecimal (19.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 では正確な値を得る事がで... -
fiddle (19.0)
-
*.dllや*.soなど、ダイナミックリンクライブラリを扱うためのライブラリです。
...ンクライブラリを扱うためのライブラリです。
dl と同等の機能を持ちますが、
dl は 2.0 以降deprecated となり、2.2.0 で削除されました。このライブラリ
を代わりに使います。
=== 使い方
通常は fiddle/import ライブラリを require... -
fiddle
/ types (19.0) -
C の型の別名を定義するライブラリです。
C の型の別名を定義するライブラリです。
Fiddle::Win32Types や Fiddle::BasicTypes を Module#include する
ことで、Fiddle::Importer#extern や Fiddle::Importer#struct で
利用できる型が増えます。内部で Fiddle::Importer#typealias を
呼び出しています。
実装の問題があるため、 Fiddle::Importer#dlload を呼びだしてから
include してください。
例
require 'fiddle/import'
require 'fiddl... -
pack テンプレート文字列 (19.0)
-
pack テンプレート文字列
pack テンプレート文字列
以下にあげるものは、Array#pack、String#unpack
のテンプレート文字の一覧です。テンプレート文字は後に「長さ」を表す数字
を続けることができます。「長さ」の代わりに`*'とすることで「残り全て」
を表すこともできます。
長さの意味はテンプレート文字により異なりますが大抵、
"iiii"
のように連続するテンプレート文字は
"i4"
と書き換えることができます。
テンプレート文字列中の空白類は無視されます。
また、`#' から改行あるいはテンプレート文字列の最後まではコメントとみな
され無視されます。
=== 整数のテンプレート... -
ruby 1
. 8 . 2 feature (19.0) -
ruby 1.8.2 feature ruby 1.8.2 での ruby 1.8.1 からの変更点です。
ruby 1.8.2 feature
ruby 1.8.2 での ruby 1.8.1 からの変更点です。
掲載方針
*バグ修正の影響も含めて動作が変わるものを収録する。
*単にバグを直しただけのものは収録しない。
*ライブラリへの単なる定数の追加は収録しない。
以下は各変更点に付けるべきタグです。
*カテゴリ
* [ruby]: ruby インタプリタの変更
* [api]: 拡張ライブラリ API
* [lib]: ライブラリ
*レベル
* [bug]: バグ修正
* [new]: 追加されたクラス/メソッドなど
* [compat]: 変更されたクラス/... -
ruby 1
. 9 feature (19.0) -
ruby 1.9 feature ruby version 1.9.0 は開発版です。 以下にあげる機能は将来削除されたり互換性のない仕様変更がなされるかもしれません。 1.9.1 以降は安定版です。 バグ修正がメインになります。
ruby 1.9 feature
ruby version 1.9.0 は開発版です。
以下にあげる機能は将来削除されたり互換性のない仕様変更がなされるかもしれません。
1.9.1 以降は安定版です。
バグ修正がメインになります。
記号について(特に重要なものは大文字(主観))
* カテゴリ
* [ruby]: ruby インタプリタの変更
* [api]: 拡張ライブラリ API
* [lib]: ライブラリ
* [parser]: 文法の変更
* [regexp]: 正規表現の機能拡張
* [marshal]: Marshal ファイルのフォーマット変更
* ...