Structure は、階層的に順序付けされた、さまざまなデータ型の値のセットです。Structure の直下のコンポーネントは、Structure の「メンバー」と呼ばれます。Structure 全体をストリームまたはレコード入出力で送信したり、引数として渡したり、サイズと形状が同じで、対応する同一のデータ型のメンバーを持つ別の Structure に割り当てたりすることができます。Structure 全体に対して、変換または計算を行うことはできません。
サイズ |
整列 |
メンバーの合計 + 整列のギャップ |
一番厳しいメンバーの整列要件 |
Open-PL/I では、Structure のマッピングは次のようになります。
- 各メンバーは、マシンのネイティブ アーキテクチャで決められているように、その固有の境界 (Structure の開始点からのオフセット) に整列されています。各メンバーのオフセットは、効果的に「前方にプッシュ」され、その固有の境界にマップされます。また、必要に応じてパッド バイトが導入されます。
- 最上位レベルの Structure (およびサブ Structure) は、そのメンバーの中で一番厳しい要件を継承します。