SYNOPSIS
        mapping m_add(mapping map, mixed key, [mixed data, ...])

BESCHREIBUNG
        Fuegt einen neuen Eintrag mit Index <key> zum Mapping <map> hinzu
        oder ersetzt diesen. Das veraenderte Mapping wird auch als Ergebnis
        zurueckgeliefert.

        Die zugehoerigen Werte fuer diesen Eintrag werden aus den weiteren
        Parametern entnommen. Fehlende Parameter werden als 0 interpretiert,
        ueberzaehlige Parameter werden ignoriert.

        Der Unterschied zwischen m_add() und dem '+='-Operator besteht darin,
        dass fuer letzterem gegebenenfalls erst ein temporaeres Mapping,
        welches die hinzuzufuegenden Eintraege enthaelt, erstellt werden
        muesste, wogegen m_add() ohne ein solches auskommt.

BEISPIELE
        mapping m;
        m = ([ "foo" ]);
        m_add(m, "bar", 1) --> ([ "foo", "bar" ])

        m = ([ "foo":1 ]);
        m_add(m, "bar", 1) --> ([ "foo":1, "bar":1 ])

        m = ([ "foo":1;2 ]);
        m_add(m, "bar", 1) --> ([ "foo":1;2, "bar":1;0 ])

        apply(#'m_add, m, "baz", ({ 4, 5 }))
        --> ([ "foo":1;2, "bar":1;0, "baz":4;5 ])

GESCHICHTE
        Eingefuehrt in LDMud 3.2.9.

SIEHE AUCH
        mappingp(E), mkmapping(E), m_delete(E), m_entry(E), m_indices(E),
        m_values(E), sizeof(E), widthof(E)
