item | 番号による指定 |
as,
& (結合),
= (等しい),
/= (等しくない)
contain,
does not contain,
is in,
is not in
end with,
does not end with
start with,
does not start with
class | クラス識別子[r/o] |
値の属するクラス(当然list) | |
length | 整数[r/o] |
リストに含まれる項目数(numberと同じ) | |
number | 整数[r/o] |
リストに含まれる項目数(lengthと同じ) 正確には属性では無くcount命令の同義語 | |
rest | リスト[r/o] |
最初の項目を除いたリスト(ただし、rest of {}はエラーとなる) | |
reverse | リスト[r/o] |
項目を逆に並べたリスト |
様々な値を中括弧「{}」の中にカンマ「,」で連結して、ひとまとめにした値。
項目は、同じクラスのものである必要は無く、違うクラスの値を一緒に含むことができる。また、リストの中にリストを含むこともできる。
物凄く残念なことに、フィルタ参照形式による項目の参照はできない。
リストは主に、同じ特徴を表すひとまとまりの値を表すのに使われる。
例えば、座標(position)、縦横サイズ(size),矩形範囲(bounds)は、それぞれリストを使い、{横、縦}、{横幅、高さ}、{左上横, 左上縦, 右下横, 右下縦}の順番の整数で表される。
また、色は{Red,Green,Blue}の、各0〜65535までの整数値で表される。
setを使うことによって、変数の一部を共有し、C言語などのポインタ的に使うことができる。
データの扱い方が異なる[]リストが存在し、{}リストは、正確に区別するとvector(複数形はvectors)というクラスになる。
as演算子によって、全てのクラスへ変換できる(項目が一つしか無いリストで、かつ変換後のクラスと同じクラスの項目である場合)
文字列に変換する場合、リストに含まれるデータが文字列に変換できることが前提で、&によって結合された文字列に変換される。このとき、各項目の間には、テキストデリミタ(text item delimiters)に定義された文字列が挿入される。
class of {50, "text", 4.2}
some item of item 2 of {"a", {"b", "c", "d"}, "e"}
set x to {1, 2, 3, 4, 5}
set item 4 of x to {}
x
count real in {1, 1.0, 3.14, "a"}