| SYNOPSIS |
| mapping mkmapping(mixed *arr1, mixed *arr2, mixed *arr3, ...); |
| mapping mkmapping(struct st); |
| |
| BESCHREIBUNG |
| Liefert ein Mapping mit Keys aus <arr1> und Datenelementen aus |
| <arr2>, <arr3>.... Dem Key <arr1[0]> werden die Datenelemente |
| <arr2[0]>, <arr3[0]>... zugeordnet. Wenn die Datenarrays |
| ungleich gross sind, enthaelt das Mapping nur so viele Eintraege, |
| wie im kleinsten Datenarray enthalten sind. |
| |
| Die zweite Form konvertiert die angegebene struct <st> in ein Mapping. |
| Hierbei werden die Namen des jeweiligen Elementes in der struct als |
| als Schluessel. |
| |
| Gewoehnlich werden Mappings erweitert, indem einfach neue Elemente |
| eingefuegt werden. Diese Funktion ist nuetzlich, wenn der |
| ungefaehr benoetigte Speicherplatz bereits vorher bekannt ist, |
| um so den Overhead bei der Speicherallokation zu minimieren. |
| Allenfalls zu viel allozierter Speicher wird freigegeben, sobald |
| die Funktion, die die mkmapping() Anweisung enthaelt, beendet ist. |
| |
| BESIPIEL |
| mkmapping( ({ 1, 2 }), ({ 10, 11 }), ({ 20, 21, 22})); |
| liefert ([ 1:10;20, 2:11;21 ]) |
| |
| struct s { int a, b, c; }; |
| mkmapping( (<s> 1, ({ 2, 3 }), 3 ) |
| liefert ([ "a":1, "b":({2,3}), "c":3 ]) |
| |
| AeNDERUNGEN |
| LDMud 3.3.433 ermoeglichte die Konversion von structs. |
| |
| VERGLEICHE |
| mappings(LPC), mappingp(E), m_indices(E), m_values(E), |
| m_add(E), m_delete(E), sizeof(E), widthof(E), unmkmapping(E), |
| to_struct(E) |