ライブラリ
- ビルトイン (15)
-
irb
/ cmd / chws (4) -
irb
/ cmd / pushws (6) -
irb
/ context (3) -
irb
/ workspace (1) - json (11)
- objspace (11)
- prettyprint (3)
- rake (6)
-
rdoc
/ markup (1) - rexml (1)
-
rexml
/ document (25) -
rinda
/ rinda (7) -
rinda
/ tuplespace (7) - scanf (4)
-
webrick
/ httputils (1)
クラス
-
IRB
:: Context (3) -
IRB
:: ExtendCommand :: ChangeWorkspace (1) -
IRB
:: ExtendCommand :: CurrentWorkingWorkspace (1) -
IRB
:: ExtendCommand :: PopWorkspace (1) -
IRB
:: ExtendCommand :: PushWorkspace (1) -
IRB
:: ExtendCommand :: Workspaces (1) -
JSON
:: State (7) -
ObjectSpace
:: WeakMap (2) - PrettyPrint (3)
-
RDoc
:: Markup (1) -
REXML
:: Attribute (1) -
REXML
:: Attributes (2) -
REXML
:: CData (1) -
REXML
:: DocType (1) -
REXML
:: Element (7) -
REXML
:: Text (1) -
REXML
:: XPath (3) -
Rake
:: NameSpace (3) -
Rinda
:: TupleSpace (6) -
Rinda
:: TupleSpaceProxy (6) -
Scanf
:: FormatSpecifier (1) -
Scanf
:: FormatString (1) - String (2)
モジュール
- JSON (4)
- Kernel (1)
- ObjectSpace (21)
-
REXML
:: Namespace (8) -
Rake
:: TaskManager (1) -
WEBrick
:: HTTPUtils (1)
キーワード
- ChangeWorkspace (1)
- CurrentWorkingWorkspace (1)
- ISSPACE (1)
- NameSpace (1)
- Namespace (1)
- ObjectSpace (1)
- PopWorkspace (1)
- PushWorkspace (1)
- Ruby用語集 (1)
- SPACE (1)
- TupleSpace (1)
- TupleSpaceProxy (1)
- UndefinedConversionError (1)
- UndefinedNamespaceException (1)
- WeakMap (1)
- WorkSpace (1)
- Workspaces (1)
- [] (2)
- []= (1)
-
_ id2ref (1) -
add
_ namespace (2) -
allocation
_ sourcefile (1) -
allocation
_ sourceline (1) - attribute (1)
-
count
_ nodes (1) -
count
_ objects (1) -
count
_ objects _ size (1) -
count
_ space? (1) -
count
_ tdata _ objects (1) -
define
_ finalizer (2) -
delete
_ namespace (1) - each (1)
-
each
_ object (4) - escape (1)
- execute (5)
- first (1)
- format (1)
-
garbage
_ collect (1) - generate (1)
- genspace (1)
-
get
_ attribute _ ns (1) -
has
_ name? (1) -
in
_ namespace (1) -
irb
/ ext / workspaces (1) -
irb
/ workspace (1) -
local
_ name (1) - match (1)
-
memsize
_ of (1) -
memsize
_ of _ all (1) - name (1)
- name= (1)
- namespace (3)
- namespaces (3)
- new (7)
- notify (2)
- objspace (1)
- prefix (1)
- prefix= (1)
-
pretty
_ generate (1) -
pretty
_ unparse (1) -
rake
/ classic _ namespace (1) -
reachable
_ objects _ from (1) - read (2)
-
read
_ all (2) -
rinda
/ rinda (1) -
rinda
/ tuplespace (1) - scanf (2)
-
singleline
_ format (1) - space= (1)
-
space
_ before (1) -
space
_ before= (1) - take (2)
- tasks (1)
-
to
_ h (1) -
to
_ hash (1) -
trace
_ object _ allocations (1) -
trace
_ object _ allocations _ start (1) -
trace
_ object _ allocations _ stop (1) -
undefine
_ finalizer (1) - unparse (1)
- whitespace (1)
- workspace (1)
- workspace= (1)
- write (2)
- 正規表現 (1)
検索結果
先頭5件
-
JSON
:: State # space -> String (54376.0) -
JSON 形式の文字列のトークン間に挿入する文字列を返します。
JSON 形式の文字列のトークン間に挿入する文字列を返します。
//emlist[例][ruby]{
require "json"
json_state = JSON::State.new(space: "")
json_state.space # => ""
puts JSON.generate([1, 2, { name: "tanaka", age: 19 }], json_state)
# => [1,2,{"name":"tanaka","age":19}]
json_state = JSON::State.new(space: "\t")
json_... -
Scanf
:: FormatString # space (54304.0) -
@todo
@todo -
Rake
:: TaskManager # in _ namespace(name) {|name _ space| . . . } -> Array (18604.0) -
与えられた名前の名前空間でブロックを評価します。
与えられた名前の名前空間でブロックを評価します。
@param name 名前を指定します。
//emlist[][ruby]{
# Rakefile での記載例とする
task default: :test_rake_app
namespace :sample do
def hoge
puts "hoge"
end
end
task :test_rake_app do
task.application.in_namespace("sample") do
hoge # => "hoge"
end
end
//} -
IRB
:: Context # workspace -> IRB :: WorkSpace (18601.0) -
ライブラリ内部で使用します。
ライブラリ内部で使用します。 -
Kernel
# namespace(name = nil) { . . . } -> Rake :: NameSpace (18601.0) -
新しい名前空間を作成します。
新しい名前空間を作成します。
与えられたブロックを評価する間は、その名前空間を使用します。
例:
ns = namespace "nested" do
task :run
end
task_run = ns[:run] # find :run in the given namespace.
@see Rake::TaskManager#in_namespace -
REXML
:: Element # delete _ namespace(namespace = "xmlns") -> self (18601.0) -
名前空間を要素から削除します。
名前空間を要素から削除します。
削除可能な名前空間はそのノードで宣言されているもののみです。
上位の要素で宣言されているものは削除できません。
引数を省略した場合はデフォルトの名前空間を削除します。
@param namespace 削除する名前空間の prefix
//emlist[][ruby]{
require 'rexml/document'
doc = REXML::Document.new "<a xmlns:foo='bar' xmlns='twiddle'/>"
doc.root.delete_namespace
doc.to_s # => "<a xmlns:foo=... -
JSON
:: State # space=(string) (18376.0) -
JSON 形式の文字列のトークン間に挿入する文字列をセットします。
JSON 形式の文字列のトークン間に挿入する文字列をセットします。
@param string JSON 形式の文字列のトークン間に挿入する文字列を指定します。
//emlist[例][ruby]{
require "json"
json_state = JSON::State.new(space: "")
json_state.space # => ""
puts JSON.generate([1, 2, { name: "tanaka", age: 19 }], json_state)
# => [1,2,{"name":"tanaka","age":19}... -
JSON
:: State # space _ before -> String (18376.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) (18376.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... -
RDoc
:: Markup :: SPACE -> ?\s (18304.0) -
空白文字です。?\s を返します。ライブラリの内部で使用します。
空白文字です。?\s を返します。ライブラリの内部で使用します。 -
Scanf
:: FormatSpecifier # count _ space? (18304.0) -
@todo
@todo -
IRB
:: Context # workspace=(val) (18301.0) -
ライブラリ内部で使用します。
ライブラリ内部で使用します。 -
PrettyPrint
# genspace -> Proc (18301.0) -
空白を生成する Proc を返します。
空白を生成する Proc を返します。 -
REXML
:: Attribute # namespace(arg = nil) -> String | nil (18301.0) -
属性の名前空間の URI を返します。
属性の名前空間の URI を返します。
URI が定義されていない場合は nil を返します。
@param arg この値を指定すると、その属性の名前空間でなく、arg という名前空間
の URI が返されます。
通常は省略します。
//emlist[][ruby]{
require 'rexml/document'
e = REXML::Element.new("el")
e.add_attribute("xmlns:ns", "http://www.example.com/ns")
e.add_attribute("ns:r", "rval")
p e.... -
REXML
:: Attributes # namespaces -> { String => String } (18301.0) -
self の中で宣言されている名前空間の集合を返します。
self の中で宣言されている名前空間の集合を返します。
返り値は名前空間の prefix をキーとし、URI を値とする
Hash を返します。
//emlist[][ruby]{
require 'rexml/document'
doc = REXML::Document.new(<<EOS)
<root xmlns:foo="http://example.org/foo"
xmlns:bar="http://example.org/bar">
<a foo:att='1' bar:att='2' att='<'/>
</root>
EOS
a = doc.ge... -
REXML
:: DocType # namespaces -> nil (18301.0) -
nil を返します。
nil を返します。 -
REXML
:: Element # add _ namespace(prefix , uri) -> self (18301.0) -
名前空間を要素に追加します。
名前空間を要素に追加します。
引数が2個の場合は prefix と uri を指定します。
引数が1個の場合はデフォルトの namespace の uri を指定します。
既に同じ prefix が存在する場合はそれが上書きされます。
@param prefix 名前空間の prefix
@param uri 名前空間の uri
//emlist[][ruby]{
require 'rexml/document'
a = REXML::Element.new("a")
a.add_namespace("xmlns:foo", "bar" )
a.add_namespace("foo",... -
REXML
:: Element # add _ namespace(uri) (18301.0) -
名前空間を要素に追加します。
名前空間を要素に追加します。
引数が2個の場合は prefix と uri を指定します。
引数が1個の場合はデフォルトの namespace の uri を指定します。
既に同じ prefix が存在する場合はそれが上書きされます。
@param prefix 名前空間の prefix
@param uri 名前空間の uri
//emlist[][ruby]{
require 'rexml/document'
a = REXML::Element.new("a")
a.add_namespace("xmlns:foo", "bar" )
a.add_namespace("foo",... -
REXML
:: Element # namespace(prefix=nil) -> String (18301.0) -
self の文脈で prefix が指している名前空間の URI を返します。
self の文脈で prefix が指している名前空間の URI を返します。
prefix を省略すると、デフォルトの名前空間の URI を返します。
prefix で指示される名前空間の宣言が存在しない場合は nil を返します。
//emlist[][ruby]{
require 'rexml/document'
doc = REXML::Document.new("<a xmlns='1' xmlns:y='2'><b/><c xmlns:z='3'/><y:d /></a>")
b = doc.elements['//b']
b.namespace # => "1"
... -
REXML
:: Element # namespaces -> {String => String} (18301.0) -
self の文脈で定義されている名前空間の情報を返します。
self の文脈で定義されている名前空間の情報を返します。
対象の要素とその外側の要素で定義されている名前空間を、{ prefix => 識別子 }
というハッシュテーブルで返します。
//emlist[][ruby]{
require 'rexml/document'
doc = REXML::Document.new("<a xmlns:x='1' xmlns:y='2'><b/><c xmlns:z='3'/></a>")
doc.elements['//b'].namespaces # => {"x"=>"1", "y"=>"2"}
//} -
REXML
:: Element # whitespace -> bool (18301.0) -
要素(self)内で空白が考慮されるならば真を返します。
要素(self)内で空白が考慮されるならば真を返します。
これは、
* REXML::Element#context に :respect_whitespace も :compress_whitespace も
含まれない
* context の :respect_whitespace に self の要素名が含まれていて、
:compress_whitespace に self の要素名が含まれていない。
「含まれている」というのには :all が指定されている場合と、
配列に含まれている場合の両方があります。
のいずれかの場合に真を返します。
要... -
int ISSPACE(char c) (18301.0)
-
-
Rinda
:: TupleSpace (18049.0) -
Tuple Space を表すクラスです。
Tuple Space を表すクラスです。
このクラスのインスタンスを
drb を経由して公開することで
タプルスペースを他のプロセスからアクセスさせることができるようになります。
タプルスペースを drb 経由で利用する側は
DRb::DRbObject.new_with_uri などでこのオブジェクトのリモートオブジェクトを
取得し、Rinda::TupleSpaceProxy をかぶせることで利用します。
===[a:renewer] タプルの寿命と renewer
タプルを Rinda::TupleSpace#write などで追加するときにその寿命を
秒数で指定することができ... -
rinda
/ tuplespace (18049.0) -
Rubyによるタプル空間(Tuple Space)の実装です。
Rubyによるタプル空間(Tuple Space)の実装です。 -
IRB
:: ExtendCommand :: ChangeWorkspace (18001.0) -
irb 中の irb_change_workspace コマンドのための拡張を定義したクラスです。
irb 中の irb_change_workspace コマンドのための拡張を定義したクラスです。 -
IRB
:: ExtendCommand :: CurrentWorkingWorkspace (18001.0) -
irb 中の irb_current_working_workspace コマンドのための拡張を定義したク ラスです。
irb 中の irb_current_working_workspace コマンドのための拡張を定義したク
ラスです。 -
IRB
:: ExtendCommand :: PopWorkspace (18001.0) -
irb 中の irb_pop_workspace コマンドのための拡張を定義したクラスです。
irb 中の irb_pop_workspace コマンドのための拡張を定義したクラスです。 -
IRB
:: ExtendCommand :: PushWorkspace (18001.0) -
irb 中の irb_push_workspace コマンドのための拡張を定義したクラスです。
irb 中の irb_push_workspace コマンドのための拡張を定義したクラスです。 -
IRB
:: ExtendCommand :: Workspaces (18001.0) -
irb 中の irb_workspaces コマンドのための拡張を定義したクラスです。
irb 中の irb_workspaces コマンドのための拡張を定義したクラスです。 -
IRB
:: WorkSpace (18001.0) -
irb 中で self を表すためのクラスです。
irb 中で self を表すためのクラスです。 -
ObjectSpace (18001.0)
-
全てのオブジェクトを操作するためのモジュールです。
全てのオブジェクトを操作するためのモジュールです。 -
REXML
:: Namespace (18001.0) -
XML 名前空間によって管理される「名前」を持つようなノードを 表すモジュール。
XML 名前空間によって管理される「名前」を持つようなノードを
表すモジュール。
要素(REXML::Element)、属性(REXML::Attribute)
に include されます。 -
REXML
:: UndefinedNamespaceException (18001.0) -
XMLのパース中に、定義されていない名前空間が現れた場合に発生する 例外です。
XMLのパース中に、定義されていない名前空間が現れた場合に発生する
例外です。 -
Rake
:: NameSpace (18001.0) -
タスクの名前空間を表すクラスです。
タスクの名前空間を表すクラスです。 -
Rinda
:: TupleSpaceProxy (18001.0) -
リモートの Rinda::TupleSpace オブジェクトを包む プロクシクラスです。
リモートの Rinda::TupleSpace オブジェクトを包む
プロクシクラスです。
Rinda::TupleSpace#take でタプルの受け渡し時にタプルが
消失する可能性を下げるためのプロクシクラスです。 -
irb
/ ext / workspaces (18001.0) -
IRB::Context に irb 中での self を管理する機能を提供するサブライ ブラリです。
IRB::Context に irb 中での self を管理する機能を提供するサブライ
ブラリです。
このライブラリで定義されているメソッドはユーザが直接使用するものではあ
りません。irb/cmd/pushws から呼び出されます。 -
irb
/ workspace (18001.0) -
irb 中で self を扱うためのサブライブラリです。
irb 中で self を扱うためのサブライブラリです。
このライブラリで定義されているメソッドはユーザが直接使用するものではありません。 -
objspace (18001.0)
-
このライブラリは ObjectSpace を拡張してオブジェクトやメモリ管理についての 統計情報を取得するメソッドをいくつか追加します。
このライブラリは ObjectSpace を拡張してオブジェクトやメモリ管理についての
統計情報を取得するメソッドをいくつか追加します。
MRI の実装について詳しくない一般のユーザはこのライブラリを使ってはいけません。
このライブラリは、メモリプロファイラの開発者や MRI がどのようにメモリを使用するか
知りたい MRI 開発者が使用します。 -
rake
/ classic _ namespace (18001.0) -
このライブラリは古い Rakefile を使用する場合のみ使用してください。
このライブラリは古い Rakefile を使用する場合のみ使用してください。
以下の定数が定義されます。
* Task = Rake::Task
* FileTask = Rake::FileTask
* FileCreationTask = Rake::FileCreationTask
* RakeApp = Rake::Application -
IRB
:: ExtendCommand :: PopWorkspace # execute(*obj) -> [IRB :: WorkSpace] (9301.0) -
UNIX シェルコマンドの popd と同じです。
UNIX シェルコマンドの popd と同じです。
@param obj 使用しません。 -
IRB
:: ExtendCommand :: PushWorkspace # execute(*obj) -> [IRB :: WorkSpace] (9301.0) -
UNIX シェルコマンドの pushd と同じです。
UNIX シェルコマンドの pushd と同じです。
@param obj IRB::WorkSpace オブジェクトを指定します。複数指定した
場合は先頭のオブジェクトのみが設定されます。 -
IRB
:: ExtendCommand :: Workspaces # execute(*obj) -> [IRB :: WorkSpace] (9301.0) -
現在のワークスペースの一覧を返します。
現在のワークスペースの一覧を返します。
@param obj 使用しません。 -
Rinda
:: TupleSpace . new(period = 60) -> Rinda :: TupleSpace (9301.0) -
Rinda::TupleSpace オブジェクトを生成します。
Rinda::TupleSpace オブジェクトを生成します。
period で掃除用スレッドが動く周期を指定します。
このスレッドでは cancel されたタプルや expire(期限切れ、タイムアウト) された
タプルをタプルスペース内から取り除きます。
@param period cancel/expireされたタプルを取り除く周期を秒で指定します -
Rinda
:: TupleSpaceProxy . new(ts) -> Rinda :: TupleSpaceProxy (9301.0) -
ts を wrap した新たな TupleSpaceProxy オブジェクトを生成します。
ts を wrap した新たな TupleSpaceProxy オブジェクトを生成します。
@param ts ラップするリモート Rinda::TupleSpace オブジェクト -
Rake
:: NameSpace . new(task _ manager , scope _ list) (9037.0) -
自身を初期化します。
自身を初期化します。
@param task_manager Rake::Application のインスタンスを指定します。
@param scope_list 名前空間のリストを指定します。
//emlist[][ruby]{
# Rakefile での記載例とする
task default: :test_rake_app
task :test_rake_app do
name_space = Rake::NameSpace.new(Rake.application, Rake::Scope.new("sample"))
name_space.scope # => LL(... -
IRB
:: ExtendCommand :: ChangeWorkspace # execute(*obj) -> obj (9001.0) -
irb の self を obj で指定したオブジェクトに設定します。self に設定され たオブジェクトを返します。
irb の self を obj で指定したオブジェクトに設定します。self に設定され
たオブジェクトを返します。
@param obj 任意のオブジェクトを指定できます。複数指定した場合は先頭のオ
ブジェクトのみが設定されます。 -
IRB
:: ExtendCommand :: CurrentWorkingWorkspace # execute(*obj) -> obj (9001.0) -
irb の self を返します。
irb の self を返します。
@param obj 使用しません。 -
ObjectSpace
. # _ id2ref(id) -> object (9001.0) -
オブジェクト ID(BasicObject#__id__)からオブジェクトを得ます。
オブジェクト ID(BasicObject#__id__)からオブジェクトを得ます。
@param id 取得したいオブジェクトの ID を整数で指定します。
@raise RangeError 対応するオブジェクトが存在しなければ発生します。
//emlist[例][ruby]{
a = "hoge"
p ObjectSpace._id2ref(a.__id__) #=> "hoge"
//} -
ObjectSpace
. # allocation _ sourcefile(object) -> String (9001.0) -
objectの元となったソースファイル名を返します。
objectの元となったソースファイル名を返します。
@param object 元となるソースファイル名を取得したいobjectを指定します。
@return objectの元となるソースファイル名を返します。存在しない場合はnilを返します。
//emlist[例:test.rbというファイルで下記のスクリプトを実行した場合][ruby]{
require 'objspace'
ObjectSpace::trace_object_allocations_start
obj = Object.new
puts "file:#{ObjectSpace::allocation_sourc... -
ObjectSpace
. # allocation _ sourceline(object) -> Integer (9001.0) -
objectの元となったソースファイルの行番号を返します。
objectの元となったソースファイルの行番号を返します。
@param object 元となるソースファイルの行番号を取得したいobjectを指定します。
@return objectの元となるソースファイルの行番号を返します。存在しない場合はnilを返します。
//emlist[例][ruby]{
require 'objspace'
ObjectSpace::trace_object_allocations_start
obj = Object.new
puts "line:#{ObjectSpace::allocation_sourceline(obj)}" # => lin... -
ObjectSpace
. # count _ nodes(result _ hash = nil) -> Hash (9001.0) -
ノードの種類ごとの数を格納したハッシュを返します。
ノードの種類ごとの数を格納したハッシュを返します。
@param result_hash 戻り値のためのハッシュを指定します。省略した場合は新
しくハッシュを作成します。result_hash の内容は上書き
されます。プローブ効果を避けるために使用します。
@raise TypeError result_hash にハッシュ以外を指定した時に発生します。
本メソッドは普通の Ruby プログラマ向けのメソッドではありません。パフォー
マンスやメモリ管理に興味のある C Ruby の開発者向けのものです。
/... -
ObjectSpace
. # count _ objects(result _ hash = {}) -> Hash (9001.0) -
オブジェクトを種類ごとにカウントした結果を Hash として返します。
オブジェクトを種類ごとにカウントした結果を Hash として返します。
このメソッドは C Ruby 以外の Ruby では動かないでしょう。
@param result_hash ハッシュを指定します。与えられたハッシュは上書きして返されます。
これを利用すると測定による影響を避けることができます。
@raise TypeError 引数に Hash 以外を与えた場合、発生します。
//emlist[例][ruby]{
ObjectSpace.count_objects # => {:TOTAL=>10000, :FREE=>3011, :T_... -
ObjectSpace
. # count _ objects _ size(result _ hash = nil) -> Hash (9001.0) -
型ごとのオブジェクトサイズをバイト単位で格納したハッシュを返します。
型ごとのオブジェクトサイズをバイト単位で格納したハッシュを返します。
@param result_hash 戻り値のためのハッシュを指定します。省略した場合は新
しくハッシュを作成します。result_hash の内容は上書き
されます。プローブ効果を避けるために使用します。
戻り値の内容は完全ではない事に注意してください。この内容はあくまでもヒ
ントとして扱う必要があります。特に T_DATA の合計値は正しくないでしょう。
//emlist[例][ruby]{
ObjectSpace.count_objec... -
ObjectSpace
. # count _ tdata _ objects(result _ hash = nil) -> Hash (9001.0) -
T_DATA の種類ごとにオブジェクトの数を格納したハッシュを返します。
T_DATA の種類ごとにオブジェクトの数を格納したハッシュを返します。
@param result_hash 戻り値のためのハッシュを指定します。省略した場合は新
しくハッシュを作成します。result_hash の内容は上書き
されます。プローブ効果を避けるために使用します。
@raise TypeError result_hash にハッシュ以外を指定した時に発生します。
本メソッドは普通の Ruby プログラマ向けのメソッドではありません。パフォー
マンスに興味のある C Ruby の開発者向けのもので... -
ObjectSpace
. # define _ finalizer(obj) {|id| . . . } -> Array (9001.0) -
obj が解放されるときに実行されるファイナライザ proc を 登録します。同じオブジェクトについて複数回呼ばれたときは置き換えで はなく追加登録されます。固定値 0 と proc を配列にして返します。
obj が解放されるときに実行されるファイナライザ proc を
登録します。同じオブジェクトについて複数回呼ばれたときは置き換えで
はなく追加登録されます。固定値 0 と proc を配列にして返します。
ブロックを指定した場合は、そのブロックがファイナライザになります。
obj の回収時にブロックは obj の ID (BasicObject#__id__)を引数とし
て実行されます。
しかし、後述の問題があるのでブロックでファイナライザを登録するのは難しいでしょう。
@param obj ファイナライザを登録したいオブジェクトを指定します。
@param proc ファイナライザ... -
ObjectSpace
. # define _ finalizer(obj , proc) -> Array (9001.0) -
obj が解放されるときに実行されるファイナライザ proc を 登録します。同じオブジェクトについて複数回呼ばれたときは置き換えで はなく追加登録されます。固定値 0 と proc を配列にして返します。
obj が解放されるときに実行されるファイナライザ proc を
登録します。同じオブジェクトについて複数回呼ばれたときは置き換えで
はなく追加登録されます。固定値 0 と proc を配列にして返します。
ブロックを指定した場合は、そのブロックがファイナライザになります。
obj の回収時にブロックは obj の ID (BasicObject#__id__)を引数とし
て実行されます。
しかし、後述の問題があるのでブロックでファイナライザを登録するのは難しいでしょう。
@param obj ファイナライザを登録したいオブジェクトを指定します。
@param proc ファイナライザ... -
ObjectSpace
. # each _ object -> Enumerator (9001.0) -
指定された klass と Object#kind_of? の関係にある全ての オブジェクトに対して繰り返します。引数が省略された時には全てのオブ ジェクトに対して繰り返します。 繰り返した数を返します。
指定された klass と Object#kind_of? の関係にある全ての
オブジェクトに対して繰り返します。引数が省略された時には全てのオブ
ジェクトに対して繰り返します。
繰り返した数を返します。
ブロックが与えられなかった場合は、
Enumerator オブジェクトを返します。
次のクラスのオブジェクトについては繰り返しません
* Fixnum
* Symbol
* TrueClass
* FalseClass
* NilClass
とくに、klass に Fixnum や Symbol などのクラスを指定した場合は、
何も繰り返さないことになります。
なお、Sy... -
ObjectSpace
. # each _ object {|object| . . . } -> Integer (9001.0) -
指定された klass と Object#kind_of? の関係にある全ての オブジェクトに対して繰り返します。引数が省略された時には全てのオブ ジェクトに対して繰り返します。 繰り返した数を返します。
指定された klass と Object#kind_of? の関係にある全ての
オブジェクトに対して繰り返します。引数が省略された時には全てのオブ
ジェクトに対して繰り返します。
繰り返した数を返します。
ブロックが与えられなかった場合は、
Enumerator オブジェクトを返します。
次のクラスのオブジェクトについては繰り返しません
* Fixnum
* Symbol
* TrueClass
* FalseClass
* NilClass
とくに、klass に Fixnum や Symbol などのクラスを指定した場合は、
何も繰り返さないことになります。
なお、Sy... -
ObjectSpace
. # each _ object(klass) -> Enumerator (9001.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 (9001.0) -
指定された klass と Object#kind_of? の関係にある全ての オブジェクトに対して繰り返します。引数が省略された時には全てのオブ ジェクトに対して繰り返します。 繰り返した数を返します。
指定された klass と Object#kind_of? の関係にある全ての
オブジェクトに対して繰り返します。引数が省略された時には全てのオブ
ジェクトに対して繰り返します。
繰り返した数を返します。
ブロックが与えられなかった場合は、
Enumerator オブジェクトを返します。
次のクラスのオブジェクトについては繰り返しません
* Fixnum
* Symbol
* TrueClass
* FalseClass
* NilClass
とくに、klass に Fixnum や Symbol などのクラスを指定した場合は、
何も繰り返さないことになります。
なお、Sy... -
ObjectSpace
. # garbage _ collect(full _ mark: true , immediate _ sweep: true) -> nil (9001.0) -
どこからも参照されなくなったオブジェクトを回収します。 GC.start と同じです。
どこからも参照されなくなったオブジェクトを回収します。
GC.start と同じです。
@param full_mark マイナー GC を動作させる場合は false を、そうでない場
合は true を指定します。
@param immediate_sweep sweep を遅らせる(Lazy Sweep を行う)場合は false
を、そうでない場合は true を指定します。
注意: これらのキーワード引数は Ruby の実装やバージョンによって異なりま
す。将来のバージョンとの互換性も保証されませ... -
ObjectSpace
. # memsize _ of(obj) -> Integer (9001.0) -
obj が消費するメモリ使用量をバイト単位で返します。
obj が消費するメモリ使用量をバイト単位で返します。
@param obj 任意のオブジェクトを指定します。
戻り値の内容は完全ではない事に注意してください。この内容はあくまでもヒ
ントとして扱う必要があります。特に T_DATA の値は正しくないでしょう。
2.2 以降では RVALUE のサイズを含んだ結果を返します。
本メソッドは C Ruby 以外では動作しません。
//emlist[例][ruby]{
require 'objspace'
ObjectSpace.memsize_of(10) # => 0
ObjectSpace.memsize_o... -
ObjectSpace
. # memsize _ of _ all(klass = nil) -> Integer (9001.0) -
すべての生存しているオブジェクトが消費しているメモリ使用量をバイト単位 で返します。
すべての生存しているオブジェクトが消費しているメモリ使用量をバイト単位
で返します。
@param klass 指定したクラスのインスタンスのメモリ使用量を返します。省略
した場合はすべてのクラスのインスタンスのメモリ使用量を返し
ます。
本メソッドは以下のような Ruby のコードで定義できます。
//emlist[例][ruby]{
def memsize_of_all klass = false
total = 0
ObjectSpace.each_object{|e|
total += ObjectSpace.... -
ObjectSpace
. # reachable _ objects _ from(obj) -> Array | nil (9001.0) -
obj から到達可能なすべてのオブジェクトを返します。マーク不能なオブジェ クトを指定した場合は nil を返します。本メソッドを使う事でメモリリークの 調査が行えます。
obj から到達可能なすべてのオブジェクトを返します。マーク不能なオブジェ
クトを指定した場合は nil を返します。本メソッドを使う事でメモリリークの
調査が行えます。
//emlist[例][ruby]{
# 配列クラス(Array)と 'a'、'b'、'c' に到達可能。
ObjectSpace.reachable_objects_from(['a', 'b', 'c'])
# => [Array, 'a', 'b', 'c']
//}
obj が 2 つ以上の同じオブジェクト x への参照を持つ場合、戻り値に含まれ
るオブジェクト x は 1 つだけです。
//emlist[例... -
ObjectSpace
. # trace _ object _ allocations { . . . } (9001.0) -
与えられたブロック内でオブジェクトのトレースを行います。
与えられたブロック内でオブジェクトのトレースを行います。
//emlist[例][ruby]{
require 'objspace'
class C
include ObjectSpace
def foo
trace_object_allocations do
obj = Object.new
p "#{allocation_sourcefile(obj)}:#{allocation_sourceline(obj)}"
end
end
end
C.new.foo #=> "objtrace.rb:8"
//} -
ObjectSpace
. # trace _ object _ allocations _ start -> nil (9001.0) -
オブジェクト割り当てのトレースを開始します。
オブジェクト割り当てのトレースを開始します。
@see ObjectSpace.#trace_object_allocations_stop -
ObjectSpace
. # trace _ object _ allocations _ stop -> nil (9001.0) -
オブジェクト割り当てのトレースを終了します。
オブジェクト割り当てのトレースを終了します。
トレースを終了する為には、ObjectSpace.#trace_object_allocations_startを呼んだ回数分だけこのメソッドを呼ぶ必要があります。
@see ObjectSpace.#trace_object_allocations_start -
ObjectSpace
. # undefine _ finalizer(obj) -> object (9001.0) -
obj に対するファイナライザをすべて解除します。 obj を返します。
obj に対するファイナライザをすべて解除します。
obj を返します。
@param obj ファイナライザを解除したいオブジェクトを指定します。
//emlist[例][ruby]{
class Sample
def Sample.callback
proc {
puts "finalize"
}
end
def initialize
ObjectSpace.define_finalizer(self, Sample.callback)
end
def undef
ObjectSpace.undefine_final... -
ObjectSpace
:: WeakMap (9001.0) -
GC の対象になるオブジェクトへの weak reference を持つクラスです。主に WeakRef クラスの内部で使用されるため、weakref ライブラリ 経由で使用してください。
GC の対象になるオブジェクトへの weak reference を持つクラスです。主に
WeakRef クラスの内部で使用されるため、weakref ライブラリ
経由で使用してください。 -
ObjectSpace
:: WeakMap # [](key) -> object | nil (9001.0) -
引数 key で指定されたオブジェクトが参照するオブジェクトを返します。
引数 key で指定されたオブジェクトが参照するオブジェクトを返します。
参照先のオブジェクトが存在しない場合、GC されている場合、対象外のオブジェ
クトを参照している場合に nil を返します。
@param key 参照元のオブジェクトを指定します。 -
ObjectSpace
:: WeakMap # []=(key , value) (9001.0) -
引数 key から引数 value への参照を作成します。
引数 key から引数 value への参照を作成します。
@param key 参照元のオブジェクトを指定します。
@param value 参照先のオブジェクトを指定します。
//emlist[例][ruby]{
weak_map = ObjectSpace::WeakMap.new
key = "text"
weak_map[key] = "test" # => test
weak_map[key] # => test
//} -
REXML
:: Namespace # expanded _ name -> String (9001.0) -
REXML::Namespace#name= で設定された名前を返します。
REXML::Namespace#name= で設定された名前を返します。
name= で指定した名前が prefix を含んでいれば
prefix を含む名前を返し、そうでなければ
prefix を含まない名前を返します。
@see REXML::Namespace#prefix -
REXML
:: Namespace # fully _ expanded _ name -> String (9001.0) -
完全修飾名を返します。
完全修飾名を返します。 -
REXML
:: Namespace # has _ name?(other , ns = nil) -> bool (9001.0) -
self が other と ns で指定した名前を持っているならば真を返します。
self が other と ns で指定した名前を持っているならば真を返します。
ns が nil でない場合は名前空間も比較されます。
other が ":" を含んでいる(つまり prefix を含んでいる)場合は
REXML::Namespace#fully_expanded_name と other を比較します。
どちらでもない場合は other と REXML::Namespace#name を直接
比較します。
@param other 比較する名前(文字列)
@param ns 比較する名前空間(文字列) -
REXML
:: Namespace # local _ name -> String (9001.0) -
prefix を含まない「ローカルな」名前を返します。
prefix を含まない「ローカルな」名前を返します。 -
REXML
:: Namespace # name -> String (9001.0) -
prefix を含まない「ローカルな」名前を返します。
prefix を含まない「ローカルな」名前を返します。 -
REXML
:: Namespace # name=(name) (9001.0) -
名前を設定します。
名前を設定します。
prefix を持つ名前も持たない名前も受け付けます。
@param name 名前(文字列) -
REXML
:: Namespace # prefix -> String (9001.0) -
prefix (前置修飾子) を返します。
prefix (前置修飾子) を返します。
@see REXML::Namespace#prefix= -
REXML
:: Namespace # prefix=(value) (9001.0) -
prefix (前置修飾子) を設定します。
prefix (前置修飾子) を設定します。
@param value prefix文字列
@see REXML::Namespace#prefix -
Rake
:: NameSpace # [](name) -> Rake :: Task (9001.0) -
与えられた名前のタスクを返します。
与えられた名前のタスクを返します。
@param name タスクの名前を指定します。
//emlist[][ruby]{
# Rakefile での記載例とする
namespace :ns do |ns|
task :ts1 do
end
task :ts2 do
end
ns[:ts1] # => <Rake::Task ns:ts1 => []>
ns[:ts2] # => <Rake::Task ns:ts2 => []>
end
//} -
Rake
:: NameSpace # tasks -> Array (9001.0) -
タスクのリストを返します。
タスクのリストを返します。
//emlist[][ruby]{
# Rakefile での記載例とする
namespace :ns do |ns|
task :ts1 do
end
task :ts2 do
end
ns.tasks # => [<Rake::Task ns:ts1 => []>, <Rake::Task ns:ts2 => []>]
end
//} -
Rinda
:: TupleSpace # notify(event , pattern , sec = nil) -> Rinda :: NotifyTemplateEntry (9001.0) -
event で指定した種類のイベントの監視を開始します。
event で指定した種類のイベントの監視を開始します。
イベントを生じさせたタプルがpattern にマッチした場合にのみ報告されます。
イベントが生じた場合、
このメソッドの返り値の Rinda::NotifyTemplateEntry を経由し、
Rinda::NotifyTemplateEntry#each を用いて報告を受け取ります。
sec で監視期間を秒数で指定できます。 nil で無限に監視し続けます。
event として以下の3つを指定できます。
* 'write' : タプルが追加された
* 'take' : タプルが take された
* 'delet... -
Rinda
:: TupleSpace # read(tuple , sec=nil) -> [Array|Hash] (9001.0) -
タプルスペース内の tuple にマッチするタプルを一つコピーして返します。
タプルスペース内の tuple にマッチするタプルを一つコピーして返します。
このメソッド呼び出しが終了しても、タプルスペースからタプルは取り除かれません。
tuple で指定できるパターンについては lib:rinda/rinda#tuplepattern を
参照してください。
マッチするタプルが存在しない場合は、マッチするタプルがタプルスペースに
投入されるまで待ちます。
sec でタイムアウト秒数を指定できます。
待ち時間が sec 秒を過ぎた時には read をあきらめ
例外 Rinda::RequestExpiredError を発生させます。
sec に nil を指定す... -
Rinda
:: TupleSpace # read _ all(tuple) -> [Array|Hash] (9001.0) -
タプルスペース内の tuple にマッチするタプルをすべてコピーして返します。
タプルスペース内の tuple にマッチするタプルをすべてコピーして返します。
このメソッド呼び出しが終了しても、タプルスペースからタプルは取り除かれません。
tuple で指定できるパターンについては lib:rinda/rinda#tuplepattern を
参照してください。
マッチするタプルが存在しない場合は、待たずに空の配列を返します。
このメソッドは主にデバッグのための利用を想定しています。
@param tuple タプルのパターン -
Rinda
:: TupleSpace # take(tuple , sec = nil) -> Array | Hash (9001.0) -
tuple にマッチするタプルをタプルスペースから取り出して返します。
tuple にマッチするタプルをタプルスペースから取り出して返します。
tuple で指定できるパターンについては lib:rinda/rinda#tuplepattern を
参照してください。
マッチするタプルが存在しない場合は、マッチするタプルがタプルスペースに
投入されるまで待ちます。
sec でタイムアウト秒数を指定できます。
待ち時間が sec 秒を過ぎた時には take をあきらめ
例外 Rinda::RequestExpiredError を発生させます。
sec に nil を指定するとタイムアウトせずに無限に待ち続けます。
@param tuple タプルのパター... -
Rinda
:: TupleSpace # write(tuple , sec = nil) -> Rinda :: TupleEntry (9001.0) -
tuple をタプルスペースに加えます。 tuple を管理するための Rinda::TupleEntry オブジェクトを返します。
tuple をタプルスペースに加えます。
tuple を管理するための Rinda::TupleEntry オブジェクトを返します。
sec で追加したタプルの有効期限を指定できます。
追加されてから sec 秒過ぎたタプルはタプルスペースから削除されます。
nil は無限を意味し、この場合にはタプルは経過時間によっては削除されません。
返り値の Rinda::TupleEntry オブジェクトを使ってタプルを明示的に
キャンセルしたり有効期限を変更したりできます。ただし、利用にはGCなどに
気を付ける必要があります。
詳しくはRinda::TupleEntry のエントリーを見てくださ... -
Rinda
:: TupleSpaceProxy # notify(ev , tuple , sec = nil) -> Rinda :: NotifyTemplateEntry (9001.0) -
event で指定した種類のイベントの監視を開始します。
event で指定した種類のイベントの監視を開始します。
内部的にはリモートオブジェクトの Rinda::TupleSpace#notify にフォワードされます。
詳細は Rinda::TupleSpace#notify 参照してください
@param event 監視対象のイベント(文字列)
@param pattern 監視対象となるタプルのパターン
@param sec 監視期間の長さ(秒数) -
Rinda
:: TupleSpaceProxy # read(tuple , sec=nil) -> [Array|Hash] (9001.0) -
タプルスペース内の tuple にマッチするタプルを一つコピーして返します。
タプルスペース内の tuple にマッチするタプルを一つコピーして返します。
内部的にはリモートオブジェクトの Rinda::TupleSpace#read にフォワードされます。
詳細は Rinda::TupleSpace#read を参照してください。
@param tuple タプルのパターン
@param sec タイムアウト秒数
@raise Rinda::RequestExpiredError read がタイムアウトした場合に発生します
@raise Ridna::RequestCanceledError read が何らかの理由でキャンセルされた場合に発生します。 -
Rinda
:: TupleSpaceProxy # read _ all(tuple) -> [Array|Hash] (9001.0) -
タプルスペース内の tuple にマッチするタプルをすべてコピーして返します。
タプルスペース内の tuple にマッチするタプルをすべてコピーして返します。
内部的にはリモートオブジェクトの Rinda::TupleSpace#read_all にフォワードされます。
詳細は Rinda::TupleSpace#read_all を参照してください。
@param tuple タプルのパターン -
Rinda
:: TupleSpaceProxy # take(tuple , sec = nil) -> Array | Hash (9001.0) -
tuple にマッチするタプルをタプルスペースから取り出して返します。
tuple にマッチするタプルをタプルスペースから取り出して返します。
内部的にはリモートオブジェクトの Rinda::TupleSpace#take にフォワードされます。
詳細は Rinda::TupleSpace#take を参照してください。
@param tuple タプルのパターン
@param sec タイムアウト秒数
@raise Rinda::RequestExpiredError take がタイムアウトした場合に発生します
@raise Ridna::RequestCanceledError take が何らかの理由でキャンセルされた場合に発生します。 -
Rinda
:: TupleSpaceProxy # write(tuple , sec = nil) -> Rinda :: TupleEntry (9001.0) -
tuple をタプルスペースに加えます。 tuple を管理するための Rinda::TupleEntry オブジェクトを返します。
tuple をタプルスペースに加えます。
tuple を管理するための Rinda::TupleEntry オブジェクトを返します。
内部的にはリモートオブジェクトの Rinda::TupleSpace#write にフォワードされます。
詳細は Rinda::TupleSpace#write を参照してください。
@param tuple 追加する tuple (配列かHash)
@param sec 有効期限(秒数) -
IRB
:: Context . new(irb , workspace = nil , input _ method = nil , output _ method = nil) -> IRB :: Context (301.0) -
自身を初期化します。
自身を初期化します。
@param irb IRB::Irb オブジェクトを指定します。
@param workspace IRB::WorkSpace オブジェクトを指定します。省略し
た場合は新しく作成されます。
@param input_method String、IRB::InputMethod のサブクラスの
オブジェクト、nil のいずれかを指定します。
@param output_method IRB::OutputMethod のサブクラスのオブジェクト
... -
PrettyPrint
. format(output = & # 39;& # 39; , maxwidth = 79 , newline = "\n" , genspace = lambda{|n| & # 39; & # 39; * n}) {|pp| . . . } -> object (301.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... -
PrettyPrint
. singleline _ format(output = & # 39;& # 39; , maxwidth = 79 , newline = "\n" , genspace = lambda{|n| & # 39; & # 39; * n}) {|pp| . . . } -> object (301.0) -
PrettyPrint オブジェクトを生成し、それを引数としてブロックを実行します。 PrettyPrint.format に似ていますが、改行しません。
PrettyPrint オブジェクトを生成し、それを引数としてブロックを実行します。
PrettyPrint.format に似ていますが、改行しません。
引数 maxwidth, newline と genspace は無視されます。ブロック中の breakable の実行は、
改行せずに text の実行であるかのように扱います。
@param output 出力先を指定します。output は << メソッドを持っていなければなりません。
@param maxwidth 無視されます。
@param newline 無視されます。
@param genspace 無視されます... -
REXML
:: Attributes # get _ attribute _ ns(namespace , name) -> REXML :: Attribute | nil (301.0) -
namespace と name で特定される属性を返します。
namespace と name で特定される属性を返します。
namespace で名前空間を、 name で prefix を含まない属性名を
指定します。
指定された属性が存在しない場合は nil を返します。
XML プロセッサが prefix を置き換えてしまった場合でも、このメソッドを
使うことで属性を正しく指定することができます。
@param namespace 名前空間(URI, 文字列)
@param name 属性名(文字列)
//emlist[][ruby]{
require 'rexml/document'
doc = REXML::Document.ne... -
REXML
:: CData . new(text , respect _ whitespace = true , parent = nil) -> REXML :: CData (301.0) -
text をテキストとして持つ CData オブジェクトを生成します。
text をテキストとして持つ CData オブジェクトを生成します。
respect_whitespace に真を指定すると、text に含まれる空白文字は保存されます。
偽の場合は空白はまとめられます。
@param text テキスト文字列
@param respect_whitespace 空白を保存するかどうかを決める真偽値
@param parent 親ノード
//emlist[][ruby]{
require 'rexml/document'
doc = REXML::Document.new(<<EOS)
<root />
EOS
doc.root.add(REXML::... -
REXML
:: Element # attribute(name , namespace = nil) -> REXML :: Attribute | nil (301.0) -
name で指定される属性を返します。
name で指定される属性を返します。
属性は REXML::Attribute オブジェクトの形で返します。
name は "foo:bar" のように prefix を指定することができます。
namespace で名前空間の URI を指定することで、その名前空間内で
name という属性名を持つ属性を指定できます。
指定した属性名の属性がない場合は nil を返します。
@param name 属性名(文字列)
@param namespace 名前空間のURI(文字列)
//emlist[][ruby]{
require 'rexml/document'
doc = R... -
REXML
:: Text . new(arg , respect _ whitespace = false , parent = nil , raw = nil , entity _ filter = nil , illegal = REXML :: Text :: NEEDS _ A _ SECOND _ CHECK) (301.0) -
テキストノードオブジェクトを生成します。
テキストノードオブジェクトを生成します。
arg でノードの内容を指定します。
文字列の場合はそれが内容として使われます。
REXML::Text オブジェクトの場合はその内容が複製されます。
respect_whitespace に真を指定すると、arg に含まれる空白文字は保存されます。
偽の場合は空白はまとめられます。
raw は true, false, nil のいずれかを指定し、生成されるテキストノードが
raw モードであるかどうかを決めます。
true の場合、そのノードは raw モードであると解釈され、
テキストにはエスケープされていないXMLマークアップは
含まれ... -
REXML
:: XPath . each(element , path = nil , namespaces = {} , variables = {}) {|e| . . . } -> () (301.0) -
element の path で指定した XPath 文字列にマッチする各ノード に対してブロックを呼び出します。
element の path で指定した XPath 文字列にマッチする各ノード
に対してブロックを呼び出します。
path に相対パスを指定した場合は element からの相対位置で
マッチするノードを探します。
絶対パスを指定した場合は element が属する文書のルート要素からの
位置でマッチするノードを探します。
path を省略すると "*" を指定したことになります。
namespace で名前空間の対応付けを Hash で指定します。
variable で XPath 内の変数に対応する値を指定できます。
XPathインジェクション攻撃を避けるため、適切な
エスケープを... -
REXML
:: XPath . first(element , path = nil , namespaces = {} , variables = {}) -> Node | nil (301.0) -
element の path で指定した XPath 文字列にマッチする最初のノードを 返します。
element の path で指定した XPath 文字列にマッチする最初のノードを
返します。
path に相対パスを指定した場合は element からの相対位置で
マッチするノードを探します。
絶対パスを指定した場合は element が属する文書のルート要素からの
位置でマッチするノードを探します。
path を省略すると "*" を指定したことになります。
namespace で名前空間の対応付けを指定します。
variable で XPath 内の変数に対応する値を指定できます。
XPathインジェクション攻撃を避けるため、適切な
エスケープを付加するため、に用います。
...