Dsl (Digital Simulation Library) for .Net
数値や各種オブジェクトの内容を文字列にしてファイルなどに書き出したり、逆にファイルから読み込んで数値やオブジェクトを再作成するための各種メソッド等を提供するクラスライブラリです。 Dsl、DslDialog が利用します。

クラス

  クラス 説明
Public class DIO
オブジェクトの内容を文字列に変換して ストリーム(TextWriter/TextReader)に出力、または、 逆に文字列からオブジェクトを作成して内容を再構築するためのクラスです。
Public class DIOException
DIOクラスで使用される、Exception の単純なラッパークラス

インターフェー

  インターフェース 説明
Public interface IDslSerializable
オブジェクトの内容を出力したり、逆にオブジェクトを作成してから 内容を読み込むためのインターフェースです。通常、まずオブジェクト そのものの作成情報を出力します(Save)。次にオブジェクトのプロパティ値 等の内容を出力します(SaveContents)。当然、逆の操作として、まずオブジェクトの 作成情報を読み込んでオブジェクト自体を作成します(Restore)。次に作成したオブジェクトの 内容を読み込んで出力時の状態に戻します(RestoreContents)。

.Net にはオブジェクトの出力と入力(再作成)用に XmlSerializer が用意されています。 しかし、 XmlSerializer は public な情報にしかアクセスできません。Dslオブジェクトは private な 情報も含めて出力/入力する必要があります。従って、 XmlSerializer をそのまま利用することはできません。

デリゲート

  デリゲート 説明
Public delegate DIO..::..ConvertFromString<(Of <(<'T>)>)>
文字列からオブジェクトを作成するための delegate 宣言です。 具体的には DIOクラスの ParseObject/ParseDouble/ParsePoint... 等の変換メソッド群を引数に設定するために使用されます。
Public delegate DIO..::..ConvertToString
オブジェクトを文字列に変換するための delegate 宣言です。intやdouble等は自身が持つ ToString() メソッドが代用されます。代用できないときは DIOクラスの ObjectToString/PenToString/FontToString... 等の変換メソッド群を引数に設定するために使用されます。