ADP
Programming Language ADP

Japanese

Sourceforge.net

SourceForge.JP

Loading

slmap (連想配列の選択)

形式
 slmap( $values, $keys, $dst)
引数
  • $values: 連想配列
  • $keys: 選択キー配列
  • $dst: 結果連想配列
完了時の動作
  • 常に次の述語を実行に移ります。バックトラックしません。
バックトラック時の動作
  • 常にバックトラックします。前の述語にバックトラックします。
説明

連想配列から、指定されたキーの値を取り出し、新しい連想配列を作成します。
つまり、

{ 'A' => 1, 'B' => 2, 'C' => 3 }

という連想配列があり、キーが'A','B'が欲しいとき、

{ 'A', 'B'}

という選択キー配列を与えて、slmapを実行させますと、

{'A' => 1, 'B' => 2}

という結果を得ることができます。
remapはDBライブラリと組み合わせて使用します。あるSQLの結果を用いて、select/insert等のDB述語を実行する場合にWHEREフィルターに必要なカラムを取り出す場合に、slmapを使用します。

コード例 (lib/remap.p)
,$x = { 'A' => 1, 'B' => 2, 'C' => 3, 'D' => 4 }, slmap($x, { 'B', 'D'}).prt;

実行例
D:\sample\lib>adp slmap.p
{B => 2, D => 4}


Powered by ADP.