ライブラリ
- ビルトイン (10)
- csv (2)
-
fiddle
/ import (7) - mkmf (2)
- openssl (3)
- ostruct (10)
- rake (1)
-
rexml
/ document (3) -
rexml
/ parsers / pullparser (1) -
rexml
/ sax2listener (1) - socket (1)
クラス
- Array (2)
- CSV (2)
-
Fiddle
:: CStruct (1) -
OpenSSL
:: ASN1 :: Constructive (3) - OpenStruct (10)
-
REXML
:: Instruction (3) -
REXML
:: Parsers :: PullEvent (1) -
Rake
:: Application (1) -
RubyVM
:: InstructionSequence (2) -
Socket
:: Option (1) - String (1)
- Struct (5)
モジュール
-
Fiddle
:: Importer (6) - Kernel (2)
-
REXML
:: SAX2Listener (1)
キーワード
- == (2)
- []= (1)
-
absolute
_ path (1) - content (1)
- convert (2)
-
create
_ value (1) -
delete
_ field (1) - dig (1)
- each (1)
-
each
_ pair (2) - eql? (2)
-
first
_ lineno (1) -
have
_ struct _ member (2) - instruction? (1)
- linger (1)
- members (1)
- modifiable (1)
-
new
_ ostruct _ member (1) -
node
_ type (1) - pack (2)
-
processing
_ instruction (1) - sizeof (1)
- tagging (1)
- tagging= (1)
- target (1)
-
to
_ h (2) -
to
_ ptr (1) - typealias (1)
- union (1)
- unpack (1)
- value (1)
-
values
_ at (1)
検索結果
先頭5件
-
Fiddle
:: Importer # struct(signature) -> Class (72697.0) -
C の構造体型に対応する Ruby のクラスを構築して返します。
C の構造体型に対応する Ruby のクラスを構築して返します。
構造体の各要素は C と似せた表記ができます。そしてそれを
配列で signature に渡してデータを定義します。例えば C における
struct timeval {
long tv_sec;
long tv_usec;
};
という構造体型に対応して
Timeval = struct(["long tv_sec", "long tv_usec"])
として構造体に対応するクラスを生成します。
このメソッドが返すクラスには以下のメソッドが定義されています
* クラスメソッド malloc
... -
Struct
# each _ pair {|member , value| . . . } -> self (45694.0) -
構造体のメンバ名(Symbol)と値の組を引数にブロックを繰り返し実行します。
構造体のメンバ名(Symbol)と値の組を引数にブロックを繰り返し実行します。
//emlist[例][ruby]{
Foo = Struct.new(:foo, :bar)
Foo.new('FOO', 'BAR').each_pair {|m, v| p [m,v]}
# => [:foo, "FOO"]
# [:bar, "BAR"]
//}
[注意] 本メソッドの記述は Struct の下位クラスのインスタンスに対して呼び
出す事を想定しています。Struct.new は Struct の下位クラスを作成する点に
注意してください。 -
REXML
:: SAX2Listener # processing _ instruction(target , data) -> () (45604.0) -
XML 処理命令(PI)に対し呼び出されるコールバックメソッドです。
XML 処理命令(PI)に対し呼び出されるコールバックメソッドです。
@param target ターゲット名が文字列で渡されます
@param data 処理命令の内容が文字列で渡されます -
RubyVM
:: InstructionSequence # absolute _ path -> String | nil (45604.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.... -
Struct
# eql?(other) -> bool (45448.0) -
self と other のクラスが同じであり、各メンバが eql? メソッドで比較して等しい場合に true を返します。そうでない場合に false を返します。
self と other のクラスが同じであり、各メンバが eql? メソッドで比較して等しい場合に
true を返します。そうでない場合に false を返します。
@param other self と比較したいオブジェクトを指定します。
//emlist[例][ruby]{
Dog = Struct.new(:name, :age)
dog1 = Dog.new("fred", 5)
dog2 = Dog.new("fred", 5)
p dog1 == dog2 #=> true
p dog1.eql?(dog2) #=> ... -
Struct
# values _ at(*members) -> [object] (45394.0) -
引数で指定されたメンバの値の配列を返します。
引数で指定されたメンバの値の配列を返します。
@param members Integer か Range でメンバのインデックスを指定します。
@raise IndexError member が整数で存在しないメンバを指定した場合に発生します。
//emlist[例][ruby]{
Foo = Struct.new(:foo, :bar, :baz)
obj = Foo.new('FOO', 'BAR', 'BAZ')
p obj.values_at(0, 1, 2) # => ["FOO", "BAR", "BAZ"]
//}
[注意] 本メソッドの記述は Struct の... -
Fiddle
:: Importer # typealias(new , orig) -> () (36670.0) -
extern や struct で利用する型の別名を定義します。
extern や struct で利用する型の別名を定義します。
@param new 別名(文字列)
@param orig 別名を付けたい型の名前(文字列)
@see Fiddle::Importer#extern, Fiddle::Importer#sizeof,
Fiddle::Importer#struct, Fiddle::Importer#union -
Fiddle
:: CStruct # to _ ptr -> Fiddle :: Pointer (36604.0) -
保持している構造体へのポインタを返します。
保持している構造体へのポインタを返します。 -
OpenStruct
# new _ ostruct _ member(name) -> Symbol (36604.0) -
与えられた名前のアクセサメソッドを自身に定義します。
与えられた名前のアクセサメソッドを自身に定義します。
@param name 文字列かシンボルで定義するアクセサの名前を指定します。 -
REXML
:: Instruction # node _ type -> Symbol (36604.0) -
Symbol :processing_instruction を返します。
Symbol :processing_instruction を返します。 -
REXML
:: Parsers :: PullEvent # instruction? -> bool (36604.0) -
XML処理命令なら真を返します。
XML処理命令なら真を返します。 -
OpenStruct
# delete _ field(name) -> object (36304.0) -
nameで指定された要素を削除します。
nameで指定された要素を削除します。
その後その要素を参照したら nil が返ります。
@param name 削除する要素を文字列かシンボルで指定します。
@return 削除前の要素の値を返します。 -
OpenStruct
# eql?(other) -> bool (36304.0) -
self と other が等しい場合に true を返します。そうでない場合は false を 返します。
self と other が等しい場合に true を返します。そうでない場合は false を
返します。
具体的には other が OpenStruct オブジェクトかそのサブクラスでかつ、
self の各要素を保持した内部の Hash が eql? で比較して等しい場合に
true を返します。
@param other 比較対象のオブジェクトを指定します。 -
OpenStruct
# modifiable -> Hash (36304.0) -
このメソッドは内部的に使用されます。
このメソッドは内部的に使用されます。
自身が Object#freeze されている場合にこのメソッドを呼び出すと例外が発生します。
@raise TypeError 自身が Object#freeze されている場合に発生します。 -
Fiddle
:: Importer # create _ value(type , val = nil) -> Fiddle :: CStruct (27988.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 (27988.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
... -
Kernel
# have _ struct _ member(type , member , headers = nil) -> bool (27964.0) -
member というメンバを持つ構造体 type がシステムに存在するかどうか検査します。
member というメンバを持つ構造体 type がシステムに存在するかどうか検査します。
member というメンバを持つ構造体 type がシステムに存在する場合は、
グローバル変数 $defs に "-DHAVE_type_member" を追加し、真を返します。
member というメンバを持つ構造体 type が存在しない場合は、偽を返します。
例えば
require 'mkmf'
have_struct_member('struct foo', 'bar') # => true
である場合、HAVE_STRUCT_FOO_BAR というプリプロセッサマクロをコンパ... -
Kernel
# have _ struct _ member(type , member , headers = nil) { . . . } -> bool (27964.0) -
member というメンバを持つ構造体 type がシステムに存在するかどうか検査します。
member というメンバを持つ構造体 type がシステムに存在するかどうか検査します。
member というメンバを持つ構造体 type がシステムに存在する場合は、
グローバル変数 $defs に "-DHAVE_type_member" を追加し、真を返します。
member というメンバを持つ構造体 type が存在しない場合は、偽を返します。
例えば
require 'mkmf'
have_struct_member('struct foo', 'bar') # => true
である場合、HAVE_STRUCT_FOO_BAR というプリプロセッサマクロをコンパ... -
OpenSSL
:: ASN1 :: Constructive # tagging -> Symbol | nil (27604.0) -
タグ付けの方式を返します。
タグ付けの方式を返します。
:IMPLICIT、:EXPLICIT、nil のいずれかを返します。
タグ(OpenSSL::ASN1::ASN1Data#tag)が :UNIVERSAL ならば
この値は無視されます。
nil は :IMPLICIT と同義です。
@see OpenSSL::ASN1::Constructive#tagging= -
OpenStruct
# each _ pair { |key , value| } -> self (27604.0) -
self の各要素の名前と要素を引数としてブロックを評価します。
self の各要素の名前と要素を引数としてブロックを評価します。
ブロックを指定した場合は self を返します。そうでない場合は
Enumerator を返します。
例:
require 'ostruct'
data = OpenStruct.new("country" => "Australia", :population => 20_000_000)
data.each_pair.to_a # => population, 20000000 -
Rake
:: Application # options -> OpenStruct (27604.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=... -
Struct
# ==(other) -> bool (27448.0) -
self と other のクラスが同じであり、各メンバが == メソッドで比較して等しい場合に true を返します。そうでない場合に false を返します。
self と other のクラスが同じであり、各メンバが == メソッドで比較して等しい場合に
true を返します。そうでない場合に false を返します。
@param other self と比較したいオブジェクトを指定します。
//emlist[例][ruby]{
Dog = Struct.new(:name, :age)
dog1 = Dog.new("fred", 5)
dog2 = Dog.new("fred", 5)
p dog1 == dog2 #=> true
p dog1.eql?(dog2) #=> tr... -
Struct
# members -> [Symbol] (27394.0) -
構造体のメンバの名前(Symbol)の配列を返します。
構造体のメンバの名前(Symbol)の配列を返します。
//emlist[例][ruby]{
Foo = Struct.new(:foo, :bar)
p Foo.new.members # => [:foo, :bar]
//}
[注意] 本メソッドの記述は Struct の下位クラスのインスタンスに対して呼び
出す事を想定しています。Struct.new は Struct の下位クラスを作成する点に
注意してください。 -
RubyVM
:: InstructionSequence # first _ lineno -> Integer (27322.0) -
self が表す命令シーケンスの 1 行目の行番号を返します。
self が表す命令シーケンスの 1 行目の行番号を返します。
例1:irb で実行した場合
RubyVM::InstructionSequence.compile('num = 1 + 2').first_lineno
# => 1
例2:
# /tmp/method.rb
require "foo-library"
def foo
p :foo
end
RubyVM::InstructionSequence.of(method(:foo)).first_lineno
# => 2 -
Socket
:: Option # linger -> [bool , Integer] (27322.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 -
OpenSSL
:: ASN1 :: Constructive # each {|item| . . . } -> self (27304.0) -
構造型のデータに含まれる各要素に対してブロックを 評価します。
構造型のデータに含まれる各要素に対してブロックを
評価します。 -
OpenSSL
:: ASN1 :: Constructive # tagging=(tag) (27004.0) -
タグ付けの方式を設定します。
タグ付けの方式を設定します。
@param tagging タグ付けの方式(:IMPLICIT または :EXPLICIT)
@see OpenSSL::ASN1::Constructive#tagging= -
Array
# pack(template) -> String (19612.0) -
配列の内容を template で指定された文字列にしたがって、 バイナリとしてパックした文字列を返します。
配列の内容を template で指定された文字列にしたがって、
バイナリとしてパックした文字列を返します。
テンプレートは
型指定文字列とその長さ(省略時は1)を並べたものです。長さと
して * が指定された時は「残りのデータ全て」の長さを
表します。型指定文字は以下で述べる pack テンプレート文字列の通りです。
buffer が指定されていれば、バッファとして使って返値として返します。
もし template の最初にオフセット (@) が指定されていれば、
結果はオフセットの後ろから詰められます。
buffer の元の内容がオフセットより長ければ、
オフセットより後ろの部分は上... -
Array
# pack(template , buffer: String . new) -> String (19612.0) -
配列の内容を template で指定された文字列にしたがって、 バイナリとしてパックした文字列を返します。
配列の内容を template で指定された文字列にしたがって、
バイナリとしてパックした文字列を返します。
テンプレートは
型指定文字列とその長さ(省略時は1)を並べたものです。長さと
して * が指定された時は「残りのデータ全て」の長さを
表します。型指定文字は以下で述べる pack テンプレート文字列の通りです。
buffer が指定されていれば、バッファとして使って返値として返します。
もし template の最初にオフセット (@) が指定されていれば、
結果はオフセットの後ろから詰められます。
buffer の元の内容がオフセットより長ければ、
オフセットより後ろの部分は上... -
String
# unpack(template) -> Array (19612.0) -
Array#pack で生成された文字列を テンプレート文字列 template にしたがってアンパックし、 それらの要素を含む配列を返します。
Array#pack で生成された文字列を
テンプレート文字列 template にしたがってアンパックし、
それらの要素を含む配列を返します。
@param template pack テンプレート文字列
@return オブジェクトの配列
以下にあげるものは、Array#pack、String#unpack、String#unpack1
のテンプレート文字の一覧です。テンプレート文字は後に「長さ」を表す数字
を続けることができます。「長さ」の代わりに`*'とすることで「残り全て」
を表すこともできます。
長さの意味はテンプレート文字により異なりますが大... -
Fiddle
:: Importer # union(signature) -> Class (18322.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... -
OpenStruct
# dig(key , . . . ) -> object | nil (18322.0) -
self 以下のネストしたオブジェクトを dig メソッドで再帰的に参照して返し ます。途中のオブジェクトが nil であった場合は nil を返します。
self 以下のネストしたオブジェクトを dig メソッドで再帰的に参照して返し
ます。途中のオブジェクトが nil であった場合は nil を返します。
@param key キーを任意個指定します。
require 'ostruct'
address = OpenStruct.new('city' => "Anytown NC", 'zip' => 12345)
person = OpenStruct.new('name' => 'John Smith', 'address' => address)
person.dig(:address, 'zip') ... -
REXML
:: Instruction # content -> String | nil (18322.0) -
XML 処理命令の内容を返します。
XML 処理命令の内容を返します。
//emlist[][ruby]{
require 'rexml/document'
doc = REXML::Document.new(<<EOS)
<?xml version="1.0" encoding="utf-8" ?>
<?xml-stylesheet type="text/css" href="style.css"?>
<?foobar?>
<root />
EOS
doc[2] # => <?p-i xml-stylesheet ...?>
doc[2].target # => "xml-stylesheet"
doc[2].content... -
OpenStruct
# ==(other) -> bool (18304.0) -
自身と比較対象のオブジェクトが等しい場合に真を返します。 そうでない場合は、偽を返します。
自身と比較対象のオブジェクトが等しい場合に真を返します。
そうでない場合は、偽を返します。
@param other 比較対象のオブジェクトを指定します。 -
OpenStruct
# []=(name , value) (18304.0) -
引数 name で指定した要素に対応する値に value をセットします。
引数 name で指定した要素に対応する値に value をセットします。
@param name 要素の名前を文字列か Symbol オブジェクトで指定します。
@param value セットする値を指定します。
例:
require 'ostruct'
person = OpenStruct.new('name' => 'John Smith', 'age' => 70)
person[:age] = 42 # person.age = 42 と同じ
person.age # => 42 -
OpenStruct
# to _ h -> { Symbol => object } (18304.0) -
self を各要素の名前をキー(Symbol)、要素が値のハッシュに変換して返 します。
self を各要素の名前をキー(Symbol)、要素が値のハッシュに変換して返
します。
ブロックを指定すると各ペアでブロックを呼び出し、
その結果をペアとして使います。
//emlist[例][ruby]{
require 'ostruct'
data = OpenStruct.new("country" => "Australia", :capital => "Canberra")
data.to_h # => {:country => "Australia", :capital => "Canberra" }
data.to_h {|name, value| [name.to_... -
OpenStruct
# to _ h {|name , value| block } -> Hash (18304.0) -
self を各要素の名前をキー(Symbol)、要素が値のハッシュに変換して返 します。
self を各要素の名前をキー(Symbol)、要素が値のハッシュに変換して返
します。
ブロックを指定すると各ペアでブロックを呼び出し、
その結果をペアとして使います。
//emlist[例][ruby]{
require 'ostruct'
data = OpenStruct.new("country" => "Australia", :capital => "Canberra")
data.to_h # => {:country => "Australia", :capital => "Canberra" }
data.to_h {|name, value| [name.to_... -
Fiddle
:: Importer # sizeof(t) -> Integer (18094.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 を返します。
それ... -
REXML
:: Instruction # target -> String (18022.0) -
XML 処理命令のターゲットを返します。
XML 処理命令のターゲットを返します。
//emlist[][ruby]{
require 'rexml/document'
doc = REXML::Document.new(<<EOS)
<?xml version="1.0" encoding="utf-8" ?>
<?xml-stylesheet type="text/css" href="style.css"?>
<root />
EOS
doc[2] # => <?p-i xml-stylesheet ...?>
doc[2].target # => "xml-stylesheet"
doc[2].content # => "t... -
CSV
# convert {|field , field _ info| . . . } (694.0) -
引数 name で指定した変換器かブロックに各フィールドを渡して文字列から別 のオブジェクトへと変換します。
引数 name で指定した変換器かブロックに各フィールドを渡して文字列から別
のオブジェクトへと変換します。
引数 name を指定した場合は、組み込みの CSV::Converters を変換器
として利用するために使います。また、独自の変換器を追加することもできま
す。
ブロックパラメータを一つ受け取るブロックを与えた場合は、そのブロックは
フィールドを受け取ります。ブロックパラメータを二つ受け取るブロックを与
えた場合は、そのブロックは、フィールドと CSV::FieldInfo のインス
タンスを受け取ります。ブロックは変換後の値かフィールドそのものを返さな
ければなりません。
... -
CSV
# convert {|field| . . . } (394.0) -
引数 name で指定した変換器かブロックに各フィールドを渡して文字列から別 のオブジェクトへと変換します。
引数 name で指定した変換器かブロックに各フィールドを渡して文字列から別
のオブジェクトへと変換します。
引数 name を指定した場合は、組み込みの CSV::Converters を変換器
として利用するために使います。また、独自の変換器を追加することもできま
す。
ブロックパラメータを一つ受け取るブロックを与えた場合は、そのブロックは
フィールドを受け取ります。ブロックパラメータを二つ受け取るブロックを与
えた場合は、そのブロックは、フィールドと CSV::FieldInfo のインス
タンスを受け取ります。ブロックは変換後の値かフィールドそのものを返さな
ければなりません。
...