Net.Data は、dtw_parm_data_t 構造体を使用してパラメーターを言語環境に渡します。 パラメーターは、次の 3 つのソースから得られます。
Net.Data は、最初に明示的パラメーター、 続いて ENVIRONMENT ステートメントで指定されたパラメーター、次に戻り変数を渡します。
dtw_parm_data_t 構造体の形式は次のとおりです。
typedef struct dtw_parm_data_t { /* Parameter data */ int parm_descriptor; /* Parameter descriptor */ char *parm_name; /* Parameter name */ char *parm_value; /* Parameter value */ void *res1; /* Reserved */ void *res2; /* Reserved */ } dtw_parm_data_t;
dtw_parm_data_t 構造体内のフィールド:
Net.Data は、parm_descriptor フィールドを、常に DTW_IN、DTW_OUT、または DTW_INOUT に設定し、 DTW_STRING および DTW_TABLE との論理 OR を使用します。
res1 および res2 フィールドは予約フィールドです。
parm_name および parm_value はともに、Net.Data 実行時 heap、 すなわち Net.Data が動的メモリー割り当てに使用するメモリーのエリアから割り当てられたオブジェクトを指し示します。 parm_name または parm_value が別のストリングに置き換えられると、 元のストリングは解放され、Net.Data ヒープから割り当てられた文字ストリングを指し示すポインターに置き換えられなければなりません。 元のストリングの解放には、dtw_malloc() および dtw_free() ユーティリティー関数を使用します。