1SYNOPSIS 2 mapping mkmapping(mixed *arr1, mixed *arr2, mixed *arr3, ...) 3 mapping mkmapping(struct st) 4 5BESCHREIBUNG 6 Liefert ein Mapping mit Keys aus <arr1> und Datenelementen aus 7 <arr2>, <arr3>.... Dem Key <arr1[0]> werden die Datenelemente 8 <arr2[0]>, <arr3[0]>... zugeordnet. Wenn die Datenarrays 9 ungleich gross sind, enthaelt das Mapping nur so viele Eintraege 10 wie im kleinsten Datenarray enthalten sind. 11 12 Die zweite Form konvertiert die angegebene struct <st> in ein Mapping. 13 Hierbei werden die Namen des jeweiligen Elementes in der struct als 14 Schluessel verwendet. 15 16 Gewoehnlich werden Mappings erweitert, indem einfach neue Elemente 17 eingefuegt werden. Diese Funktion ist nuetzlich, wenn der 18 ungefaehr benoetigte Speicherplatz bereits vorher bekannt ist, 19 um so den Overhead bei der Speicherallokation zu minimieren. 20 Allenfalls zu viel allozierter Speicher wird freigegeben, sobald 21 die Funktion, die die mkmapping()-Anweisung enthaelt, beendet ist. 22 23BEISPIELE 24 mkmapping(({ 1, 2 }), ({ 10, 11 }), ({ 20, 21, 22})); 25 liefert ([ 1:10;20, 2:11;21 ]) 26 27 struct s { int a, b, c; }; 28 mkmapping((<s> 1, ({ 2, 3 }), 3) 29 liefert ([ "a":1, "b":({2,3}), "c":3 ]) 30 31GESCHICHTE 32 LDMud 3.3.433 ermoeglichte die Konversion von structs. 33 34SIEHE AUCH 35 mappings(LPC), mappingp(E), m_indices(E), m_values(E), 36 m_add(E), m_delete(E), sizeof(E), widthof(E), unmkmapping(E), 37 to_struct(E) 38