====== Map ======
連想配列です。KeyもValueもAnyなので、何でも関連付けられます。型がわかりにくいという欠点はありますが……
Map明示のほかに、[:]によっても生成されます。
===== Example =====
==== C++ ====
void exec_xtal(){
MapPtr a(xnew
==== Xtal ====
a : [1 : "foo", 2 : true, 3 : []];
a.p;
a.insert("bar", 100);
a.p;
b : Map();
b.p;
b[1] = "hoge";
b.p;
==== Output ====
[1 : foo, 2 : true, 3 : []]
[1 : foo, 2 : true, 3 : [], bar : 100]
[1 : hoge]
===== Method =====
|(constructor)| インスタンス生成|
|(destructor)| インスタンス破棄|
|at| 要素を返す|
|set_at| 要素を設定する|
|insert| 要素を設定する|
|erase| 要素を削除する|
|size| 要素の数を返す|
|length| 要素の数を返す(sizeと同じ)|
|is_empty| 空連想配列かどうか|
|empty| 空連想配列かどうか(is_emptyと同じ)|
|pairs| (key, value)を要素とするIteratorを返す|
|keys| keyを要素とするIteratorを返す|
|values| valueを要素とするIteratorを返す|
|clone| 浅いコピーを返す|
|clear| 要素を全て削除する|
|assign| 引数で取得できる要素に置き換える|
|append| 引数で取得できる要素を追加する|
===== Xtal operator =====
|operator []| |
|operator ~| |