ADP
Programming Language ADP

Japanese

Sourceforge.net

SourceForge.JP

Loading

each (リスト・配列からの要素の取得)


形式
 each( $array,...,$item,...)
引数
  • $array: リスト・配列(複数可)
  • $item 取り出された要素(結果、複数可)
完了時の動作
  • リスト・配列内に要素がある場合:次の述語を実行に移ります。
  • リスト・配列内に要素が無い場合:バックトラックします。
バックトラック時の動作
  • リスト・配列内に次の要素がある場合:次の述語を実行に移ります。
  • リスト・配列内に次の要素が無い場合:バックトラックします。
説明
 $arrayに示されたリスト・配列内の要素を一つずつ取り出し$itemに格納します。他の言語に見られるeachと同様の述語です。
複数のリストを同時に指定することにより、同時に1つずつ取り出すことが出来ます(例を参照)。
リスト・配列の要素の数が同一でない場合は、短い方の要素はNILで埋められます。

※each述語を使ってループを構成する場合、next述語と組み合わせて使用します。

コード例1(lib/each1.p)
,each({ 'a', 'b', 'c'}, $item), prtn($item), next;
実行例1
D:\sample\lib>adp each1.p
a
b
c

コード例2(lib/each2.p)
,each({ 1, 2, 3, 4}, { 'A', 'B', 'C'}, $item1, $item2)
  ,prtn($item1,':',$item2)
  ,next;
実行例2
D:\sample\lib>adp each2.p
1:A
2:B
3:C
4:NIL


Powered by ADP.