CopyMap

Commande de map

Syntaxe

Remplace toutes les entrées de la table de destination par une copie des entrées de la table source.

CopyMap(<source>(), <destination>())

Les éléments

<source>La table à copier, avec ses parenthèses : a().
<destination>La table qui reçoit la copie, avec ses parenthèses. Ses anciennes entrées sont perdues.

Rend

1 si la copie a été faite, 0 si les deux tables ne contiennent pas le même type (la destination reste alors intacte).

À savoir

  • La copie est profonde : les enregistrements, listes et tables contenus dans les entrées sont copiés aussi, et modifier la copie ne touche jamais la source. Un handle dans une entrée n’est pas copié : les deux tables le partagent.
  • La destination reprend l’entrée courante de la source. Sa pile de PushMapPosition() est vidée.
  • b = a ne copie pas une table : les deux noms désignent alors la même table.
  • .i, .l et .integer comptent comme le même type ; .i et .s non.

Exemple

NewMap a.i()NewMap b.i()a("gold") = 10b("old") = 1Console(Str(CopyMap(a(), b())))   ' 1b("gold") = 99Console(Str(a("gold")) + " " + Str(MapSize(b())))   ' 10 1
Dans le manuel : Tableaux, listes et maps