blob: 6fe6d1a1a3640338e73974b939960541d252a849 [file] [log] [blame]
Zesstra953f9972017-02-18 15:37:36 +01001m_copy_delete()
2***************
MG Mud User88f12472016-06-24 23:31:02 +02003
MG Mud User88f12472016-06-24 23:31:02 +02004
Zesstra953f9972017-02-18 15:37:36 +01005FUNKTION
6========
MG Mud User88f12472016-06-24 23:31:02 +02007
Zesstra953f9972017-02-18 15:37:36 +01008 mapping m_copy_delete(mapping map, mixed key)
MG Mud User88f12472016-06-24 23:31:02 +02009
MG Mud User88f12472016-06-24 23:31:02 +020010
Zesstra953f9972017-02-18 15:37:36 +010011ARGUMENTE
12=========
MG Mud User88f12472016-06-24 23:31:02 +020013
Zesstra953f9972017-02-18 15:37:36 +010014 map - das Mapping, aus dem geloescht werden soll.
15 key - der zu loeschende Eintrag
MG Mud User88f12472016-06-24 23:31:02 +020016
MG Mud User88f12472016-06-24 23:31:02 +020017
Zesstra953f9972017-02-18 15:37:36 +010018BESCHREIBUNG
19============
MG Mud User88f12472016-06-24 23:31:02 +020020
Zesstra953f9972017-02-18 15:37:36 +010021 Aus dem Mapping map wird der Eintrag key geloescht (wenn er in map vor-
22 handen ist). map wird dabei nicht veraendert.
MG Mud User88f12472016-06-24 23:31:02 +020023
Zesstra953f9972017-02-18 15:37:36 +010024
25RUECKGABEWERT
26=============
27
28 Eine (flache !) Kopie von map ohne den Eintrag key, d.h. enthaltene
29 Mappings/Arrays werden nicht kopiert.
30
31
32BEMERKUNGEN
33===========
34
35 Das urspruengliche Mapping wird bei dieser Operation nicht veraendert!
36 Wenn man nur einen Wert aus dem Mapping loeschen will und die Kopie nicht
37 braucht, bietet sich efun::m_delete(mapping,key) sehr an, da die Erstellung
38 einer Kopie sehr aufwendig sein kann.
39
40
41BEISPIELE
42=========
43
44 mapping m1, m2;
45
46 m1 = ([ "a":1, "b":2, "c":3 ]);
47
48 m2 = m_copy_delete(m1, "b");
49 => m1 = ([ "a":1, "b":2, "c":3 ])
50 m2 = ([ "a":1, "c":3 ])
51
52 m_copy_delete(m1, "a");
53 => (es hat sich nichts geaendert)
54
55 m1 = m_copy_delete(m1, "a");
56 => m1 = ([ "b":2, "c":3 ])
57
58 Im letzten Fall sollte aber besser efun::m_delete(m1, "a") benutzt
59 werden, da ansonsten das Mapping unnoetig kopiert wird und Rechen-
60 leistung frisst.
61
62
63SIEHE AUCH
64==========
65
66 efun::m_delete(E), mappingp(E), mkmapping(E), m_indices,(E) m_values(E),
67 sizeof(E), widthof(E)