<?xml version='1.0' encoding='utf-8'?>
<pod xmlns="http://axkit.org/ns/2000/pod2xml">
<head>
	<title>Data::TemporaryBag - テンポラリファイルを用いて大きなデータを取り扱う</title>
</head>
<sect1>
<title>SYNOPSIS</title>
<verbatim><![CDATA[
use Data::TemporaryBag;
]]></verbatim>
<verbatim><![CDATA[
$data = Data::TemporaryBag->new;
# 文字列を追加
$data->add('ABC' x 1000);
# オーバーライドされた'.='演算子も使えます。
$data .= 'DEF' x 1000;
...
$substr = $data->substr(2997, 6);  # ABCDEF
]]></verbatim>
</sect1>
<sect1>
<title>DESCRIPTION</title>
<para>
<emphasis>Data::TemporaryBag</emphasis>モジュールは、大きなデータを扱う<emphasis>入れ物</emphasis>オブジェクトを提供します。
小さなデータはオンメモリで処理します。データが<emphasis>$Threshold</emphasis>よりも大きくなると、内部で
テンポラリファイルに保存します。
</para>
<sect2>
<title>METHOD</title>
<list>
<item><itemtext>Data::TemporaryBag-&gt;new( [$data] )</itemtext>
<para>
新しい入れ物を作ります。
</para>
</item>
<item><itemtext>$bag-&gt;clear</itemtext>
<para>
$bagをクリアします。
</para>
</item>
<item><itemtext>$bag-&gt;add( $data )</itemtext>
<para>
$dataを$bagに追加します。
'.='代入演算子も同等の働きをします。
</para>
</item>
<item><itemtext>$bag-&gt;substr( $offset, $length, $replace )</itemtext>
<para>
$bagから部分文字列を取り出します。標準のsubstr関数と似た働きをしますが、
lvalueにはなりません。
</para>
</item>
<item><itemtext>$bag-&gt;clone</itemtext>
<para>
$bagを複製します。
</para>
</item>
<item><itemtext>$bag-&gt;value</itemtext>
<para>
$bagの中身のデータを文字列で取り出します。
文字列は非常に大きいものである可能性があります。
</para>
</item>
<item><itemtext>$bag-&gt;length</itemtext>
<para>
データの長さを返します。
</para>
</item>
<item><itemtext>$bag-&gt;defined</itemtext>
<para>
$bagの中身が定義されているかどうかを返します。
</para>
</item>
<item><itemtext>$bag-&gt;is_saved</itemtext>
<para>
$bagがテンポラリファイルに保存されているかどうかを返します。
</para>
</item>
</list>
</sect2>
<sect2>
<title>グローバル変数</title>
<list>
<item><itemtext>$Data::TemporaryBag::Threshold</itemtext>
<para>
データをファイルに保存する閾値を、キロバイト単位で設定します。
デフォルトは10。
</para>
</item>
<item><itemtext>$Data::TemporaryBag::TempPath</itemtext>
<para>
テンポラリファイルを作るディレクトリを指定します。
デフォルトは<emphasis>$ENV{TEMP} || $ENV{TMP} || './'</emphasis>。
</para>
</item>
<item><itemtext>$data::TemporaryBag::MaxOpen</itemtext>
<para>
オープンしたままにしておく最大ファイル数を指定します。
デフォルトは10。
</para>
</item>
</list>
</sect2>
</sect1>
<sect1>
<title>COPYRIGHT</title>
<para>
Copyright 2001 Yasuhiro Sasama (ySas), &lt;ysas@nmt.ne.jp&gt;
</para>
<para>
This library is free software; you can redistribute it
and/or modify it under the same terms as Perl itself.
</para>
</sect1>
<sect1>
<title>翻訳者</title>
<para>
笹間康弘 (ysas@nmt.ne.jp)
</para>
</sect1>
</pod>
