====== Array ======
可変長配列です。同じ配列に異なる型の変数を入れることができます。
Arrayを明示的に使うほか、[]によって生成されます。
===== Example =====
==== C++ ====
void exec_xtal(){
ArrayPtr a(xnew());
a->resize(3);
a->set_at(0, 1);
a->set_at(1, 2);
a->set_at(2, 3);
a->p();
a->push_back(4);
a->p();
ArrayPtr b(xnew(3));
b->p();
b->set_at(1, "hoge");
b->p();
}
==== Xtal ====
a : [1, 2, 3];
a.p;
a.push_back(4);
a.p;
b : Array(3);
b.p;
b[1] = "hoge";
b.p;
==== Output ====
[1, 2, 3]
[1, 2, 3, 4]
[undefined, undefined, undefined]
[undefined, hoge, undefined]
===== Method =====
|Xtal|C++|name|description|
|o|o|(constructor)| インスタンス生成|
|o|o|length| 配列の長さを返す|
|o|o|size| 配列の長さを返す(lengthと同じ)|
|o|o|resize| 配列の長さを変更する|
|x|o|upsize| 配列を長くする|
|x|o|downsize| 配列を短くする|
|o|o|push_front| 先頭に要素を追加する|
|o|o|push_back| 末尾に要素を追加する|
|o|o|pop_front| 先頭の要素を削除する|
|o|o|pop_back| 末尾の要素を削除する|
|o|o|front| 先頭の要素を返す|
|o|o|back| 末尾の要素を返す|
|o|o|slice| 部分配列を返す|
|o|o|splice| 部分配列を削除し、それを返す|
|o|o|erase| 要素を削除する|
|o|o|insert| 要素を追加する|
|o|o|reverse| Reverse Iterator を返す|
|o|o|clone| 浅いコピーを返す|
|o|o|join| 要素を文字列として連結した結果を返す|
|o|o|is_empty| 空配列かどうか|
|o|o|empty| 空配列かどうか(is_emptyと同じ)|
|o|o|clear| 要素を全て削除する|
|o|o|assign| 引数で取得できる要素に置き換える|
|o|o|append| 引数で取得できる要素を追加する|
===== Xtal operator =====
|operator []| |
|operator ()| |
|operator ~| |