SerializeInputStream (クラス)
public SerializeInputStream {inherits {InputStream-of any}, {PeekableInputStream-of any}}
パッケージ: CURL.IO.SERIALIZE

バイト ストリームからシリアル化が解除される入力ストリームです。


コンストラクタ
default:シリアル化を解除する入力ストリームを作成します。
コンストラクタ public {SerializeInputStream.default
raw-byte-stream:ByteInputStream,
close-stream-on-close?:bool = true,
manifest:#ComponentManifest = null,
known-values:#FastArray = null
}

プロパティ
known-values:既知の値のセットです。
アクセサ public inline SerializeInputStream.known-values:#FastArray
manifest:そのストリームに関連するマニフェストです。
アクセサ public inline SerializeInputStream.manifest:ComponentManifest
open?:このストリームが現在開いているかどうかを示します。Stream-of.close が呼び出されると false を返します。
アクセサ public SerializeInputStream.open?:bool
origin-url:このストリームを開いた Url を返します。そのような Url が存在しない場合は null を返します。
アクセサ public SerializeInputStream.origin-url:#Url
protocol:このストリームで使用されるシリアル化プロトコルです。
アクセサ public inline SerializeInputStream.protocol:SerializeProtocol
raw-byte-stream:カスタマイズされたシリアル化解除の対象となるロー バイト ストリームを取得します。
アクセサ public SerializeInputStream.raw-byte-stream:ByteInputStream
プロパティ 継承 PeekableInputStream-of: end-of-stream?
プロパティ 継承 Stream-of: non-blocking-supported?
プロパティ 継承 GenericInputStream: when-last-modified

メソッド
close:ストリームを閉じます。呼び出されると、ストリームを使用不可能にして Stream-of.open?false を返すことを確かめます。
public {SerializeInputStream.close}:void
copy-out:複数の値をストリームから他のストリームへ逆シリアル化します。
public {SerializeInputStream.copy-out
out:{OutputStream-of any},
n:int64 = max-int64
}:int64
import-package:指定された名前と位置情報を持つパッケージを返します。
public {SerializeInputStream.import-package
name:#String,
locator:#String
}:Package
next-one:read-one に似ていますが、ストリームの最後に達すると EndOfStreamException をスローします。
public {SerializeInputStream.next-one}:any
package-lookup:指定されたパッケージ内の名前で表現されたオブジェクトを返します。
public {SerializeInputStream.package-lookup
package:Package,
name:String
}:any
peek-one:ストリームから次の要素を取り除くことなしに逆シリアル化します。
public {SerializeInputStream.peek-one}:(any, bool)
read:複数の値をストリームから逆シリアル化します。
public {SerializeInputStream.read
out:#Array = null,
start:int = 0,
n:int = max-int - start,
allow-short-read?:bool = false,
non-blocking?:bool = false
}:(vals:Array, number-read:int)
read-anys:複数の値をストリームから逆シリアル化します。
public {SerializeInputStream.read-anys
out:#Array = null,
start:int = 0,
n:int = max-int - start,
allow-short-read?:bool = false,
non-blocking?:bool = false
}:(vals:Array, n:int)
read-class-version:シリアル化を解除するクラスのバージョン番号を読み取ります。
public {SerializeInputStream.read-class-version}:int
read-one:ストリームから次の要素を逆シリアル化します。
public {SerializeInputStream.read-one}:(any, bool)
read-one-compact:コンパクトな表現で値を読み込みます。
public {SerializeInputStream.read-one-compact
compile-time-type:Type
}:any
reopen:このストリームを開き直します。
public {SerializeInputStream.reopen
raw-byte-stream:ByteInputStream,
close-stream-on-close?:bool = true,
manifest:ComponentManifest = self.manifest,
known-values:#FastArray = self.known-values
}:void
to-Iterator:逆シリアル化されたイテレータを返します。
public {SerializeInputStream.to-Iterator}:{Iterator-of any}
verify-class-version:シリアル化を解除するクラスのバージョン番号を読み取り、その番号が期待した値であることを確認します。
public {SerializeInputStream.verify-class-version version:int}:void
メソッド 継承 InputStream-of: async-read, read-one-any
メソッド 継承 PeekableInputStream-of: peek-one-any
メソッド 継承 Stream-of: verify-open
メソッド 継承 Object: object-describe, object-describe-for-debugging, object-serialize



コンストラクタ詳細
default (コンストラクタ)
public {SerializeInputStream.default
raw-byte-stream:ByteInputStream,
close-stream-on-close?:bool = true,
manifest:#ComponentManifest = null,
known-values:#FastArray = null
}

シリアル化を解除する入力ストリームを作成します。

raw-byte-stream: シリアル化されたオブジェクトの読み取り元バイト ストリーム。
close-stream-on-close?: true の場合 (既定)、バイト ストリーム raw-byte-stream はこのストリームと同時に閉じられます。
manifest: 非シリアル化パッケージを検出するために使用されるマニフェスト、既定ではアプレットのマニフェスト。通常は既定で十分ですが、不完全なマニフェスト委譲が含まれる場合、{get-default-manifest} を渡して、このオブジェクトを作成するパッケージのマニフェストを強制的に使用する必要がある場合があります。
known-values: 既知の値のオプションのリストを規定します。それはデータをシリアル化するために使用されるものと同一でなければなりません。(SerializeOutputStream.known-values を参照してください。)

注意事項

ByteInputStream は、ByteArrayInputStream クラスを使用して ByteArray から作成できます。



プロパティ詳細
known-values (アクセサ)
アクセサ public inline SerializeInputStream.known-values:#FastArray

既知の値のセットです。

説明

これは、default コンストラクタか reopen メソッドに最後に渡された known-values 配列です。
導入: バージョン 6.0


manifest (アクセサ)
アクセサ public inline SerializeInputStream.manifest:ComponentManifest

そのストリームに関連するマニフェストです。

説明

default コンストラクタか reopen メソッドでストリームを初期化するのに使用された ComponentManifest です。
導入: バージョン 6.0


open? (アクセサ)
アクセサ public SerializeInputStream.open?:bool

このストリームが現在開いているかどうかを示します。Stream-of.close が呼び出されると false を返します。

注意事項

InputStream-of および OutputStream-of の既定の実装で使用します。ストリームが開いていない場合は多くの操作でエラーが発生します。

オーバーライド

サブクラスにはこのメソッドを実装する必要があります。


origin-url (アクセサ)
アクセサ public SerializeInputStream.origin-url:#Url

このストリームを開いた Url を返します。そのような Url が存在しない場合は null を返します。

{read-open {url "file://c:/foo.txt"}}.origin-url Url file://c:/foo.txt (そのようなファイルが存在すると仮定して) を返します。

一方、{{TextInputStream-from String} "foo"}.origin-urlnull を返します。


protocol (アクセサ)
アクセサ public inline SerializeInputStream.protocol:SerializeProtocol

このストリームで使用されるシリアル化プロトコルです。

説明

これは、ストリーム自身から読み込まれます。
導入: バージョン 6.0


raw-byte-stream (アクセサ)
アクセサ public SerializeInputStream.raw-byte-stream:ByteInputStream

カスタマイズされたシリアル化解除の対象となるロー バイト ストリームを取得します。






メソッド詳細
close (メソッド)
public {SerializeInputStream.close}:void

ストリームを閉じます。呼び出されると、ストリームを使用不可能にして Stream-of.open?false を返すことを確かめます。



copy-out (メソッド)
public {SerializeInputStream.copy-out
out:{OutputStream-of any},
n:int64 = max-int64
}:int64

複数の値をストリームから他のストリームへ逆シリアル化します。

説明

これは、read-one> を使用して読み込まれる条件を全ての値を満たしている時にのみ使用されます。詳細はそのメソッドを参照してください。
パラメータに関する詳細は InputStream-of.copy-out を参照してください。


import-package (メソッド)
public {SerializeInputStream.import-package
name:#String,
locator:#String
}:Package

指定された名前と位置情報を持つパッケージを返します。

name: パッケージの名前。null の場合は、アプレットのパッケージが返されます。
locator: SerializeOutputStream.get-package-locator によってシリアル化される間、パッケージを配置するために提供される情報です。

戻り値

パッケージを返します。

説明

これは、パッケージを逆シリアル化する際に内部的に呼び出されます。直接呼び出されることは意図していません。
既定の実装では、ロケータを無視して名前でパッケージをインポートします。
異なる振る舞いを実装するために、このメソッドと SerializeOutputStream.get-package-locator をサブクラスでオーバーライドする必要があります。


next-one (メソッド)
public {SerializeInputStream.next-one}:any

read-one に似ていますが、ストリームの最後に達すると EndOfStreamException をスローします。



package-lookup (メソッド)
public {SerializeInputStream.package-lookup
package:Package,
name:String
}:any

指定されたパッケージ内の名前で表現されたオブジェクトを返します。

package: 名前と関連付けられているパッケージ。
name: パッケージで検索する名前。

戻り値

名前に関連付けられているパッケージ内の値を返します。

説明

既定のシリアル化では、Package.lookup を使用してパッケージ内の名前を検索します。互換性のない変更が行われた名前付きの型 (クラス以外) を処理するには、このメソッドをオーバーライドするしか方法はありません。


peek-one (メソッド)
public {SerializeInputStream.peek-one}:(any, bool)

ストリームから次の要素を取り除くことなしに逆シリアル化します。

説明

2番目の戻り値は、ストリームの最後に到達したかどうかを示しています。到達している場合、最初の戻り値は null になります。
read-oneの次の呼び出しは、同じ値を返します。
これは、read-one の使用が安全な場合にのみ使用されます。詳細は、そのメソッドを参照してください。
peek-one も参照してください。


read (メソッド)
public {SerializeInputStream.read
out:#Array = null,
start:int = 0,
n:int = max-int - start,
allow-short-read?:bool = false,
non-blocking?:bool = false
}:(vals:Array, number-read:int)

複数の値をストリームから逆シリアル化します。

説明

これは、read-one を使用して読み込まれる条件を全ての値を満たしている時にのみ使用されます。詳細はそのメソッドを参照してください。
パラメータに関する詳細は InputStream-of.read を参照してください。


read-anys (メソッド)
public {SerializeInputStream.read-anys
out:#Array = null,
start:int = 0,
n:int = max-int - start,
allow-short-read?:bool = false,
non-blocking?:bool = false
}:(vals:Array, n:int)

複数の値をストリームから逆シリアル化します。

説明

これは、read と同じです。


read-class-version (メソッド)
public {SerializeInputStream.read-class-version}:int

シリアル化を解除するクラスのバージョン番号を読み取ります。

戻り値

シリアル化中に書き込まれたクラスのバージョンを返します。

説明

このバージョンは、シリアル化の解除中に現在のクラス バージョンと比較できます。


read-one (メソッド)
public {SerializeInputStream.read-one}:(any, bool)

ストリームから次の要素を逆シリアル化します。

説明

2番目の戻り値は、ストリームの最後に到達したかどうかを示しています。到達している場合、最初の戻り値は null になります。
これは、SerializeOutputStream.write-onewrite-one-compact を使用して書き込まれなかった値を読み込むのに使用すべきではありません。これは、SerializeProtocol version-4-0 が使用されるか、値がプロシージャや Object のサブタイプのような基本クラスの場合にのみ write-one-compact で動作します。
read-one も参照してください。


read-one-compact (メソッド)
public {SerializeInputStream.read-one-compact
compile-time-type:Type
}:any

コンパクトな表現で値を読み込みます。

compile-time-type:
予期された値のスーパータイプで、SerializeOutputStream.write-one-compact を使用して変数を書き込むのに使用された型です。
SerializeInputStream.protocolversion-4-0 に設定された後、これは read-one と同じになります。
導入: バージョン 6.0


reopen (メソッド)
public {SerializeInputStream.reopen
raw-byte-stream:ByteInputStream,
close-stream-on-close?:bool = true,
manifest:ComponentManifest = self.manifest,
known-values:#FastArray = self.known-values
}:void

このストリームを開き直します。

説明

ストリームが閉じられた後に再利用することができます。
引数は、default コンストラクタで使用されるものと同じで、設定された引数で新しいストリームを作成することと同じ意味になります。
manifestknown-values は既存の値を既定値とします。


to-Iterator (メソッド)
public {SerializeInputStream.to-Iterator}:{Iterator-of any}

逆シリアル化されたイテレータを返します。

説明

これは、ストリームからの値を読み込むために read-one を使用するイテレータを返します。詳細と制限に関しては、そのメソッドを参照してください。


verify-class-version (メソッド)
public {SerializeInputStream.verify-class-version version:int}:void

シリアル化を解除するクラスのバージョン番号を読み取り、その番号が期待した値であることを確認します。

version: シリアル化を解除するオブジェクトと一致する必要のあるバージョン。

説明

バージョンが一致しない場合は、SerializeException をスローします。